Required-env failures currently throw raw one-line errors scattered through server.ts (REDIS_URL at :422, PUBLIC_API_ORIGIN at :604, SELFHOST_SETUP_TOKEN at :595). There is no single preflight that validates the whole required set at once, so operators fix one var, restart, hit the next. Add a pure preflightEnv(env): {ok, problems[]} that checks the required/conditionally-required vars (REDIS_URL always; PUBLIC_API_ORIGIN+SELFHOST_SETUP_TOKEN when no GITHUB_APP_ID; DATABASE_URL well-formed when set) and returns every problem with a one-line fix hint.
Deliverables
References
src/server.ts:422
src/server.ts:595
src/server.ts:604
src/selfhost/ai-config.ts:31
size: M · gittensor:feature
Required-env failures currently throw raw one-line errors scattered through server.ts (REDIS_URL at :422, PUBLIC_API_ORIGIN at :604, SELFHOST_SETUP_TOKEN at :595). There is no single preflight that validates the whole required set at once, so operators fix one var, restart, hit the next. Add a pure preflightEnv(env): {ok, problems[]} that checks the required/conditionally-required vars (REDIS_URL always; PUBLIC_API_ORIGIN+SELFHOST_SETUP_TOKEN when no GITHUB_APP_ID; DATABASE_URL well-formed when set) and returns every problem with a one-line fix hint.
Deliverables
References
src/server.ts:422src/server.ts:595src/server.ts:604src/selfhost/ai-config.ts:31size: M · gittensor:feature