import { CircuitListRepository } from "../src/db/repositories/circuit-list.repository.js"; import { ProjectRepository } from "../src/db/repositories/project.repository.js"; import { LegacyConsumerMigrationService } from "../src/domain/services/legacy-consumer-migration.service.js"; const projectRepository = new ProjectRepository(); const circuitListRepository = new CircuitListRepository(); const migrationService = new LegacyConsumerMigrationService(); async function run() { const projects = await projectRepository.list(); const reports = []; for (const project of projects) { const lists = await circuitListRepository.listByProject(project.id); for (const list of lists) { const report = await migrationService.migrateCircuitList(project.id, list.id); reports.push({ projectId: project.id, circuitListId: list.id, legacyConsumerCount: report.legacyConsumerCount, createdCircuitCount: report.createdCircuitCount, createdDeviceRowCount: report.createdDeviceRowCount, generatedIdentifiers: report.generatedIdentifiers.length, unassignedRows: report.unassignedRows.length, }); } } console.log("Legacy consumer migration summary:"); console.table(reports); } run().catch((error) => { console.error("Legacy consumer migration failed:", error); process.exit(1); });