24 lines
885 B
JavaScript
24 lines
885 B
JavaScript
|
|
#!/usr/bin/env node
|
||
|
|
import path from 'node:path';
|
||
|
|
import { fileURLToPath } from 'node:url';
|
||
|
|
import {
|
||
|
|
checkSessionBrokerCoverage,
|
||
|
|
formatSessionBrokerCoverageViolations,
|
||
|
|
SESSION_BROKER_PATCH2_FILES,
|
||
|
|
} from '../session-broker-coverage.mjs';
|
||
|
|
|
||
|
|
const rootDir = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..');
|
||
|
|
const violations = checkSessionBrokerCoverage(rootDir);
|
||
|
|
|
||
|
|
if (violations.length > 0) {
|
||
|
|
console.error('session broker coverage check failed:\n');
|
||
|
|
console.error(formatSessionBrokerCoverageViolations(violations));
|
||
|
|
console.error('\nSession ownership must go through session-broker.mjs (createSessionAccess / resolveSessionAccess).');
|
||
|
|
console.error(`Patch 2 modules: ${SESSION_BROKER_PATCH2_FILES.join(', ')}`);
|
||
|
|
process.exit(1);
|
||
|
|
}
|
||
|
|
|
||
|
|
console.log(
|
||
|
|
`session broker coverage ok (patch2=${SESSION_BROKER_PATCH2_FILES.length}, facade=session-broker.mjs)`,
|
||
|
|
);
|