// Integration ticks reflect the production worker: callers submit/observe; // Provisioning alone executes jobs between those reconciliation passes. let campaignFlight: Promise< Awaited> > | null = null; export function sweep() { if (campaignFlight) return campaignFlight; campaignFlight = (async () => { const caller = await import('../../src/lib/server/pipeline/sweep.js'); const { processProvisioning } = await import('../../src/lib/server/provisioning/worker.js'); await caller.sweep(); await processProvisioning(); return caller.sweep(); })().finally(() => { campaignFlight = null; }); return campaignFlight; } let betaFlight: Promise<{ processed: number }> | null = null; export function betaTick() { if (betaFlight) return betaFlight; betaFlight = (async () => { const caller = await import('../../src/lib/server/pipeline/beta-runner.js'); const { processProvisioning } = await import('../../src/lib/server/provisioning/worker.js'); await caller.betaTick(); await processProvisioning(); return caller.betaTick(); })().finally(() => { betaFlight = null; }); return betaFlight; } let maintenanceFlight: Promise | null = null; export function maintenanceTick(): Promise { if (maintenanceFlight) return maintenanceFlight; maintenanceFlight = (async () => { const caller = await import('../../src/lib/server/fleet/plutonium.js'); const { processProvisioning } = await import('../../src/lib/server/provisioning/worker.js'); await caller.maintenanceTick(); await processProvisioning(); await caller.maintenanceTick(); })().finally(() => { maintenanceFlight = null; }); return maintenanceFlight; }