import { registerAs } from "@nestjs/config"; export default registerAs("app", () => ({ port: parseInt(process.env.PORT ?? "3003", 10), /** * Shared secret for service-to-service auth (apps -> /payments/*, payment -> mark-paid). * Required in production; in development an empty value disables the guard with a warning. * TODO: integrate @tria-plc IAM / mTLS as the long-term mechanism (docs/payment-service ยง14). */ serviceAuthToken: process.env.SERVICE_AUTH_TOKEN ?? "", reconciliation: { /** How often the stale-intent sweep runs. */ // TODO(demo): revert to the env-driven line below after the demo. Temporarily FORCED to 30s // here so the .env (RECONCILE_SWEEP_INTERVAL_MS) cannot override it. // sweepIntervalMs: parseInt(process.env.RECONCILE_SWEEP_INTERVAL_MS ?? "60000", 10), sweepIntervalMs: 30_000, /** An intent is "stale" when non-terminal and untouched for this long. */ staleAfterMs: parseInt(process.env.RECONCILE_STALE_AFTER_MS ?? "60000", 10), batchSize: parseInt(process.env.RECONCILE_BATCH_SIZE ?? "20", 10), }, }));