Files
AIclinicalresearch/backend/scripts/run_iit_qc_once.ts
HaHafeng a666649fd4 feat(iit): harden QC pipeline consistency and release artifacts
Implement IIT quality workflow hardening across eQuery deduplication, guard metadata validation, timeline/readability improvements, and chat evidence fallbacks, then synchronize release and development documentation for deployment handoff.

Includes migration/scripts for open eQuery dedupe guards, orchestration/status semantics, report/tool readability fixes, and updated module status plus deployment checklist.

Made-with: Cursor
2026-03-08 21:54:35 +08:00

40 lines
1.1 KiB
TypeScript

import { QcExecutor } from '../src/modules/iit-manager/engines/QcExecutor.js';
import { dailyQcOrchestrator } from '../src/modules/iit-manager/services/DailyQcOrchestrator.js';
async function main() {
const projectId = process.argv[2];
const skipPush = process.argv.includes('--skip-push');
if (!projectId) {
throw new Error('Usage: npx tsx scripts/run_iit_qc_once.ts <projectId> [--skip-push]');
}
const executor = new QcExecutor(projectId);
const batch = await executor.executeBatch({
triggeredBy: 'manual',
skipSoftRules: true,
});
const orchestrate = await dailyQcOrchestrator.orchestrate(projectId, { skipPush });
console.log(JSON.stringify({
projectId,
batch: {
totalRecords: batch.totalRecords,
totalEvents: batch.totalEvents,
passed: batch.passed,
failed: batch.failed,
warnings: batch.warnings,
fieldStatusWrites: batch.fieldStatusWrites,
executionTimeMs: batch.executionTimeMs,
},
orchestrate,
skipPush,
}, null, 2));
}
main().catch((e) => {
console.error(e);
process.exit(1);
});