'use strict'; const assert = require('node:assert/strict'); const fs = require('node:fs'); const path = require('node:path'); const test = require('node:test'); const root = path.resolve(__dirname, '../..'); test('A-060 applies deep Settings focus before revealing the destination page', () => { const source = fs.readFileSync(path.join(root, 'renderer/modules/navigation.js'), 'utf8'); const focus = source.indexOf('applyRouteFocus(route);', source.indexOf('async function navigate')); const reveal = source.indexOf('activatePage(route.page);', source.indexOf('async function navigate')); assert.ok(focus >= 0 && reveal >= 0 && focus < reveal, 'route focus must be applied before page activation'); assert.match(source, /applyReliabilityFocus\(route\.focus\)/); assert.match(source, /loadOperationsReliability\(\{ focus: route\.focus \}\)/); const operations = fs.readFileSync(path.join(root, 'renderer/modules/operations.js'), 'utf8'); assert.match(operations, /if \(focus === 'security'\)[\s\S]*renderSessions\(await window\.pork\.authSessions\(\)\);[\s\S]*return;/); }); test('P7 acceptance contracts remain mapped to concrete automated evidence', () => { const cacheTests = fs.readFileSync(path.join(root, 'test/server/ch-0701-media-cache.test.js'), 'utf8'); const importTests = fs.readFileSync(path.join(root, 'test/server/ch-0702-media-import.test.js'), 'utf8'); const disclosureTests = fs.readFileSync(path.join(root, 'test/server/ch-0703-expert-navigation.test.js'), 'utf8'); assert.match(importTests, /recoverable provider cover/); assert.match(cacheTests, /preserve pinned cache and imported originals/); assert.match(disclosureTests, /Expert mode off|Expert-only|Expert commands/i); });