54790db5c8
New cmd/uptop/config.go with appConfig struct + parseConfig() that reads all 25 UPTOP_* env vars in one place with defaults. Replaces ~120 lines of scattered os.Getenv calls in runServe. runServe now reads cfg := parseConfig() up front. ServerConfig built via cfg.serverConfig(). Uniform flag > env > default precedence for port/db-type/dsn via flag defaults from config.