v0.4.0 — landing page and hosted preview
ATLAS now explains itself. The root route was previously the goal-submission view, so anyone opening the deployment landed on an unexplained text input; and because the dashboard talks to a local backend, every screen behind it rendered empty.
Try it: https://atlas-ra.vercel.app
Added
Landing page at / — why the project exists (stateless, unverified, unbounded agents), the five-checkpoint task lifecycle, a six-layer architecture diagram with the provider protocol called out as the seam, a capabilities grid, the engineering gates, and a local-first quickstart. Includes an animated replay of a real event stream: task_created → routed → skill_matched → message_delta → review → critic approve → done.
Hosted-preview mode — when the dashboard cannot reach a backend it serves sample tasks, skills, approvals, and events behind a notice stating plainly that the data is illustrative and the controls are inert. Detection is per-request rather than an environment flag, so a local run with atlas serve up shows real data with no configuration, and starting the server mid-session swaps the samples out without a reload.
Changed
- Goal submission moved from
/to/console; dashboard screens now live in an(app)route group behind the existing sidebar. - Dashboard styling moved onto CSS custom properties wired into Tailwind, replacing ad-hoc
zinc-*classes.
Fixed
GET /tasks/{task_id}returned HTTP 200 with an{"error": "not found"}body for an unknown id; now returns 404.POST /approvals/{request_id}raised a bareKeyErrorfor an unknown id, surfacing as an unhandled 500; now returns 404.- Hero stats paired an
sr-only<dt>with a visible<dd>holding the same text, so screen readers announced every label twice. backend/uv.lockhad silently stayed at 0.3.1 through the entire v0.3.2 cycle.
Full changelog: https://github.com/harshitwandhare/atlas-ra/blob/main/CHANGELOG.md