inferrail

0017. The dashboard lives in app/ in this repository, not a sibling repo

Status

Accepted

Context

MISSION.md’s v0.4.0 requires a React + Vite web dashboard and explicitly flags one open architectural question: build it in a new app/ directory inside this repository, or in a sibling repository (inferrail-app)? The v0.3.0 closing session deliberately did not guess at this — it affects repo structure, CI, and release tooling going forward, so PROGRESS.md left it for the founder to decide via ADR rather than defaulting silently.

Founder decision: app/ in this repository.

Decision

The dashboard is a TypeScript + React + Vite single-page app under app/ at the repository root, versioned and released alongside the Python package rather than as an independently-versioned sibling project.

Why same-repo over a sibling repo:

How it’s structured and served:

This is unit 1 of v0.4.0, not the whole milestone. Per the session protocol (MISSION.md step 2: “pick the smallest next unit”), this pass scaffolds the app, wires real serving/auth, and ships one working screen (Live Feed, reading the real SSE tail). The remaining screens (Work, Budgets, Recover, Connect, Settings) are separate, later units against the same scaffold — see PROGRESS.md for exactly what’s done vs. not yet.

Consequences