chore: log missing sources during reprocess

This commit is contained in:
chris 2025-12-08 15:52:39 -05:00
parent 467fcbffb7
commit d230e88bd1

View File

@ -131,7 +131,12 @@ async function processDoc(doc) {
const candidates = sourceCandidates(doc);
const sourceFile = await findExistingFile(candidates);
if (!sourceFile) {
return { status: 'missing-source', docId: doc._id, base: parseBaseName(doc) };
return {
status: 'missing-source',
docId: doc._id,
base: parseBaseName(doc),
candidates
};
}
const inputBuffer = await fsPromises.readFile(sourceFile);
@ -162,11 +167,15 @@ async function main() {
console.log(`Found ${docs.length} photo docs. APPLY=${APPLY ? 'yes' : 'no (dry run)'}`);
const results = { processed: 0, missing: 0 };
const missing = [];
for (const doc of docs) {
try {
const res = await processDoc(doc);
if (res.status === 'processed') results.processed++;
else results.missing++;
else {
results.missing++;
missing.push(res);
}
} catch (err) {
console.error(`Error processing doc ${doc._id}:`, err.message || err);
results.missing++;
@ -174,6 +183,13 @@ async function main() {
}
console.log(`Done. Processed: ${results.processed}. Skipped (no source/errors): ${results.missing}.`);
if (missing.length) {
const sample = missing.slice(0, 5);
console.log('Missing source examples (up to 5):');
for (const item of sample) {
console.log(`- doc ${item.docId} base "${item.base}" candidates: ${item.candidates.join(', ')}`);
}
}
await mongoose.disconnect();
}