/* AUTO-GENERATED by lab/punk-brain-f/build-data.py
   Edit canonical sources instead:
     grants/amplify-bc-2026/{manifest,targets,view}.yml
     grants/amplify-bc-2026/components/<slug>/manifest.yml
     grants/amplify-bc-2026/log/<date>.md  (receipts)
     grants/amplify-bc-2026/positions/<slug>.md
     lab/punk-brain-f/tour-sophia.yml
   Re-run: python3 lab/punk-brain-f/build-data.py
   Auto-runs on session-end via .claude/hooks/rebuild-prototype-data.sh
*/
/* global window */

const BRAIN = {
  id: 'shared',
  name: 'punk brain',
  kind: 'shared',
  layer: 1,
  path: 'shared-brain',
  state: 'live',
  privacy: 'shared',
  intro: 'Central intelligence for Different Gear × UV. Two operators, one substrate. Every company, artist, event, and partnership descends from here. Personal brains sit above this layer and stay private.',
  goals: [
    'Everything of consequence flows through intelligence — no lore, no memory, no side-channels.',
    'The partnership is the unit. Not Jarett, not Matt — the work between them.',
    'Capability compounds by organization, not headcount.',
    'Receipts are law. Every decision carries a timestamp and a file path.',
    'Sub-brains inherit the pattern.',
  ],
  targets: [],
  positions: [],
  bus: [],
  receipts: [],
  children: [
    {
      id: 'personal', name: 'personal brains', kind: 'ghost-layer', layer: 0, path: 'personal-brains',
      state: 'idle', privacy: 'private',
      intro: 'Two personal brains sit above this layer. Contents inaccessible by design. What surfaces below is only what each operator explicitly pushed down.',
      goals: [], targets: [], positions: [], receipts: [], bus: [], children: [],
    },
    {
      id: 'different-gear', name: 'different-gear', kind: 'company', layer: 2,
      path: 'shared-brain/different-gear', state: 'live', privacy: 'shared',
      intro: 'Artist management. Tour watchers, itinerary deploys, contract review. Roster 3 (Sophia + Lovefoxy + Prado Monroe), targeting 6 by year-end.',
      goals: [], targets: [], positions: [], receipts: [], bus: [], children: [],
    },
    {
      id: 'uv', name: 'uv', kind: 'company', layer: 2,
      path: 'shared-brain/uv', state: 'live', privacy: 'shared',
      intro: 'Live events. Offer builder, pipeline, P&L at 60/80/100% cap. Capital stays separate from different-gear.',
      goals: [], targets: [], positions: [], receipts: [], bus: [], children: [],
    },
  ],
};

const AMPLIFY_BC = {
  "id": "amplify-bc-2026",
  "name": "amplify-bc-2026",
  "kind": "grant",
  "layer": 3,
  "path": "shared-brain/grants/amplify-bc-2026",
  "state": "amber",
  "privacy": "shared",
  "intro": "Creative BC Music Company Development — $50K ask against $100K+ project. Funds an intelligence substrate (the central product) plus two strategic decision tools (deal modeling, territory intelligence). Sophia is proof case, not beneficiary. v3 thesis: everything flows through intelligence; build proprietary intelligence, rent commodity; intelligence informs, never gates.",
  "next_move": "Simkin packet shipped 2026-04-22 at dg-simkin-packet.pages.dev with company brief + Sophia snapshot + technical explainer; reply email is send-ready. Ryan Holmes IG DM queued to fire 11:00 PT today (Apple Reminder set). Matt inputs 3/6 in; remaining 2 (expenses, fiscal y/e) drop-dead 04-27. Dense v3 company-brief.md + Sections 1–2 + Sections 3–6 all still unaudited for the overclaim patterns we caught in the plain-voice pass (false contrast, chat strawmen, empirical guessing, present-tense on unshipped features). Highest-leverage next move is the dense brief audit before Matt reviews.",
  "actions_on_you": [
    {
      "k": "send simkin email",
      "sub": "packet shipped · reply email body send-ready at reference-letters/simkin/reply-email.md",
      "dd": "2026-04-22",
      "componentId": "reference-letters",
      "tone": "voltage"
    },
    {
      "k": "send ryan holmes IG DM",
      "sub": "11:00 PT today · apple reminder set · ig group with matt",
      "dd": "2026-04-23",
      "componentId": "reference-letters",
      "tone": "voltage"
    },
    {
      "k": "audit dense v3 company-brief.md",
      "sub": "plain-voice audited · dense is source doc · sister overclaim risk",
      "dd": "2026-04-25",
      "componentId": "sections-1-2",
      "tone": "voltage"
    },
    {
      "k": "audit sections 1–2 + 3–6 (both registers)",
      "sub": "evaluator-facing · careful-reader risk highest",
      "dd": "2026-04-26",
      "componentId": "sections-1-2",
      "tone": "voltage"
    },
    {
      "k": "draft meli IG DM",
      "sub": "ryan's light-touch pattern · dense v3 brief as attachment",
      "dd": "2026-04-25",
      "componentId": "reference-letters",
      "tone": "amber"
    },
    {
      "k": "budget 3→4 workstream restructure",
      "sub": "components/budget/manifest.yml still pre-v3 · security/hardening line explicit",
      "dd": "2026-04-27",
      "componentId": "budget",
      "tone": "now"
    },
    {
      "k": "update prototype data.jsx to v3 thesis",
      "sub": "auto-generated from canonical now · verify output",
      "dd": "2026-04-22",
      "componentId": "sections-1-2",
      "tone": "signal"
    }
  ],
  "waiting_on_matty": [
    {
      "k": "expenses since jan 1",
      "v": "gated · fiscal y/e",
      "dd": "2026-04-27",
      "unblocks": "budget · expenses row · label advance placement",
      "componentId": "budget",
      "tone": "voltage"
    },
    {
      "k": "fiscal year-end check with TOML / AccNet",
      "v": "pending",
      "dd": "2026-04-27",
      "unblocks": "label advance placement (2025 vs 2026) · match-side computable",
      "componentId": "budget",
      "tone": "voltage"
    },
    {
      "k": "second-reader pass on drafts",
      "v": "pending",
      "dd": "2026-04-27",
      "unblocks": "ai-disclosure · respectful-workplace-policy · sections-1-2 · sections-3-6",
      "componentId": "sections-1-2",
      "tone": "amber"
    },
    {
      "k": "roster phrasing preference",
      "v": "named vs scouting framing",
      "dd": "2026-04-26",
      "unblocks": "artist-roster · final copy lock",
      "componentId": "artist-roster",
      "tone": "amber"
    }
  ],
  "parked": [
    {
      "k": "past recipients analysis",
      "v": "calibration work · useful, not blocking"
    },
    {
      "k": "competitive landscape scan",
      "v": "anyone else in canada doing ai-powered artist mgmt"
    },
    {
      "k": "brand partnership research sprint",
      "v": "historical case studies · design in progress"
    },
    {
      "k": "financial statements",
      "v": "post-submit obligation · due 2026-05-13"
    }
  ],
  "applicant_entity": {
    "legal_name": "Different Gear Mgmt Inc.",
    "jurisdiction": "Canada (federal)",
    "incorporation_date": "2025-06-10",
    "bc_registration": "extra-provincial (on file)",
    "officers": {
      "president": "Matthew Owchar",
      "secretary": "Angela Donna Christensen"
    },
    "counsel": {
      "firm": "Taylor Oballa Murray Leyland LLP",
      "location": "Toronto",
      "clerk": "Ted Ruder"
    },
    "source": "log/2026-04-20-matt-inputs-received.md"
  },
  "goals": [],
  "targets": [
    {
      "k": "deadline",
      "v": "2026-04-29 16:00 PT",
      "cap": "T-7 days",
      "vlt": true
    },
    {
      "k": "sections-1-2",
      "v": "2/2 drafted (v3 dense + plain-voice alt)",
      "cap": "v3 thesis refinement 2026-04-21 — intelligence substrate as central product · 4 workstreams · 3 cost-of-error asymmetries named · strategic tools scoped for servicing (not selection). Plain-voice alt of Sections 1 & 2 at draft-alt-plain-voice.md.",
      "vlt": true
    },
    {
      "k": "sections-3-6",
      "v": "4/4 drafted (v1, plain voice)",
      "cap": "Economic Impact /20 · B.C. Talent /10 · JEDI /10 · Innovation /10 — 50 pts total · written plain-voice first per decision 2026-04-21",
      "vlt": true
    },
    {
      "k": "reference-letters",
      "v": "0/3 signed",
      "cap": "Ryan Holmes · Jonathan Simkin · Dario Meli",
      "vlt": true
    },
    {
      "k": "budget",
      "v": "partial",
      "cap": "Sophia 2026 revenue received 2026-04-20; expenses still pending",
      "vlt": true
    },
    {
      "k": "ai-disclosure",
      "v": "drafted v1",
      "cap": "transparency · accountability · fairness · framed as strength, not compliance"
    },
    {
      "k": "respectful-workplace-policy",
      "v": "drafted v1",
      "cap": "6 sections · concrete + operational · escalation paths named"
    },
    {
      "k": "artist-roster",
      "v": "3/3 named",
      "cap": "Sophia Stel + Lovefoxy + Prado Monroe (Matt text 2026-04-20)",
      "vlt": true
    },
    {
      "k": "financial-statements",
      "v": "deferred",
      "cap": "due 2026-05-13 (post-submit)"
    },
    {
      "k": "matching-funds",
      "v": "unknown",
      "cap": "$100k+ total project size implies $50k+ matched",
      "vlt": true
    },
    {
      "k": "entity-legal-title",
      "v": "Different Gear Mgmt Inc.",
      "cap": "federally incorp'd 2025-06-10 · BC extra-prov registered · confirmed 2026-04-20"
    }
  ],
  "positions": [
    {
      "ts": "2026-04-14",
      "text": "Ask the cap, not below",
      "sha": "local"
    },
    {
      "ts": "2026-04-14",
      "text": "Narrative v2 is locked below the deadline",
      "sha": "local"
    },
    {
      "ts": "inherited",
      "text": "partnership position · 2026 04 18 pos everything flows through intelligence",
      "sha": "inheritance.yml"
    },
    {
      "ts": "inherited",
      "text": "partnership position · 2026 04 18 pos build proprietary intelligence rent commodity",
      "sha": "inheritance.yml"
    },
    {
      "ts": "inherited",
      "text": "partnership position · 2026 04 18 pos intelligence informs never gates",
      "sha": "inheritance.yml"
    }
  ],
  "bus": [
    {
      "dir": "down",
      "msg": "partnership position · 2026 04 18 everything flows through intelligence",
      "dim": "inheritance.yml"
    },
    {
      "dir": "down",
      "msg": "partnership position · 2026 04 18 build proprietary intelligence rent commodity",
      "dim": "inheritance.yml"
    },
    {
      "dir": "down",
      "msg": "partnership position · 2026 04 18 intelligence informs never gates",
      "dim": "inheritance.yml"
    },
    {
      "dir": "across",
      "msg": "draws evidence from .entities/artists/sophia-stel",
      "dim": "manifest.yml"
    },
    {
      "dir": "across",
      "msg": "draws evidence from .repos/different-gear",
      "dim": "manifest.yml"
    },
    {
      "dir": "across",
      "msg": "draws evidence from .repos/uv",
      "dim": "manifest.yml"
    },
    {
      "dir": "up",
      "msg": "artist-roster · final phrasing decision (named roster vs. \"1 signed + 2 scouting\" framing) — Matt confirmation on phrasing preference",
      "dim": "2026-04-26"
    },
    {
      "dir": "up",
      "msg": "budget · Matt expenses since Jan 1 (gated on fiscal year-end confirmation)",
      "dim": "2026-04-27"
    },
    {
      "dir": "up",
      "msg": "reference-letters · Ryan Holmes not yet contacted + packet not drafted",
      "dim": "2026-04-26"
    },
    {
      "dir": "up",
      "msg": "reference-letters · Simkin packet drafted but not yet sent",
      "dim": "2026-04-26"
    },
    {
      "dir": "up",
      "msg": "sections-1-2 · 2 [NEEDS:] inputs remaining inline (artists, final numbers)",
      "dim": "2026-04-25"
    },
    {
      "dir": "up",
      "msg": "sections-1-2 · reference letter signatories not yet confirmed",
      "dim": "2026-04-25"
    },
    {
      "dir": "up",
      "msg": "sections-3-6 · Section 3 quantification — final job-count / BC-vendor-spend / capacity-revenue targets locked against budget (depends on Matt expense history + fiscal year-end)",
      "dim": "2026-04-27"
    },
    {
      "dir": "up",
      "msg": "sections-3-6 · Section 5 JEDI self-ID — whether Matt, Angela, or Jarett self-identify under any category (self-ID forms are post-submit but the section benefits from honest framing now)",
      "dim": "2026-04-27"
    }
  ],
  "receipts": [
    {
      "t": "2026-04-21",
      "e": "component.revised",
      "tone": "voltage",
      "msg": "V3 thesis refinement — intelligence substrate as central product, 4 workstreams, cost-of-error asymmetries named",
      "id": "log-2026-04-21-v3-thesis-refinement",
      "file": "grants/amplify-bc-2026/log/2026-04-21-v3-thesis-refinement.md",
      "preview": "**What happened**: Major thesis refinement pass on both the company brief (`grants/amplify-bc-2026/company-brief.md`) and the sections-1-2 application draft (`components/sections-1-2/draft.md`). Status bumped from draft-v2 to draft-v3.\n## Why this pass\nTwo self-audits over the previous session surfaced issues that needed a thesis-level fix, not more local editing:\n1. **Tool-list scope**. The brief and Section 1 \"Proof of Concept\" only named the tour-ops stack (5 bullets). Matt's actual operational surface is substantially larger — artwork capture, booking pipeline, venue/agent knowledge base, per-day budget + offer generation, sandbox validation lane. Some of these originated in UV (Matt's event company) but are the same operator's practice, same substrate, and plausibly useful by DG. Understating the surface understated the company's operating scale and the grant's leverage.\n2. **Strategic-tool framing kept sliding into selection**. Multiple edits had the strategic modules (deal modeling, territory intelligence) reaching for A&R / sign-decline framing — \"which artists to sign\" rather than \"how to serve artists already on the roster.\" This misread the actual constraint (capacity to service the three artists already in the pipeline, not discovery). Corrected explicitly in v3.\n3. **The intelligence layer was not named as the central product**. The substrate exists (`punkbrainlib` with signal adapters + entity intelligence + cross-artist rollup + audit trail), but earlier drafts presented the tools as a flat collection rather than as views on a shared intelligence layer. Naming the substrate as the central product makes the structure coherent and the grant ask legible as one disciplined substrate investment rather than a fragmented tool shopping list.\n4. **Cost-of-error asymmetries were implicit but not named**. The opener carried the asymmetry evocatively (\"operators who treat them as such build lasting local value; the ones who don't burn them out\"), but the specific scenarios — roster-expansion window, Sophia's arc decision density, inbound opportunity valuation — weren't explicit. Evaluators reward strategic specificity over evocative gesturing, so v3 names the three asymmetries directly as the project's strategic calibration.\n## Changes to `company-brief.md`\n- **\"What the company does\" restructured into three layers** — intelligence substrate (central product, one paragraph), operational tools on the substrate (9 bullets covering DG + UV-origin tools reframed as DG's surface), strategic decision tools planned under grant scope (deal modeling, territory intelligence, emergent tools).\n- **Cost-of-error asymmetry paragraph added** — the three scenarios (roster expansion, Sophia's arc, inbound valuation) stated as the calibration for the ask's sizing and timing.\n- **Closer line sharpened** — \"The stack is a set of views on the intelligence layer. The intelligence layer is the company.\"\n- **\"The project\" section expanded from 3 workstreams to 4** — substrate build, operational-tool productization onto substrate, new strategic tools on substrate, multi-artist deployment.\n## Changes to `components/sections-1-2/draft.md`\n- **Section 1 Project Summary** — intelligence layer named as the project's central product; ask sentence moved into the opener paragraph for compression.\n- **Section 1 new subsection \"Why this investment, at this size, now\"** — three cost-of-error asymmetries named as the strategic calibration. Explicitly framed as asymmetry (scoring-rubric-aligned) not risk register (defensive).\n- **Section 1 \"The project\" restructured to 4 workstreams** — matches the company brief.\n- **Section 1 Proof of Concept expanded from 5 bullets to 9** — real operational surface. UV-origin tools (booking pipeline, venue/agent knowledge base, per-day budget and offer generation) reframed as DG's operational surface with a closing sentence tying them to Matt's 20-year practice.\n- **Strategic-tool framing corrected throughout** — deal modeling and territory intelligence explicitly scoped to *active roster servicing* (negotiation, value-capture, scenario modeling against arc, market/audience/timing guidance), not to sign/decline or A&R.\n- **Emergent-tools clause added to Workstream 3** — substrate makes incremental builds cheap; honest to what the grant enables; disciplined-scope argument now lives at the substrate level, not at the pre-specified tool-list level.\n## Downstream implications (not yet done)\n- **Budget restructure**. Currently scoped against 3 workstreams. Needs to become 4 buckets matching the new structure. Touches `components/budget/manifest.yml` and the eventual Excel template fill.\n- **Prototype data.jsx**. `AMPLIFY_BC` in `lab/punk-brain-f/project/data.jsx` currently reflects the 3-workstream framing. Should update to reflect v3 structure so Matt's view of the prototype matches the application's thesis."
    },
    {
      "t": "2026-04-21",
      "e": "outreach.packet.drafted",
      "tone": "signal",
      "msg": "Simkin reference-letter packet — drafted",
      "id": "log-2026-04-21-simkin-packet-drafted",
      "file": "grants/amplify-bc-2026/log/2026-04-21-simkin-packet-drafted.md",
      "preview": "**What happened**: Drafted the full Simkin reference-letter packet at `components/reference-letters/simkin/`. Four files:\n1. `reply-email.md` — draft of the email Jarett sends in reply to Simkin's 2026-04-19 22:58 ask. Acknowledges his Creative-BC concern twice without dwelling; reframes from v1 → v2; echoes his \"decline if net-negative\" language back so he has a clean exit.\n2. `company-brief.md` — v2-aligned Different Gear company brief. Explicitly flags the original 04-13 email overshot (\"consulting arm / public good / disruption\"). New thesis leads with operational evidence and contracted 2026 revenue. ~650 words.\n3. `sophia-bio.md` — Sophia artist snapshot with tour dates, label deal, agent stack. Placeholders for music links, press bio text, brand partner names Matt is comfortable naming publicly.\n4. `letter-draft.md` — reference letter draft for Simkin to adapt. Framed as industry-perspective (not personal-relationship), so Simkin can sign honestly without claiming personal knowledge of Matt. ~440 words.\n**Decision the packet resolves**: path B on the Simkin decision (per STATUS.md Pending Decisions entry). Taking his request for more info at face value and letting him self-select with full context, rather than withdrawing.\n**Why path B now**: Simkin's reply was a pro answer — \"send me more, let me decide\" — not a brush-off. His Creative-BC self-read (\"don't think they particularly like me\") is feeling-based; the track record says 604 Records has been a repeat Music Company recipient (~$20K 2023/24, $17,719 2025/26). A reference letter from a repeat recipient who knows the program from the inside is typically net-positive unless there's concrete evidence otherwise. The packet gives him full v2-aligned info to make an informed call.\n**Placeholders Matt or Jarett need to fill before sending**:\n- `sophia-bio.md`: Sophia's label name, three starter tracks with links, full catalog links, current EPK bio text, press hits, brand partner names comfortable to name publicly.\n- `letter-draft.md`: Simkin's tenure at 604 Records (used in the opening paragraph).\n**Next actions**:\n1. Jarett review the packet end-to-end.\n2. Fill the sophia-bio placeholders (Matt likely has most of this on hand).\n3. Send the reply email with attachments (or inline, Jarett's call).\n4. Draft the Ryan Holmes packet next using the same folder pattern at `components/reference-letters/ryan/`.\n5. Draft the Meli packet after Ryan, same pattern.\n**Response-state tracking**: Simkin's 04-19 reply state moves from `awaiting_response` to `response_received_awaiting_next_comm` once we send. Response-state field in the reference-letters manifest updated accordingly."
    },
    {
      "t": "2026-04-21",
      "e": "component.revised",
      "tone": "voltage",
      "msg": "Security, authorization, and artist data stewardship named as a grant deliverable",
      "id": "log-2026-04-21-security-data-stewardship-thread",
      "file": "grants/amplify-bc-2026/log/2026-04-21-security-data-stewardship-thread.md",
      "preview": "**What happened**: Added explicit \"Security, authorization, and artist data stewardship\" coverage to both the company brief and the Section 1/2 draft. Motivated by a real gap: the v3 pass correctly named the intelligence substrate as the central product but didn't address the security surface that productizing pilot tools into multi-user, multi-artist infrastructure actually introduces.\n## Why\nPilot-stage tools running against one founder-operated campaign can defer questions production infrastructure cannot:\n- Who is authorized to see what (artist sees their own campaign state; agent sees their artist's booking view; operator sees the roster).\n- How credentials for external platforms (Gmail, Spotify for Artists, Meta Pixel, Resident Advisor, ticketing, booking systems) are stored, rotated, and scoped per service.\n- How artist data is isolated across the roster so one artist's agent cannot see another artist's deals, and so a future artist departure from the roster triggers a clean data-exit path.\n- How the audit trail stays integrity-verifiable (append-only, operator-inspectable, tamper-evident).\n- How the company's stated commitments about artist data — in the AI disclosure and the respectful workplace policy — get enforced at the substrate level rather than relying on operator-memory discipline.\nThis is Jarett's discipline specifically. The Strategic Partner & Technology Lead role on this project includes the productization and hardening work required to take pilot tools into production; naming it explicitly in the application makes the team-capacity argument more complete (Section 2 scoring) and grounds the AI-disclosure / workplace-policy commitments in substrate-level enforcement rather than in promises.\n## Changes to `company-brief.md`\n- **New subsection \"Security, authorization, and artist data stewardship\"** inserted between \"Operational tools running on the intelligence layer today\" and \"Strategic decision tools planned under grant scope.\" Flat prose (not bulleted) because the argument is about discipline and framing, not a feature list. Names the specific surface-change (pilot → production), the specific deliverables (role-based access, cross-artist isolation, credentials management + rotation, audit integrity, artist data consent + retention), and the tie back to the AI disclosure / respectful workplace policy claims.\n## Changes to `components/sections-1-2/draft.md`\n- **Workstream 1 (substrate)** — extended with: \"Security and artist data stewardship are scoped in from the start rather than bolted on: credentials management for the external platforms the substrate integrates with (with secret rotation and scoped access), cross-artist data isolation enforced at the substrate level, audit trail integrity, and codified artist data consent and retention policies.\"\n- **Workstream 2 (productization)** — extended with: \"Moving from single-operator pilot tools to multi-user production infrastructure holding private artist data changes the security surface materially; the productization work includes the hardening required to honour the company's commitments about artist data (stated in the AI disclosure and respectful workplace policy) rather than relying on founder-memory discipline.\" Also: \"role-based access enforced across artist / operator / agent views.\"\n- **Team section — Jarett bio** — updated to explicitly name security and data stewardship as part of his role, with specific practices listed (credentials management, cross-artist data isolation, role-based access, audit integrity).\n- **\"Why this team can deliver\"** — Jarett bullet upgraded to: \"the systemization, build discipline, and hardening practice needed for the next stage — including the credentials management, data-isolation, and artist data stewardship work required to take pilot tools into production use across a multi-user, multi-artist company.\"\n- **Budget Realism** — named expense buckets restructured. Previously: strategic and technical labor, operational-system documentation and productization, development of two strategic modules, contractor/operator support, software/infrastructure. Now: strategic and technical labor (explicit mention of substrate build + strategic-tool development + security/hardening), intelligence substrate build (new dedicated bucket), operational-system productization and hardening (merged with documentation, with hardening named), development of two strategic decision modules, contractor/operator support, software/infrastructure.\n## Cross-document coherence\nThe AI disclosure statement already says: *\"Artist data is used only in the service of the artist's career; it is not sold, licensed, or shared with AI vendors beyond the operational use disclosed here.\"* The respectful workplace policy says: *\"Artist images, recordings, personal data, and professional information are used only in the service of the artist's career and only in ways the artist has explicitly authorized.\"* Previously these were promises; now Section 1 Workstream 1/2 and Budget Realism fund the substrate-level enforcement that makes them real. That's the coherence move — commitments backed by infrastructure deliverables, not aspirational language.\n## Not done (deferred)\n- **Budget bucket mapping in `components/budget/manifest.yml`** — still structured against 3 workstreams. Needs update to 4 buckets + explicit security/hardening expense line.\n- **Sophia consent and artist-onboarding policy docs** — eventual artifacts but not required for the 2026-04-29 submission. Work would land in the grant period as part of Workstream 1/2 deliverables."
    },
    {
      "t": "2026-04-21",
      "e": "component.revised",
      "tone": "voltage",
      "msg": "Sections 1-2 — company-brief framing ported into draft v2",
      "id": "log-2026-04-21-sections-1-2-framing-ported",
      "file": "grants/amplify-bc-2026/log/2026-04-21-sections-1-2-framing-ported.md",
      "preview": "**What happened**: Ported the company brief's strongest framing moves into `components/sections-1-2/draft.md`. The application's own Section 1 / Section 2 opener now carries voice equivalent to the support doc, not weaker.\n**Three specific ports**:\n1. **Section 1 Project Summary (new opener)** — replaced \"building the next stage of operational and strategic infrastructure\" with:\n   - Banner year + second-year trajectory (\"crosses into its second year with a breakout as the anchor, not an aspiration\")\n   - Moments-are-precursors thesis (\"the necessary precursor to durable company-building in this industry\")\n   - Divergent outcomes (\"operators who treat them as such build lasting local value … the ones who don't burn them out on one campaign\")\n   - Purpose statement (\"vehicle for turning this moment into durable capacity for B.C. artists beyond Sophia\")\n   - Financial substance upfront (\"contracted 2026 artist revenue in the $390,000+ CAD range\")\n2. **Section 2 Team — Matt Owchar bio** — added Paradise (2019–2025) lineage as the most recent prior vehicle; named UV as the ongoing companion venture now restarting after a year paused for Sophia / DG; framed UV and DG as expressions of the same taste-driven / deliberate-controlled-growth operating practice. Preserved the existing \"systems are his systems, operating practice is his operating practice\" line as the application-relevant anchor.\n3. **Section 2 \"Why this team can deliver\"** — added the earned-capital paragraph:\n   > A breakout campaign earns things that can't be bought: working relationships with the label and the agents, access to the touring circuit at the level Sophia is now operating, and hands-on knowledge of what a modern international touring campaign requires. Matt has earned those on Sophia's work. Without infrastructure, that earned capital stays locked inside one campaign. The grant-funded build is what lets Different Gear extend those relationships, that access, and that know-how to developmental artists on the company's roster.\n   This argument is unique in the brief and load-bearing for the multi-artist claim — the roster is credible not only because tools lower per-artist cost, but because Matt's Sophia-earned access transfers to developmental artists by introduction.\n**Frontmatter changes**:\n- `status: draft-v2-partial` → `status: draft-v2`\n- `updated: 2026-04-21`\n- New field `also_draws_from: grants/amplify-bc-2026/company-brief.md` makes the source relationship explicit\n**Drafting notes footer** updated with a \"V2 framing port\" section enumerating the three changes above.\n**What wasn't ported** (redundancy avoidance):\n- The brief's tool bullet list — already in Section 1 \"Proof of concept.\"\n- Sophia's tour itinerary / revenue table — already in Proof of concept + Budget realism.\n- The three workstreams bullet list — already in \"The project\" section.\n- The roster list with Lovefoxy and Prado — already in the Applicant section and a `[NEEDS:]` resolution path pending Matt confirmation on roster phrasing."
    },
    {
      "t": "2026-04-21",
      "e": "log",
      "tone": "agent",
      "msg": "Plain-voice pass — company brief + Sections 1–2 + Sections 3–6",
      "id": "log-2026-04-21-plain-voice-pass",
      "file": "grants/amplify-bc-2026/log/2026-04-21-plain-voice-pass.md",
      "preview": "# Plain-voice pass — 2026-04-21\n## What happened\nExtended the plain-voice calibration from Section 1 only (drafted earlier this day) to cover the full grant surface. Three artifacts added in plain voice; one existing plain-voice Section 1 draft extended with Section 2.\n## Scope\n- **Section 2 of the plain-voice draft** added to `components/sections-1-2/draft-alt-plain-voice.md`. Same thesis, same evidence, same structure as v3 dense draft. Matt's operational-stack business bullets kept almost verbatim (already plain). Jarett's bio and Budget Realism de-jargoned (substrate → shared information system; credentials management / cross-artist isolation / role-based access / audit integrity → safe credential handling / strict separation between one artist's data and another's / permissions by role / verifiable action records). Comparison notes expanded with Section 2 specifics + reinjection candidate list.\n- **Company brief in plain voice** at `grants/amplify-bc-2026/company-brief-plain-voice.md`. Full ~2,100-word rewrite of the canonical company brief. Every dense term replaced; music industry and grant-writing vocabulary kept. Reusable as-is in reference-letter packets (Simkin, Ryan Holmes, Meli) where the audience is music-industry-native and zero-years-tech.\n- **Sections 3, 4, 5, 6 drafted plain voice, v1** at `components/sections-3-6/draft-plain-voice.md`. Drafted plain-voice first (not dense-then-translated) per the decision that the translation round trip wastes work and risks dense-voice patterns leaking through. Written from the narrative v3 spec guidance and the plain-voice company brief as source. Scoring coverage mapped bullet-by-bullet in the Drafting notes tail — each scoring question for each section answered by a named subsection.\n## Decisions\n- **Plain-voice propagates across the application and company brief.** The calibration artifact drafted earlier today (`draft-alt-plain-voice.md` for Section 1) was closer to what a breakout-company application to Creative BC should sound like than the v3 dense voice. The same register now carries through Section 2, Sections 3–6, and the company brief.\n- **Dense-voice v3 artifacts stay in place.** `draft.md` (Sections 1–2, v3) and `company-brief.md` (v3 dense) kept as reference. Not deleted; not moved. Comparison still available for any targeted reinjection pass. Messaging guardrails in narrative v3 spec remain authoritative.\n- **Reinjection discipline.** Technical terms fold back in only where they earn credibility with a sophisticated evaluator — one or two places per section, flagged inline as \"reinjection candidates\" in each draft. No blanket reinjection; the default is plain.\n- **Sections 3–6 drafted plain from the start.** Rejected the alternative (draft dense, then plain-voice alt) as waste. Dense voice patterns leak through translation passes. Starting plain means the voice is native, not retrofitted.\n- **Roster target flipped 1/3 amber → 3/3 signal.** Sophia + Lovefoxy + Prado Monroe is the named roster per Matt's 2026-04-20 text. The remaining blocker is a phrasing decision (named roster vs. \"1 signed + 2 scouting\" framing), not a name gap.\n- **Sections 3–6 is a new component dir** (`components/sections-3-6/`) with its own manifest — sibling to `sections-1-2/`. Four sections grouped because they're drafted together, revised together, and second-readered together.\n## Scoring coverage\nPlain-voice draft answers each scoring question in the program rubric for the 50 points carried by Sections 3–6. Summary at the bottom of the draft. Quick check:\n- Section 3 (/20) — 3 scoring questions, 3 named subsections answering them.\n- Section 4 (/10) — 3 scoring questions, 4 subsections (one scoring question addressed in two subsections).\n- Section 5 (/10) — 4 scoring questions, 4 subsections; owner self-ID still open.\n- Section 6 (/10) — 3 scoring questions, 4 subsections (cross-sector collaboration called out separately from the main innovation argument).\n## Pending\n- **Matt second-reader pass** on Section 3 (economic claims — jobs, B.C. vendor spend, capacity/revenue projections) and Section 5 (authentic-partnership framing for Prado Monroe)."
    },
    {
      "t": "2026-04-21",
      "e": "artefact.revised",
      "tone": "agent",
      "msg": "Narrative design spec refreshed to v3",
      "id": "log-2026-04-21-narrative-spec-v3-refresh",
      "file": "grants/amplify-bc-2026/log/2026-04-21-narrative-spec-v3-refresh.md",
      "preview": "**What happened**: Refreshed the narrative design spec from v2 to v3 in place. Same file path (`docs/superpowers/specs/2026-04-14-amplify-bc-narrative-design-v2.md` — filename kept for reference continuity across `manifest.yml` artefacts, `sections-1-2/draft.md` source field, and other downstream pointers). Frontmatter `status` bumped `draft-v2 → draft-v3`; `updated: 2026-04-21` added; `revision_history` field added listing v2 and v3 passes.\n**Why refresh, not version bump to a new file**: The v1→v2 precedent used separate files with `supersedes:` pointers. That was correct for v2 because v1 had a fundamentally different framing (three-pillar broad incubator concept). v3 is a refinement of v2's company-capacity framing, not a replacement — same central thesis (company-capacity investment, Sophia as proof case, narrow strategic scope), refined around intelligence-layer-as-central-product and the security thread. Keeping the file path avoids fragmenting the `source:` and `artefacts:` references that already point at this file.\n## What changed\nMajor structural and thesis-level changes:\n- **Narrative Strategy** rewritten. Central claim now leads with \"intelligence layer is the central product\"; key beats go from five to six (added intelligence-layer beat, security/stewardship beat).\n- **Section 1 — new subsection \"Why This Investment, At This Size, Now\"**. Three cost-of-error asymmetries named as strategic calibration (roster expansion window, Sophia's strategic arc decision density, inbound opportunity valuation). Framed as asymmetry, not risk register.\n- **Section 1 — \"The Solution\" restructured from 3 to 4 workstreams**. W1 substrate; W2 operational productization + hardening onto substrate; W3 strategic tools on substrate; W4 multi-artist deploy. Security / data stewardship named across W1 and W2.\n- **Section 1 — \"Proof of Concept\" tool list expanded** from 5 bullets to 9, covering the real operational surface (includes UV-origin tools reframed as DG's: booking pipeline, venue/agent knowledge base, per-day budget and offer generation, sandbox validation lane, asset capture).\n- **Section 1 — Project Roadmap phasing adjusted** to match 4-workstream structure.\n- **Section 1 — What This Grant Funds** aligned to 4 workstreams. \"Further modules are roadmap items, not funded deliverables\" language softened — disciplined-scope argument now lives at substrate level rather than pre-specified tool-list level.\n- **Section 2 — Applicant block** updated with correct incorporation facts, officers, legal counsel, and 2026 roster names.\n- **Section 2 — Matt bio** absorbs Paradise (2019–2025) lineage and UV-alongside-DG framing as \"expressions of the same operating practice.\"\n- **Section 2 — Jarett bio** adds security and data stewardship discipline as a named role dimension; specific hardening practices enumerated.\n- **Section 2 — \"Why This Team Can Deliver\"** bullets upgraded; Jarett bullet adds hardening practice; earned-capital bullet added as the credibility lever for the multi-artist claim.\n- **Section 2 — Budget Realism** restructured into four workstream-aligned buckets; matching funds grounded in Sophia's contracted 2026 management revenue with label advance placement flagged against fiscal year-end.\n- **Section 4 — Investment in BC Talent** names roster specifics (Prado Monroe as the BC-artist line).\n- **Section 5 — JEDI** recast as authentic-partnership argument via Prado Monroe (Afro-Métis, Indigenous, female, existing working relationship), with explicit framing that the diversity follows who Matt has been working with, not from roster engineered to score.\n- **Section 6 — Innovation** rewritten around intelligence-substrate as the innovation, not AI-the-technology; substrate-level enforcement of artist data stewardship added as a first-class innovation beat.\n- **Messaging Guardrails** expanded from 5 beats to 6 to include intelligence-layer and security/stewardship framing. Cut-list expanded to include A&R/sign-decline framing, tool-by-tool pitching, and risk-register phrasing.\n- **Application Logistics** — required and supporting materials tables updated to reflect current completion state (certificate of incorp received, AI disclosure + respectful workplace + company brief drafted, Simkin packet drafted).\n- **Dates table** updated with Apr 14 / Apr 18 / Apr 20 / Apr 21 milestones leading to Apr 29 submit.\n- **New section — V3 Revision History** at bottom enumerates v2 → v3 changes explicitly."
    },
    {
      "t": "2026-04-21",
      "e": "artefact.promoted",
      "tone": "agent",
      "msg": "Company brief promoted from Simkin packet to grant root",
      "id": "log-2026-04-21-company-brief-promoted",
      "file": "grants/amplify-bc-2026/log/2026-04-21-company-brief-promoted.md",
      "preview": "**What happened**: Promoted `company-brief.md` from `components/reference-letters/simkin/` to `grants/amplify-bc-2026/` (grant root). `git mv` used — history preserved.\n**Why**: The brief was originally drafted as a Simkin-specific attachment but outgrew that scope during drafting. As-written it's a canonical Different Gear company intro, reusable across:\n- Every reference-letter packet (Simkin's, and the pending Ryan / Meli packets — all three use the same brief as a shared attachment rather than each packet duplicating the content).\n- Any external partnership / brand / investor pitch.\n- Future grant cycles (FACTOR June 4 next).\n- Source material for the application's Section 1 / Section 2 openers — the voice in the brief (Paradise lineage, \"moments as precursors,\" \"second year with anchor not aspiration\") is stronger than the current sections-1-2 draft opener.\n**State changes**:\n- File moved: `components/reference-letters/simkin/company-brief.md` → `company-brief.md` (grant root).\n- Frontmatter updated: `kind: outreach-attachment` → `kind: company-brief`; `recipient: Jonathan Simkin` dropped; new `audiences` list (peers, evaluators, partnerships, contractors); `maintenance_note` added flagging the Amplify-cycle-specific tail section.\n- `manifest.yml` (grant root): added `company_brief` to the `artefacts:` map.\n- `components/reference-letters/manifest.yml`: Simkin packet listing updated — `company-brief.md` removed from `packet_contents` (it's no longer packet-local) and added to a new `shared_attachments` block with a note on the promotion.\n- `components/reference-letters/simkin/reply-email.md` frontmatter: `attachments:` list added pointing at the new path (`../../../../company-brief.md`) plus the two packet-local attachments (`sophia-bio.md`, `letter-draft.md`).\n**Follow-ups authorized but not yet done**:\n- **Port the brief's framing back into `components/sections-1-2/draft.md` Section 1 opener.** The current draft is drier than the brief; the Paradise lineage + \"moments as precursors\" + \"second year with anchor not aspiration\" language belongs in the application itself, not only in a support doc.\n- **Ryan Holmes packet** at `components/reference-letters/ryan/` using the same file pattern (reply email, sophia-bio, letter-draft), with the shared company brief attached.\n- **Meli packet** at `components/reference-letters/meli/` — same pattern.\n**Not done (intentionally)**:\n- Split of the brief into evergreen + cycle-specific addendum. Decided to keep a single file with the Amplify-specific \"What's drafted and in hand\" section preserved at the tail. Lower maintenance overhead; next cycle's author edits that section."
    },
    {
      "t": "2026-04-20",
      "e": "component.drafted",
      "tone": "signal",
      "msg": "Respectful workplace policy — drafted v1",
      "id": "log-2026-04-20-respectful-workplace-drafted",
      "file": "grants/amplify-bc-2026/log/2026-04-20-respectful-workplace-drafted.md",
      "preview": "**What happened**: Respectful workplace policy drafted at `components/respectful-workplace-policy/draft.md`. ~650 words, one page.\n**Structure** (6 sections):\n1. **Scope** — covers officers, employees, long-term contractors, roster artists and their tour/campaign personnel, and third parties in a work context (venues, promoters, labels, brand partners, counsel).\n2. **Standards** — professionalism + non-discrimination grounded in BC Human Rights Code + federal legislation (referenced by name, not enumerated line-by-line to avoid drift from statutory language); artist likeness/data/consent; boundaries; specific prohibition on sexual harassment, bullying, intimidation, retaliation with concrete consequences.\n3. **Operational practices** — four concrete enforcement mechanisms: human review of outbound communications (including AI-drafted ones), consent on artist content and data, touring environment standards with incident logging, working-hours/channels norms with on-call pattern for urgent matters.\n4. **Raising a concern** — three escalation paths named with real people: Matt (President) as primary; Angela (Secretary) as secondary for concerns involving the President; legal counsel (TOML) as external option. Explicit retaliation prohibition.\n5. **External alignment** — subordinate to BC Human Rights Code, Canadian Human Rights Act, BC Employment Standards Act, Workers Compensation Act (WorkSafeBC); affirms right to external remedy (BCHRT, WorkSafeBC, courts) regardless of internal process.\n6. **Review** — annual review, material updates communicated.\n**Framing decisions**:\n- Voice per component CLAUDE.md: concrete, operational, not moralizing. Every standard is paired with an enforcement mechanism.\n- Operator controls that are already in the AI disclosure (human review of outbound comms, consent on artist data, no sole-AI decision-maker) are repeated here as workplace practices — consistent story across both documents.\n- Escalation paths are named with real people and their actual roles, per the 04-20 input from Matt (Angela as Secretary is now cited as a real second-channel recipient).\n- External alignment section exists to preempt any read that the internal process is intended to displace legal remedy.\n**State transitions**:\n- `targets.yml:respectful-workplace-policy`: idle → signal.\n- `components/respectful-workplace-policy/manifest.yml`: state idle → signal; `draft: draft.md` added.\n**Next action**:\n- Second-reader pass (Matt, and Angela if available) — confirm the escalation paths are ones they're willing to own, and flag any company-specific practice (e.g., specific channels, response-time commitments) worth naming explicitly.\n- Cross-read once reference letters and final budget land, to make sure cross-document voice stays consistent."
    },
    {
      "t": "2026-04-20",
      "e": "inputs.received",
      "tone": "signal",
      "msg": "Matt inputs received — legal title, Angela, Sophia 2026 revenue",
      "id": "log-2026-04-20-matt-inputs-received",
      "file": "grants/amplify-bc-2026/log/2026-04-20-matt-inputs-received.md",
      "preview": "**What happened**: Matt sent the point-form 2026 revenue picture + applicant entity details pulled from signed contracts, team invoices, and DG's internal touring grid. Contract PDFs available on request.\n## Inputs that resolved\n**Applicant entity** (resolves `entity-legal-title` target + Section 2 company-capacity facts):\n- Legal name: **Different Gear Mgmt Inc.**\n- Federally incorporated (Corporations Canada), **2025-06-10**\n- BC Extra-Provincial Registration on file\n- Officers: Matthew Owchar (President) / **Angela Donna Christensen (Secretary)**\n- Legal counsel: Taylor Oballa Murray Leyland LLP (Toronto) — Ted Ruder, corporate clerk\n**Sophia Stel 2026 revenue** (resolves `expected-sophia-revenue` input on budget match side):\n| Stream | Sophia gross (CAD) | DG rate | DG cut (CAD) |\n|---|---|---|---|\n| Label advance (paid Nov 2025) | ~$137,000 | 20% | ~$27,400 |\n| Europe Spring tour (11 dates, Apr 10–26) | $28,377.25 | 20% | $5,675.45 |\n| America Spring tour (16 dates, May 1 – Jun 6) | $69,244.23 | 20% | $13,848.85 |\n| Summer/Fall festivals (11 shows, Jul–Dec) | ~$83,165 | 20% | ~$16,633 |\n| Brand partnerships 2026 | $150,000 | 20% | $30,000 |\n| Merch 2026 (projected) | $60,000 | 0% | $0 |\n| **Total excl. label advance** | **~$390,786** | — | **~$66,157** |\n| **Total incl. label advance** | **~$527,786** | — | **~$93,557** |\nLabel advance = US$100,000 × ~1.37 = ~$137,000 CAD, paid Nov 2025. Whether it lands in the 2026 match side depends on DG fiscal year-end placement; Matt confirming with TOML / AccNet.\n**Commission structure** (context for how DG cut is computed):\n- DG takes 20% on tour + brand + label advance."
    },
    {
      "t": "2026-04-20",
      "e": "outreach.sent",
      "tone": "amber",
      "msg": "Matt follow-up text — roster + expenses",
      "id": "log-2026-04-20-matt-followup-text-sent",
      "file": "grants/amplify-bc-2026/log/2026-04-20-matt-followup-text-sent.md",
      "preview": "**What happened**: Sent Matt a follow-up text requesting the two remaining inputs needed for the 2026-04-29 grant submission.\n**Items requested**:\n1. **Artist roster** (drop-dead 04-27): two real names for the 2 placeholder artists, OR confirmation of the \"1 signed, 2 in active scouting\" fallback framing. Either path resolves the roster line in Section 2.\n2. **Expenses since Jan 1, 2026** (drop-dead 04-27): for the budget match side. Offered a fallback path if the fiscal year-end check with TOML / AccNet won't land by 04-27: Matt sends a rough by-category expense list and the final number flags \"to confirm\" in the budget submission, with clean-up landing in the post-submit financial statements due 2026-05-13.\n**Context communicated**: everything else on the grant is drafted; reference letter outreach (including Ryan Holmes) is on Jarett.\n**What's still outstanding for Matt after this text resolves**:\n- Post-submit financial statements (due 2026-05-13) — separate workstream.\n- Fiscal year-end confirmation from TOML / AccNet — affects label-advance placement in the budget match side, Matt handling independently.\n**Next check-in**: if no reply by 2026-04-23 (T-6 days), nudge."
    },
    {
      "t": "2026-04-20",
      "e": "component.drafted",
      "tone": "signal",
      "msg": "AI disclosure — drafted v1",
      "id": "log-2026-04-20-ai-disclosure-drafted",
      "file": "grants/amplify-bc-2026/log/2026-04-20-ai-disclosure-drafted.md",
      "preview": "**What happened**: AI disclosure statement drafted at `components/ai-disclosure/draft.md`. ~700 words, one-page target.\n**Structure**:\n1. AI use in the preparation of this application (drafting acceleration, factual claims sourced from Matt + signed contracts, operator-owned framing)\n2. AI use in funded project deliverables (tour logistics intake, itinerary patching with safety rails, automated advancing, offer modeling with deterministic P&L, auditable event trail, + the two strategic modules funded by this grant)\n3. Responsible-use principles in practice (transparency, accountability, fairness)\n4. What the company does not do (artist-facing creative content without consent, sole decision-maker on material actions, artist ranking, data sharing beyond disclosed operational use)\n**Framing decisions**:\n- Treated as strength, not compliance boilerplate, per narrative v2 guidance and the CLAUDE.md rule (\"AI disclosure is framing the thesis, not compliance boilerplate\").\n- Aligned against Creative BC's cited reference to BC's draft AI responsible-use principles (transparency, accountability, fairness).\n- Made the operator controls concrete: audit trail, fail-closed safety rails, operator sign-off, staged review for outbound automated communications.\n- Named the specific tools used on the application side (Claude, Codex) and clarified AI's role as accelerator, not author of record.\n- Affirmed that the company's thesis, operational stack, proof case, and revenue picture are not AI-generated.\n**State transitions**:\n- `targets.yml:ai-disclosure`: idle → signal.\n- `components/ai-disclosure/manifest.yml`: state idle → signal; `draft: draft.md` added.\n**Voltage**: deadline still 2026-04-27 drop-dead but no longer in the blocker set. Ready for second-reader pass when Matt returns.\n**Next action**:\n- Second-reader pass (Matt) when available — voice check + anything he'd want worded differently about Different Gear's actual practices.\n- Cross-read against Creative BC scoring rubric final questions before form-fill."
    },
    {
      "t": "2026-04-18",
      "e": "status.snapshot",
      "tone": "agent",
      "msg": "Amplify BC — T-11 status snapshot",
      "id": "log-2026-04-18-status-t-minus-11",
      "file": "grants/amplify-bc-2026/log/2026-04-18-status-t-minus-11.md",
      "preview": "**Deliverable state** (source of truth: `targets.yml`):\n- sections 1-2: `idle` · 0/2 drafted\n- reference letters: `amber` · 0/3 signed · Ryan not yet contacted · Simkin emailed 04-13 no reply (T+5d)\n- budget: `amber` · controllable lines filled · matching side awaiting Matt\n- ai-disclosure: `idle`\n- respectful-workplace-policy: `idle`\n- artist-roster: `amber` · 1/3 named (Sophia)\n- financial-statements: `idle` (post-submit, due 05-13)\n**Blockers inventory** (5 open):\n1. Matt expense numbers (target 04-20 / 04-21)\n2. Matt expected Sophia revenue\n3. Exact legal title from incorporation docs\n4. Matt to name 2 additional artists (or accept placeholder framing)\n5. Ryan Holmes — reference letter outreach not yet initiated\n**Outreach state**:\n- Simkin — T+5d since ask, no reply; nudge due this week.\n- Calderon — T+5d since ask, no reply; secondary priority (coworking call, not grant-critical).\n- Holmes — zero outreach.\n- Meli — drafting phase, not yet sent.\n**Architectural context**: Partnership intelligence architecture v0 landed today (commit `3a99c05`, local). The grant dir created as the first partnership-altitude `kind: grant` node validating the 5-slot + components shape.\n**Next action when operator resumes**: draft sections 1-2 against narrative v2, or contact Ryan Holmes — either unblocks a voltage target."
    }
  ],
  "children": [
    {
      "id": "ai-disclosure",
      "name": "ai-disclosure",
      "kind": "domain",
      "layer": 4,
      "path": "shared-brain/grants/amplify-bc-2026/ai-disclosure",
      "file": "grants/amplify-bc-2026/components/ai-disclosure/manifest.yml",
      "state": "signal",
      "privacy": "shared",
      "intro": "New mandatory section this cycle. v1 drafted 2026-04-20 (~800 words, 4 sections). Framed as strength + concrete operator controls, not compliance boilerplate. Names Claude + Codex explicitly. Covers use in application, use in funded deliverables, three BC principles in practice (transparency/accountability/fairness), and what the company does not do.",
      "preview": "component: ai-disclosure\nstate: signal\nprogress: drafted v1\nintro: >\n  New mandatory section this cycle. v1 drafted 2026-04-20 (~800 words, 4 sections). Framed as strength + concrete operator controls, not compliance boilerplate. Names Claude + Codex explicitly. Covers use in application, use in funded deliverables, three BC principles in practice (transparency/accountability/fairness), and what the company does not do.\nsource: docs/superpowers/specs/2026-04-14-amplify-bc-narrative-design-v2.md\ndraft: draft.md\nprinciples:\n  - transparency\n  - accountability\n  - fairness\nnotes: |\n  Drafted 2026-04-20 against narrative v2 framing and Creative BC's 2026/27\n  tip sheet guidance (mandatory disclosure, references BC's draft AI\n  responsible-use principles). Framed as strength + concrete operator\n  controls, not compliance boilerplate. Covers (1) use in this application,\n  (2) use in funded deliverables, (3) principles in practice, (4) what the\n  company does not do.\nblockers: []\nnext_action: second-reader pass (Matt) when available; cross-read against scoring rubric\ndrop_dead: 2026-04-27\n",
      "goals": [],
      "targets": [
        {
          "k": "progress",
          "v": "drafted v1",
          "cap": "second-reader pass (Matt) when available; cross-read against scoring rubric"
        },
        {
          "k": "drop-dead",
          "v": "2026-04-27",
          "cap": "target"
        }
      ],
      "positions": [],
      "bus": [],
      "receipts": [],
      "children": []
    },
    {
      "id": "artist-roster",
      "name": "artist-roster",
      "kind": "domain",
      "layer": 4,
      "path": "shared-brain/grants/amplify-bc-2026/artist-roster",
      "file": "grants/amplify-bc-2026/components/artist-roster/manifest.yml",
      "state": "signal",
      "privacy": "shared",
      "intro": "Creative BC roster template. Confirmed 2026-04-21: Sophia Stel (breakout, proof case) + Lovefoxy (Berlin-based, in active signing conversation) + Prado Monroe (BC-based Afro-Métis developmental artist). Eligibility-bearing per program guidelines (disqualifies one-artist companies). Prado's profile does real work in Investment in BC Talent (10 pts) and JEDI (10 pts) scoring without score-engineering.",
      "preview": "component: artist-roster\nstate: signal\nprogress: 3/3 named\nintro: >\n  Creative BC roster template. Confirmed 2026-04-21: Sophia Stel (breakout, proof case) + Lovefoxy (Berlin-based, in active signing conversation) + Prado Monroe (BC-based Afro-Métis developmental artist). Eligibility-bearing per program guidelines (disqualifies one-artist companies). Prado's profile does real work in Investment in BC Talent (10 pts) and JEDI (10 pts) scoring without score-engineering.\nsource: Creative BC roster template\nartists:\n  - name: Sophia Stel\n    state: confirmed\n    canonical: .entities/artists/sophia-stel\n    role: primary proof case\n  - name: Lovefoxy\n    state: confirmed\n    role: Berlin-based, in active signing conversation\n  - name: Prado Monroe\n    state: confirmed\n    role: BC-based Afro-Métis developmental artist\nblockers:\n  - final phrasing decision (named roster vs. \"1 signed + 2 scouting\" framing) — Matt confirmation on phrasing preference\nfallback_framing: |\n  If Matt cannot name 2 additional artists in time, reframe roster as\n  \"1 signed + 2 in active scouting/negotiation\" with narrative consistent\n  with the 2026 year-end target of 6 on roster. Do not fabricate names.\nnext_action: confirm with Matt whether named artists or placeholder framing\ndrop_dead: 2026-04-26\n",
      "goals": [],
      "targets": [
        {
          "k": "progress",
          "v": "3/3 named",
          "cap": "confirm with Matt whether named artists or placeholder framing"
        },
        {
          "k": "drop-dead",
          "v": "2026-04-26",
          "cap": "target"
        },
        {
          "k": "blockers",
          "v": "1",
          "cap": "final phrasing decision (named roster vs. \"1 signed + 2 scouting\" framing) — Matt confirmation on phrasing preference",
          "vlt": true
        }
      ],
      "positions": [],
      "bus": [],
      "receipts": [],
      "children": []
    },
    {
      "id": "respectful-workplace-policy",
      "name": "respectful-workplace-policy",
      "kind": "domain",
      "layer": 4,
      "path": "shared-brain/grants/amplify-bc-2026/respectful-workplace-policy",
      "file": "grants/amplify-bc-2026/components/respectful-workplace-policy/manifest.yml",
      "state": "signal",
      "privacy": "shared",
      "intro": "Recommended per program tip sheet. v1 drafted 2026-04-20 (~650 words, 6 sections). Concrete + operational voice, not moralizing. References BC Human Rights Code, Canadian Human Rights Act, ESA, and WorkSafeBC for external alignment. Names three internal escalation paths (Matt, Angela, TOML counsel).",
      "preview": "component: respectful-workplace-policy\nstate: signal\nprogress: drafted v1\nintro: >\n  Recommended per program tip sheet. v1 drafted 2026-04-20 (~650 words, 6 sections). Concrete + operational voice, not moralizing. References BC Human Rights Code, Canadian Human Rights Act, ESA, and WorkSafeBC for external alignment. Names three internal escalation paths (Matt, Angela, TOML counsel).\nsource: docs/superpowers/specs/2026-04-14-amplify-bc-narrative-design-v2.md\ndraft: draft.md\nsections:\n  - scope\n  - standards\n  - operational practices\n  - raising a concern\n  - external alignment\n  - review\nnotes: |\n  Drafted 2026-04-20. Concrete + operational voice per component CLAUDE.md\n  (\"concrete · operational · not moralizing\"). References BC Human Rights\n  Code, Canadian Human Rights Act, Employment Standards Act, and WorkSafeBC\n  for external alignment. Names three internal escalation paths (Matt as\n  President, Angela as Secretary, legal counsel at TOML) so artists /\n  contractors have a real route, not just aspirational language.\nblockers: []\nnext_action: second-reader pass (Matt, Angela) — confirm escalation paths + any company-specific practices worth naming\ndrop_dead: 2026-04-27\n",
      "goals": [],
      "targets": [
        {
          "k": "progress",
          "v": "drafted v1",
          "cap": "second-reader pass (Matt, Angela) — confirm escalation paths + any company-specific practices worth naming"
        },
        {
          "k": "drop-dead",
          "v": "2026-04-27",
          "cap": "target"
        }
      ],
      "positions": [],
      "bus": [],
      "receipts": [],
      "children": []
    },
    {
      "id": "sections-1-2",
      "name": "sections-1-2",
      "kind": "domain",
      "layer": 4,
      "path": "shared-brain/grants/amplify-bc-2026/sections-1-2",
      "file": "grants/amplify-bc-2026/components/sections-1-2/manifest.yml",
      "state": "signal",
      "privacy": "shared",
      "intro": "Section 1 (Idea, Strategy, Approach · /30) + Section 2 (Company Capacity · /20). 50-point backbone. v3 thesis: intelligence substrate as central product · 4 workstreams · 3 cost-of-error asymmetries named. 2 [NEEDS:] remain (artists phrasing, final budget numbers pending expenses). Both registers authored; dense unaudited for overclaim patterns.",
      "preview": "component: sections-1-2\nstate: signal\nprogress: 2/2 drafted (v3 dense + plain-voice alt)\nintro: >\n  Section 1 (Idea, Strategy, Approach · /30) + Section 2 (Company Capacity · /20). 50-point backbone. v3 thesis: intelligence substrate as central product · 4 workstreams · 3 cost-of-error asymmetries named. 2 [NEEDS:] remain (artists phrasing, final budget numbers pending expenses). Both registers authored; dense unaudited for overclaim patterns.\nsource: docs/superpowers/specs/2026-04-14-amplify-bc-narrative-design-v2.md\ndraft: draft.md\nresolved_inputs:\n  - legal title — Different Gear Mgmt Inc. (received 2026-04-20)\n  - Angela — Angela Donna Christensen, Secretary (received 2026-04-20)\nblockers:\n  - 2 [NEEDS:] inputs remaining inline (artists, final numbers)\n  - reference letter signatories not yet confirmed\nnext_action: v2 pass — absorb legal title + Angela + Sophia 2026 revenue structure; flag remaining [NEEDS:] for Matt\ndrop_dead: 2026-04-25\n",
      "goals": [],
      "targets": [
        {
          "k": "progress",
          "v": "2/2 drafted (v3 dense + plain-voice alt)",
          "cap": "v2 pass — absorb legal title + Angela + Sophia 2026 revenue structure; flag remaining [NEEDS:] for Matt"
        },
        {
          "k": "drop-dead",
          "v": "2026-04-25",
          "cap": "target"
        },
        {
          "k": "blockers",
          "v": "2",
          "cap": "2 [NEEDS:] inputs remaining inline (artists, final numbers)",
          "vlt": true
        }
      ],
      "positions": [],
      "bus": [],
      "receipts": [],
      "children": []
    },
    {
      "id": "sections-3-6",
      "name": "sections-3-6",
      "kind": "domain",
      "layer": 4,
      "path": "shared-brain/grants/amplify-bc-2026/sections-3-6",
      "file": "grants/amplify-bc-2026/components/sections-3-6/manifest.yml",
      "state": "signal",
      "privacy": "shared",
      "intro": "Sections 3–6 (Economic Impact /20 · BC Talent /10 · JEDI /10 · Innovation /10). 50 pts. v1 drafted in both plain + dense registers 2026-04-21. Unaudited for the overclaim patterns we caught in the plain-voice company brief; evaluator-facing so careful-reader risk is highest.",
      "preview": "component: sections-3-6\nstate: signal\nprogress: 4/4 drafted (v1, both voices — plain + dense tech)\nintro: >\n  Sections 3–6 (Economic Impact /20 · BC Talent /10 · JEDI /10 · Innovation /10). 50 pts. v1 drafted in both plain + dense registers 2026-04-21. Unaudited for the overclaim patterns we caught in the plain-voice company brief; evaluator-facing so careful-reader risk is highest.\nsource: docs/superpowers/specs/2026-04-14-amplify-bc-narrative-design-v2.md\nalso_draws_from:\n  - grants/amplify-bc-2026/company-brief.md\n  - grants/amplify-bc-2026/company-brief-plain-voice.md\ndrafts:\n  plain_voice: draft-plain-voice.md\n  dense_tech: draft-dense.md\nsections:\n  - section-3-economic-impact\n  - section-4-bc-talent\n  - section-5-jedi\n  - section-6-innovation\npoints_available: 50  # Sections 3 (/20) + 4 (/10) + 5 (/10) + 6 (/10)\nresolved_inputs:\n  - roster confirmed — Sophia Stel + Lovefoxy + Prado Monroe (Matt text 2026-04-20)\n  - legal title + officers + counsel (Matt email 2026-04-20)\n  - Sophia 2026 revenue picture (Matt email 2026-04-20)\nblockers:\n  - Section 3 quantification — final job-count / BC-vendor-spend / capacity-revenue targets locked against budget (depends on Matt expense history + fiscal year-end)\n  - Section 5 JEDI self-ID — whether Matt, Angela, or Jarett self-identify under any category (self-ID forms are post-submit but the section benefits from honest framing now)\nnext_action: second-reader pass by Matt on Section 3 quantification + Section 5 authentic-partnership framing; fold selective technical terms back in where credibility is earned\ndrop_dead: 2026-04-27\n",
      "goals": [],
      "targets": [
        {
          "k": "progress",
          "v": "4/4 drafted (v1, both voices — plain + dense tech)",
          "cap": "second-reader pass by Matt on Section 3 quantification + Section 5 authentic-partnership framing; fold selective technical terms back in where credibility is earned"
        },
        {
          "k": "drop-dead",
          "v": "2026-04-27",
          "cap": "target"
        },
        {
          "k": "blockers",
          "v": "2",
          "cap": "Section 3 quantification — final job-count / BC-vendor-spend / capacity-revenue targets locked against budget (depends on Matt expense history + fiscal year-end)",
          "vlt": true
        }
      ],
      "positions": [],
      "bus": [],
      "receipts": [],
      "children": []
    },
    {
      "id": "budget",
      "name": "budget",
      "kind": "domain",
      "layer": 4,
      "path": "shared-brain/grants/amplify-bc-2026/budget",
      "file": "grants/amplify-bc-2026/components/budget/manifest.yml",
      "state": "amber",
      "privacy": "shared",
      "intro": "Creative BC Excel template. Controllable lines filled (Jarett rate, software, research, marketing). Sophia 2026 revenue received 04-20 — match-side computable. Expenses pending Matt fiscal year-end check with TOML / AccNet. 3→4 workstream restructure still outstanding; needs explicit security/hardening expense line.",
      "preview": "component: budget\nstate: amber\nprogress: partial\nintro: >\n  Creative BC Excel template. Controllable lines filled (Jarett rate, software, research, marketing). Sophia 2026 revenue received 04-20 — match-side computable. Expenses pending Matt fiscal year-end check with TOML / AccNet. 3→4 workstream restructure still outstanding; needs explicit security/hardening expense line.\nsource: discovery/2026-04-13-budget-architecture.md\ntemplate: Creative BC Amplify Excel (download pending)\nlines_locked:\n  - Jarett rate (controllable)\n  - software subscriptions (controllable)\n  - research tools (controllable)\n  - marketing budget (controllable)\nresolved_inputs:\n  - expected Sophia 2026 revenue (received 2026-04-20) — see log/2026-04-20-matt-inputs-received.md\nlines_pending:\n  - matched expenses (awaiting Matt since-Jan-1 numbers; folding into fiscal year-end check with TOML / AccNet)\n  - label advance inclusion — depends on DG fiscal year-end (2026 vs. 2025)\n  - any uv-side costs attributable to grant project\nblockers:\n  - Matt expenses since Jan 1 (gated on fiscal year-end confirmation)\nnext_action: fill match-side template with Sophia revenue breakdown; flag expense row pending fiscal year-end decision\ndrop_dead: 2026-04-27\n",
      "goals": [],
      "targets": [
        {
          "k": "progress",
          "v": "partial",
          "cap": "fill match-side template with Sophia revenue breakdown; flag expense row pending fiscal year-end decision"
        },
        {
          "k": "drop-dead",
          "v": "2026-04-27",
          "cap": "hard target",
          "vlt": true
        },
        {
          "k": "blockers",
          "v": "1",
          "cap": "Matt expenses since Jan 1 (gated on fiscal year-end confirmation)",
          "vlt": true
        }
      ],
      "positions": [],
      "bus": [],
      "receipts": [],
      "children": []
    },
    {
      "id": "reference-letters",
      "name": "reference-letters",
      "kind": "domain",
      "layer": 4,
      "path": "shared-brain/grants/amplify-bc-2026/reference-letters",
      "file": "grants/amplify-bc-2026/components/reference-letters/manifest.yml",
      "state": "amber",
      "privacy": "shared",
      "intro": "Three reference letters — Ryan Holmes, Jonathan Simkin, Dario Meli. Simkin packet shipped 2026-04-22 at https://dg-simkin-packet.pages.dev with company brief + Sophia snapshot + technical explainer; reply email send-ready. Ryan IG DM queued to fire 11:00 PT on 2026-04-23 (Apple Reminder set). Meli DM pending draft.",
      "preview": "component: reference-letters\nstate: amber\nprogress: 0/3 signed · 1 packet shipped\nintro: >\n  Three reference letters — Ryan Holmes, Jonathan Simkin, Dario Meli. Simkin packet shipped 2026-04-22 at https://dg-simkin-packet.pages.dev with company brief + Sophia snapshot + technical explainer; reply email send-ready. Ryan IG DM queued to fire 11:00 PT on 2026-04-23 (Apple Reminder set). Meli DM pending draft.\ncontacts:\n  - name: Ryan Holmes\n    role: family, established\n    state: not_contacted\n    notes: highest-priority follow-up; packet pending\n  - name: Jonathan Simkin\n    role: music industry (604 Records, President)\n    state: packet_drafted\n    contacted: 2026-04-13\n    replied: 2026-04-19\n    reply_substance: asked for Sophia music + bio + Matt background; flagged he feels Creative BC \"doesn't particularly like him\" and wants to decline if his letter would be net-negative\n    packet_location: components/reference-letters/simkin/\n    packet_contents:\n      - reply-email.md (draft, not yet sent)\n      - sophia-bio.md (draft with placeholders Matt/Jarett fill)\n      - letter-draft.md (industry-perspective framing for him to adapt)\n    shared_attachments:\n      - grants/amplify-bc-2026/company-brief.md (canonical DG brief, used across all reference-letter packets and as source material for sections 1/2 openers)\n    notes: packet drafted 2026-04-21; awaiting Jarett review before sending. Company-brief promoted from packet-local to grant-root 2026-04-21 once it outgrew Simkin-only scope.\n  - name: Dario Meli\n    role: tech / advisor\n    state: draft_pending\n    notes: draft letter before asking; packet pattern from Simkin reusable\nblockers:\n  - Ryan Holmes not yet contacted + packet not drafted\n  - Simkin packet drafted but not yet sent\nnext_action: review Simkin packet, fill placeholders in sophia-bio.md, send; draft Ryan Holmes packet next\ndrop_dead: 2026-04-26\n",
      "goals": [],
      "targets": [
        {
          "k": "progress",
          "v": "0/3 signed · 1 packet shipped",
          "cap": "review Simkin packet, fill placeholders in sophia-bio.md, send; draft Ryan Holmes packet next"
        },
        {
          "k": "drop-dead",
          "v": "2026-04-26",
          "cap": "hard target",
          "vlt": true
        },
        {
          "k": "blockers",
          "v": "2",
          "cap": "Ryan Holmes not yet contacted + packet not drafted",
          "vlt": true
        }
      ],
      "positions": [],
      "bus": [],
      "receipts": [],
      "children": []
    },
    {
      "id": "financial-statements",
      "name": "financial-statements",
      "kind": "domain",
      "layer": 4,
      "path": "shared-brain/grants/amplify-bc-2026/financial-statements",
      "file": "grants/amplify-bc-2026/components/financial-statements/manifest.yml",
      "state": "idle",
      "privacy": "shared",
      "intro": "Post-submit obligation due 2026-05-13 (14 days after 04-29 submit). Company under 1 year — internally-prepared statements acceptable, no CPA required. Simple income / expense / balance format. Matt fills numbers; Jarett formats.",
      "preview": "component: financial-statements\nstate: idle\nprogress: deferred\nintro: >\n  Post-submit obligation due 2026-05-13 (14 days after 04-29 submit). Company under 1 year — internally-prepared statements acceptable, no CPA required. Simple income / expense / balance format. Matt fills numbers; Jarett formats.\ndue: 2026-05-13\nnotes: |\n  Post-submit obligation. Internally-prepared financial statements acceptable\n  for sub-1-year company (no CPA required per program research). Matt fills\n  actual numbers; Jarett formats. Track here so the post-submit window does\n  not slip.\nblockers: []\nnext_action: scaffold statement template after 04-29 submit\ndrop_dead: 2026-05-13\n",
      "goals": [],
      "targets": [
        {
          "k": "progress",
          "v": "deferred",
          "cap": "scaffold statement template after 04-29 submit"
        },
        {
          "k": "drop-dead",
          "v": "2026-05-13",
          "cap": "hard target",
          "vlt": true
        }
      ],
      "positions": [],
      "bus": [],
      "receipts": [],
      "children": []
    }
  ]
};

const SOPHIA_TOUR = {
  "artist": "Sophia Stel",
  "tour": "2026 World Tour",
  "shows": [
    {
      "date": "2026-04-10",
      "city": "Barcelona",
      "country": "ES",
      "venue": "Nista/Astin",
      "tz": "Europe/Madrid",
      "leg": "europe"
    },
    {
      "date": "2026-04-13",
      "city": "Copenhagen",
      "country": "DK",
      "venue": "Pumpehuset",
      "tz": "Europe/Copenhagen",
      "leg": "europe"
    },
    {
      "date": "2026-04-15",
      "city": "Warsaw",
      "country": "PL",
      "venue": "Bardzo Bardzo",
      "tz": "Europe/Warsaw",
      "leg": "europe"
    },
    {
      "date": "2026-04-16",
      "city": "Berlin",
      "country": "DE",
      "venue": "Berghain/Kantine",
      "tz": "Europe/Berlin",
      "leg": "europe"
    },
    {
      "date": "2026-04-17",
      "city": "Berlin",
      "country": "DE",
      "venue": "Live From Earth",
      "tz": "Europe/Berlin",
      "leg": "europe"
    },
    {
      "date": "2026-04-18",
      "city": "Amsterdam",
      "country": "NL",
      "venue": "Paradiso",
      "tz": "Europe/Amsterdam",
      "leg": "europe"
    },
    {
      "date": "2026-04-19",
      "city": "Brussels",
      "country": "BE",
      "venue": "Botanique",
      "tz": "Europe/Brussels",
      "leg": "europe"
    },
    {
      "date": "2026-04-21",
      "city": "Paris",
      "country": "FR",
      "venue": "Badaboum",
      "tz": "Europe/Paris",
      "leg": "europe"
    },
    {
      "date": "2026-04-23",
      "city": "London",
      "country": "GB",
      "venue": "fabric",
      "tz": "Europe/London",
      "leg": "europe"
    },
    {
      "date": "2026-04-25",
      "city": "Glasgow",
      "country": "GB",
      "venue": "King Tut's Wah Wah Hut",
      "tz": "Europe/London",
      "leg": "europe"
    },
    {
      "date": "2026-04-26",
      "city": "Salford",
      "country": "GB",
      "venue": "The White Hotel",
      "tz": "Europe/London",
      "leg": "europe"
    },
    {
      "date": "2026-05-01",
      "city": "New York, NY",
      "country": "US",
      "venue": "Elsewhere",
      "tz": "America/New_York",
      "leg": "america"
    },
    {
      "date": "2026-05-02",
      "city": "Philadelphia, PA",
      "country": "US",
      "venue": "Ukie Club",
      "tz": "America/New_York",
      "leg": "america"
    },
    {
      "date": "2026-05-03",
      "city": "Washington, DC",
      "country": "US",
      "venue": "DC9",
      "tz": "America/New_York",
      "leg": "america"
    },
    {
      "date": "2026-05-04",
      "city": "Atlanta, GA",
      "country": "US",
      "venue": "Masquerade",
      "tz": "America/New_York",
      "leg": "america"
    },
    {
      "date": "2026-05-06",
      "city": "Chicago, IL",
      "country": "US",
      "venue": "Empty Bottle",
      "tz": "America/Chicago",
      "leg": "america"
    },
    {
      "date": "2026-05-08",
      "city": "Denver, CO",
      "country": "US",
      "venue": "Lost Lake",
      "tz": "America/Denver",
      "leg": "america"
    },
    {
      "date": "2026-05-09",
      "city": "San Francisco, CA",
      "country": "US",
      "venue": "Brick & Mortar",
      "tz": "America/Los_Angeles",
      "leg": "america"
    },
    {
      "date": "2026-05-14",
      "city": "Los Angeles, CA",
      "country": "US",
      "venue": "KIA Forum (Lorde support · Night 1)",
      "tz": "America/Los_Angeles",
      "leg": "festivals"
    },
    {
      "date": "2026-05-15",
      "city": "Los Angeles, CA",
      "country": "US",
      "venue": "KIA Forum (Lorde support · Night 2)",
      "tz": "America/Los_Angeles",
      "leg": "festivals"
    },
    {
      "date": "2026-05-16",
      "city": "Montreal",
      "country": "CA",
      "venue": "Palomosa Festival (4pm)",
      "tz": "America/Toronto",
      "leg": "festivals"
    },
    {
      "date": "2026-05-16",
      "city": "Burlington, VT",
      "country": "US",
      "venue": "B.E.D. Festival (midnight)",
      "tz": "America/New_York",
      "leg": "festivals"
    },
    {
      "date": "2026-05-27",
      "city": "Los Angeles, CA",
      "country": "US",
      "venue": "Lodge Room",
      "tz": "America/Los_Angeles",
      "leg": "america"
    },
    {
      "date": "2026-05-29",
      "city": "Seattle, WA",
      "country": "US",
      "venue": "Barboza",
      "tz": "America/Los_Angeles",
      "leg": "america"
    },
    {
      "date": "2026-06-04",
      "city": "Dallas, TX",
      "country": "US",
      "venue": "Club Dada",
      "tz": "America/Chicago",
      "leg": "america"
    },
    {
      "date": "2026-06-05",
      "city": "Austin, TX",
      "country": "US",
      "venue": "29th Street Ballroom",
      "tz": "America/Chicago",
      "leg": "america"
    },
    {
      "date": "2026-06-06",
      "city": "Houston, TX",
      "country": "US",
      "venue": "White Oak Upstairs",
      "tz": "America/Chicago",
      "leg": "america"
    }
  ],
  "dayof_template": [
    {
      "label": "load-in",
      "offset_h": -6
    },
    {
      "label": "soundcheck",
      "offset_h": -3
    },
    {
      "label": "doors",
      "offset_h": 0
    },
    {
      "label": "set",
      "offset_h": 1
    }
  ]
};


// Wire children
BRAIN.children.push(AMPLIFY_BC);
BRAIN.extras = { tour: SOPHIA_TOUR };

function flatten(node, depth=0, out=[]) {
  out.push({ ...node, depth });
  (node.children || []).forEach(c => flatten(c, depth + 1, out));
  return out;
}

function findNode(path) {
  const list = flatten(BRAIN);
  return list.find(n => n.path === path) || BRAIN;
}

function parentChain(path) {
  const parts = path.split('/');
  const chain = [];
  for (let i = 1; i <= parts.length; i++) {
    chain.push(parts.slice(0, i).join('/'));
  }
  return chain.map(p => findNode(p)).filter(Boolean);
}

Object.assign(window, { BRAIN, flatten, findNode, parentChain, AMPLIFY_BC, SOPHIA_TOUR });
