Initial curated chimera source from a8ae5b1db07fb49926c94585e2718e5130330974

This commit is contained in:
Public Source Publisher committed 2026-10-01 01:38:08 +02:00
commit c737a37f71
531 files changed
+119270

No files matched your search

@@ -0,0 +1,27 @@
'use strict';
const assert = require('node:assert/strict');
const fs = require('node:fs');
const os = require('node:os');
const path = require('node:path');
const test = require('node:test');
const database = require('../../src/database');
const { createSqliteTrophyProgressionPlanRepository } = require('../../src/services/trophy-progression-planner-service');
test('production database stores immutable synthetic progression plans', async t => {
const root = fs.mkdtempSync(path.join(os.tmpdir(), 'chimera-progression-'));
t.after(() => { database.close(); fs.rmSync(root, { recursive: true, force: true }); });
database.configure({ dataDir: root, logger: { info() {}, warn() {}, error() {} } });
await database.initialize();
const repository = createSqliteTrophyProgressionPlanRepository({ db: database });
const plan = {
id: `trophy-progression-${'a'.repeat(64)}`, planSha256: 'a'.repeat(64), schemaVersion: 1,
mode: 'synthetic_unlock', synthetic: true, catalog: { key: 'np:11111111111111111111111111111111', revision: 'one', sha256: 'b'.repeat(64), title: 'Fixture' },
createdAt: 1_800_000_000_000, items: [{ trophyId: 1, proposedEarnedDateTime: '2026-01-01T00:00:00.000Z' }],
};
const saved = repository.save(plan);
assert.equal(saved.id, plan.id);
assert.equal(repository.get(plan.id).catalog.title, 'Fixture');
assert.equal(repository.list({ limit: 10 }).length, 1);
assert.throws(() => database.runMutatingSqlWithParams('UPDATE trophy_progression_plans SET mode=@mode', { mode: 'timestamp_edit' }), /immutable/);
});