fix(cli): avoid AppRuntime re-entry for network options (#26052)

This commit is contained in:
Kit Langton
2026-05-06 11:02:08 -04:00
committed by GitHub
parent 889f979c0b
commit 63a175b50d
4 changed files with 8 additions and 8 deletions

View File

@@ -1,6 +1,6 @@
import type { Argv, InferredOptionTypes } from "yargs"
import { Config } from "@/config/config"
import { AppRuntime } from "@/effect/app-runtime"
import { Effect } from "effect"
const options = {
port: {
@@ -36,10 +36,10 @@ export type NetworkOptions = InferredOptionTypes<typeof options>
export function withNetworkOptions<T>(yargs: Argv<T>) {
return yargs.options(options)
}
export async function resolveNetworkOptions(args: NetworkOptions) {
const config = await AppRuntime.runPromise(Config.Service.use((cfg) => cfg.getGlobal()))
export const resolveNetworkOptions = Effect.fn("Cli.resolveNetworkOptions")(function* (args: NetworkOptions) {
const config = yield* Config.Service.use((cfg) => cfg.getGlobal())
return resolveNetworkOptionsNoConfig(args, config)
}
})
export function resolveNetworkOptionsNoConfig(args: NetworkOptions, config?: Config.Info) {
const portExplicitlySet = process.argv.includes("--port")