Initial curated chimera source from a8ae5b1db07fb49926c94585e2718e5130330974
This commit is contained in:
commit
c737a37f71
531 files changed
+119270
No files matched your search
@@ -0,0 +1,21 @@
|
||||
'use strict';
|
||||
const test = require('node:test');
|
||||
const assert = require('node:assert/strict');
|
||||
const fs = require('node:fs');
|
||||
const path = require('node:path');
|
||||
const { createSemanticEvidenceService } = require('../../src/services/semantic-evidence-service');
|
||||
test('manual evidence requires reason and bounded expiry', () => {
|
||||
const writes = []; const now = 1700000000000;
|
||||
const db = { runQuery: sql => sql.includes('FROM titles') ? [{ id: 7, title_id: 'PPSA00001' }] : [], runMutatingSqlWithParams: (sql, params) => writes.push(params) };
|
||||
const service = createSemanticEvidenceService(db, { now: () => now });
|
||||
assert.throws(() => service.record({ externalTitleId: 'PPSA00001', kind: 'version', value: '1.00', reason: 'short', expiresAt: now + 1000 }), /reason/);
|
||||
assert.throws(() => service.record({ externalTitleId: 'PPSA00001', kind: 'version', value: '1.00', reason: 'Verified manually', expiresAt: now + 31 * 86400000 }), /30 days/);
|
||||
assert.equal(service.record({ externalTitleId: 'PPSA00001', kind: 'version', value: '1.00', reason: 'Verified from settings screen', expiresAt: now + 86400000 }).advisoryOnly, true);
|
||||
assert.equal(writes.length, 1);
|
||||
});
|
||||
test('production callers omit legacy semantic writes', () => {
|
||||
const root = path.resolve(__dirname, '../..'); const read = file => fs.readFileSync(path.join(root, file), 'utf8');
|
||||
assert.match(read('src/database.js'), /Legacy semantic fields are read-only/);
|
||||
assert.doesNotMatch(['main.js','src/server/create-registry.js','src/ipc/backpork-gen.js'].map(read).join('\n'), /db\.updateGame\([^\n]+\{\s*(?:installed|backed_up)\s*:/);
|
||||
assert.doesNotMatch(read('renderer/modules/manage.js'), /fields:\s*\{\s*(?:installed|backed_up)\s*:/);
|
||||
});
|
||||
Reference in new issue
Block a user