const { test } = require('node:test'); const assert = require('node:assert/strict'); const { reconcile } = require('./investmoz-v2-source-reconciliation.cjs'); void test('validated official source and record survive missing citation fields', () => { const result = reconcile( { kind: 'investment_zones', record: { id: 'z', validation_status: 'validated', legal_source_id: 'l', }, }, { dossiers: [], legal_sources: [ { id: 'l', validation_status: 'validated', diploma: 'QA official fixture', }, ], }, ); assert.equal(result.existing_record_validation, 'validated'); assert.equal(result.existing_legal_validation, 'validated'); assert.equal(result.validation_revoked, false); assert.equal(result.traceability, 'official_reference_identified'); }); void test('missing source field is a traceability gap, not rejection', () => { const result = reconcile( { kind: 'projects', record: { id: 'p', metadata: JSON.stringify({ documented_location_sources: { 'x:primary': { source_quote: 'QA quotation', source_reference: 'QA dossier', applied_at: '2026-10-07', }, }, }), }, }, { dossiers: [], legal_sources: [] }, ); assert.equal( result.traceability, 'documentary_bridge_to_official_source_to_recover', ); assert.equal(result.documentary_relations[0].source_quote, 'QA quotation'); assert.equal(result.validation_revoked, false); assert.equal(result.calculation_activated, false); }); void test('promoter cannot become official through validated record', () => { const result = reconcile( { kind: 'investment_zones', record: { id: 'z', validation_status: 'validated', source_evidence: JSON.stringify([ { source_type: 'promoter', title: 'QA promoter' }, ]), }, }, { dossiers: [], legal_sources: [] }, ); assert.equal(result.existing_record_validation, 'validated'); assert.equal(result.official_references.length, 0); assert.equal(result.official_validation_newly_granted, false); }); void test('existing legal pending is preserved without invalidating consultation', () => { const result = reconcile( { kind: 'investment_zones', record: { id: 'z', validation_status: 'validated', legal_source_id: 'l', }, }, { dossiers: [], legal_sources: [{ id: 'l', validation_status: 'pending' }], }, ); assert.equal(result.existing_record_validation, 'validated'); assert.equal(result.existing_legal_validation, 'pending'); assert.equal(result.validation_revoked, false); });