fix: expose incomplete AI analysis and track source versions
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
import test from 'node:test';
|
||||
import assert from 'node:assert/strict';
|
||||
import {qualifyAnalysis} from '../server/analysis-quality.mjs';
|
||||
test('truncated input and repaired output are partial, never complete analysis',()=>{
|
||||
const r=qualifyAnalysis({itemsAndSpecs:[{name:'Kit'}]},{text:'a'.repeat(100),limit:50,expectedItems:100,repaired:true});
|
||||
assert.equal(r.sourceReview.status,'partial');assert.equal(r.sourceReview.issues.length,3);
|
||||
assert.equal(r.sourceReview.analyzedCharacters,50);
|
||||
assert.equal(r.sourceReview.sections.documentChecklist,'not_extracted');
|
||||
});
|
||||
test('source versions change with content and empty sections do not claim absence',()=>{
|
||||
const a=qualifyAnalysis({documentChecklist:[]},{text:'kaynak A'});
|
||||
const b=qualifyAnalysis({documentChecklist:[]},{text:'kaynak B'});
|
||||
assert.notEqual(a.documentVersion,b.documentVersion);
|
||||
assert.equal(a.sourceReview.status,'review_required');
|
||||
assert.equal(a.sourceReview.sections.documentChecklist,'not_extracted');
|
||||
assert.throws(()=>qualifyAnalysis({itemsAndSpecs:'kalem yok'}));
|
||||
});
|
||||
Reference in New Issue
Block a user