refactor: update worker commands and add new scripts for API rebuilding and queue feeding
This commit is contained in:
@@ -0,0 +1,81 @@
|
||||
const fs = require("fs");
|
||||
const path = require("path");
|
||||
|
||||
const { getArchiveDb, getIntelligenceDb, runMigrations, runColumnMigrations, seedCompanies } = require("./db");
|
||||
const { runQueueFeeder } = require("./queueFeeder");
|
||||
const { runAugorWorker } = require("./augorWorker");
|
||||
const { ensureCompanyEmbeddings } = require("./embeddings");
|
||||
const { runConsolidationWorker } = require("./consolidationWorker");
|
||||
const { runGraphWorker } = require("./graphWorker");
|
||||
const { runSignalWorker } = require("./signalWorker");
|
||||
|
||||
|
||||
const configPath = path.resolve(__dirname, "../config.json");
|
||||
const configDir = path.dirname(configPath);
|
||||
const rawConfig = JSON.parse(fs.readFileSync(configPath, "utf8"));
|
||||
|
||||
function resolvePath(p, fallback) {
|
||||
if (!p) return fallback;
|
||||
return path.isAbsolute(p) ? p : path.resolve(configDir, p);
|
||||
}
|
||||
|
||||
const config = {
|
||||
duriin_db: process.env.DURIIN_DB || resolvePath(rawConfig.duriin_db, path.resolve(configDir, "archive.sqlite")),
|
||||
intelligence_db: process.env.INTELLIGENCE_DB || resolvePath(rawConfig.intelligence_db, path.resolve(configDir, "intelligence.sqlite")),
|
||||
llm: rawConfig.llm || {},
|
||||
workers: rawConfig.workers || {},
|
||||
openRouter: rawConfig.openRouter || {},
|
||||
intelligence: rawConfig.intelligence || {},
|
||||
};
|
||||
|
||||
console.log("[intelligence] starting up");
|
||||
console.log(`[intelligence] archive: ${config.duriin_db}`);
|
||||
console.log(`[intelligence] intelligence: ${config.intelligence_db}`);
|
||||
|
||||
const archiveDb = getArchiveDb(config.duriin_db);
|
||||
const intelligenceDb = getIntelligenceDb(config.intelligence_db);
|
||||
|
||||
runMigrations(intelligenceDb);
|
||||
runColumnMigrations(intelligenceDb);
|
||||
seedCompanies(intelligenceDb);
|
||||
|
||||
ensureCompanyEmbeddings(intelligenceDb, config.openRouter).then(() => {
|
||||
console.log("[intelligence] company embeddings ready");
|
||||
}).catch(err => {
|
||||
console.error("[intelligence] company embedding generation failed:", err.message);
|
||||
});
|
||||
|
||||
runQueueFeeder(archiveDb, intelligenceDb, config).catch(err => {
|
||||
console.error("[feeder] fatal:", err);
|
||||
process.exit(1);
|
||||
});
|
||||
|
||||
runAugorWorker(archiveDb, intelligenceDb, config).catch(err => {
|
||||
console.error("[augor] fatal:", err);
|
||||
process.exit(1);
|
||||
});
|
||||
|
||||
runConsolidationWorker(archiveDb, intelligenceDb, config).catch(err => {
|
||||
console.error("[consolidation] fatal:", err);
|
||||
process.exit(1);
|
||||
});
|
||||
|
||||
runGraphWorker(archiveDb, intelligenceDb, config).catch(err => {
|
||||
console.error("[graph] fatal:", err);
|
||||
process.exit(1);
|
||||
});
|
||||
|
||||
runSignalWorker(archiveDb, intelligenceDb, config).catch(err => {
|
||||
console.error("[signal] fatal:", err);
|
||||
process.exit(1);
|
||||
});
|
||||
|
||||
process.on("SIGINT", () => {
|
||||
console.log("[intelligence] shutting down");
|
||||
process.exit(0);
|
||||
});
|
||||
|
||||
process.on("SIGTERM", () => {
|
||||
console.log("[intelligence] shutting down");
|
||||
process.exit(0);
|
||||
});
|
||||
Reference in New Issue
Block a user