{"product":"UmamiEdge","generatedAt":"2026-06-27T16:40:20.943Z","developerSteps":[{"phase":"01","title":"Prepare the local workspace","owner":"Developer","outcome":"A clean Next.js project running locally without legacy route leftovers.","evidence":"Homepage loads, /docs opens, and /api/health returns a JSON response."},{"phase":"02","title":"Configure environment variables","owner":"Developer + Supabase admin","outcome":"The app can connect to Supabase from browser, server routes, and admin-only workflows.","evidence":"Login page renders without missing configuration warnings."},{"phase":"03","title":"Run database compatibility fixes","owner":"Database owner","outcome":"Older Supabase databases are upgraded before the main schema and seed scripts run.","evidence":"No missing column, duplicate enum, function parameter, or not-null seed errors appear."},{"phase":"04","title":"Configure Supabase Auth","owner":"Platform admin","outcome":"Google, GitHub, and magic-link sign-in work locally and in production.","evidence":"Login with Google or GitHub returns to / by default and /login?next=/operator returns to /operator."},{"phase":"05","title":"Verify tenant onboarding","owner":"Developer + operator","outcome":"A signed-in user can create an organization, site, node, and node API key.","evidence":"Organization switcher appears in the header and node inventory shows the new node."},{"phase":"06","title":"Install and test the node agent","owner":"Infrastructure engineer","outcome":"A Linux node can send authenticated telemetry into the control plane.","evidence":"Telemetry events appear in /telemetry and the node heartbeat updates in /operator."},{"phase":"07","title":"Validate APIs and routing","owner":"API engineer","outcome":"Gateway routes, routing simulation, and readiness APIs respond predictably.","evidence":"Responses include model/runtime metadata, routing reasons, and readiness status."},{"phase":"08","title":"Deploy and verify production","owner":"Release owner","outcome":"Vercel production deployment is authenticated, monitored, and ready for pilot users.","evidence":"Production domain passes health, auth, dashboard, and API smoke tests."}],"userSteps":[{"phase":"01","title":"Sign in","owner":"Owner or operator","outcome":"You enter the platform with a valid Supabase session.","evidence":"Header shows your email and Sign out."},{"phase":"02","title":"Create the organization","owner":"Account owner","outcome":"A tenant is created for your team, customer, or pilot network.","evidence":"Organization appears in the switcher and onboarding proceeds to site setup."},{"phase":"03","title":"Add the first site","owner":"Operations lead","outcome":"A physical or commercial host location is registered.","evidence":"Site is available for node registration."},{"phase":"04","title":"Register the first node","owner":"Operator + infrastructure engineer","outcome":"A GPU or inference node exists in the registry with a secure telemetry key.","evidence":"Node appears under /nodes and the key prefix appears under /nodes/keys."},{"phase":"05","title":"Monitor daily operations","owner":"Operator","outcome":"The team can understand health, incidents, usage, and readiness from dashboards.","evidence":"Operators can identify online nodes, degraded nodes, critical incidents, and usage trends."},{"phase":"06","title":"Run customer and partner workflows","owner":"Customer-success lead","outcome":"Pilot customers, site owners, and partners have clear workflows.","evidence":"Each customer or partner has owner, milestone, risk, and next action."},{"phase":"07","title":"Prepare customer API access","owner":"Admin + customer engineer","outcome":"A customer can test the OpenAI-compatible gateway safely.","evidence":"Customer can run a model-list request and understands limits and support process."},{"phase":"08","title":"Complete go-live acceptance","owner":"Launch owner","outcome":"A pilot can move from demo to controlled production readiness.","evidence":"All critical gates have an owner, status, due date, and evidence link before launch."}]}