BrainDrive Update System

@DJJones — update from today’s test pass against feature/braindrive-update-notification-library-migration.

What’s working: The sidebar indicator lights up correctly on a fresh-owner install (26.4.13 → 26.4.20).

Two findings led to spec updates:

1. Auth bug in update-adapter.ts (fix staged locally). Clicking “Update available” was 401’ing on POST /api/updates/conversation/start. The adapter uses plain fetch without the Bearer token, while other client routes go through authenticatedFetch which handles auth correctly. Fix is a one-import swap plus two function call changes — Dave W has it staged locally. Let him know if you want it pushed to your branch or if you’d rather do the fix yourself.

2. BD+1 rejected the update context as “not my domain.” Once auth was fixed, the update conversation actually started — but BD+1 pushed back on the bootstrap JSON because the base AGENT.md has no concept of update conversations as part of the advisor role. Design decisions for how to fix are captured as D18–D26 in the spec.

Review drafts (in Library — not pushed to your branch, so you can review before deciding how to land):

Two new open questions for you:

  • OQ-5 — bootstrap context needs current_content + proposed_content per migration item so BD+1 can reason about the actual diff per owner (decided in D22/D23)
  • OQ-6 — skill attachment wiring: seed update-handler into the starter pack + register it on the BD+1 project’s skill list

Let us know what you think — happy to walk through it on the Friday call if easier.