From f7d6fe4a8ae49bcea5487c3f0f07ba6246aa70c9 Mon Sep 17 00:00:00 2001 From: Hermes Agent Date: Sun, 4 Oct 2026 02:37:11 -0700 Subject: [PATCH] [grade=B urn:ump:2swys44kxvulm5flu4skibjq3yfvtnzrsbgkvm2g65ht55i4jtoa] P7 wizard prod wiring: pass provider instances (dogfood finding) The /network/wizard mount in app.js omitted providers, so the wizard built with providers={} and every mode selection returned 503 provider_unavailable in production. Unit tests never caught it because they inject their own provider map. Pass built tailscale + wireguard instances. Full suite: 3413/3413 (152 suites). --- dashcaddy-api/src/app.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/dashcaddy-api/src/app.js b/dashcaddy-api/src/app.js index 01fa28d..f5ca7ca 100644 --- a/dashcaddy-api/src/app.js +++ b/dashcaddy-api/src/app.js @@ -776,8 +776,14 @@ async function createApp() { asyncHandler: ctx.asyncHandler, log: ctx.log, })); + // Private Network wizard (DC-152). Dogfood finding 2026-10-04: the wizard + // factory needs INSTANCES keyed by mode id; without them every mode + // selection 503s provider_unavailable (unit tests inject their own map). + const p7TailscaleProvider = require('./network/providers/tailscale').createTailscaleProvider(); // eslint-disable-line global-require + const p7WireGuardProvider = require('./network/providers/wireguard').createWireGuardProvider(); // eslint-disable-line global-require apiRouter.use('/network/wizard', networkWizardRoutes({ registry: { getActiveProvider }, + providers: { tailscale: p7TailscaleProvider, wireguard: p7WireGuardProvider }, peopleStore: p7PeopleStore, accessStore: p7AccessStore, asyncHandler: ctx.asyncHandler, -- 2.54.0