harden state durability and disable destructive snapshot sync

This commit is contained in:
Codex
2026-02-18 15:24:49 +00:00
parent 331b66506a
commit 4814342156
6 changed files with 123 additions and 35 deletions

View File

@@ -49,6 +49,7 @@ function boolFromEnv(name, fallback) {
}
const parsed = {
nodeEnv: strFromEnv("NODE_ENV", "development"),
port: intFromEnv("PORT", 3000),
logLevel: strFromEnv("LOG_LEVEL", "info"),
appBaseUrl: strFromEnv("APP_BASE_URL", "http://localhost:3000"),
@@ -100,7 +101,13 @@ const parsed = {
},
};
parsed.allowInMemoryStateFallback = boolFromEnv(
"ALLOW_IN_MEMORY_STATE_FALLBACK",
parsed.nodeEnv !== "production",
);
const ConfigSchema = z.object({
nodeEnv: z.string().min(1),
port: z.number().int().positive(),
logLevel: z.enum(["fatal", "error", "warn", "info", "debug", "trace", "silent"]),
appBaseUrl: z.string().min(1),
@@ -150,6 +157,7 @@ const ConfigSchema = z.object({
stepCredits: z.number().int().positive(),
maxCharsPerArticle: z.number().int().positive(),
}),
allowInMemoryStateFallback: z.boolean(),
});
const config = ConfigSchema.parse(parsed);