Files
reporting-governance-plugin/plugins/reporting-governance/test/package-structure.test.mjs

37 lines
1.2 KiB
JavaScript

import test from 'node:test';
import assert from 'node:assert/strict';
import fs from 'node:fs';
import path from 'node:path';
import { fileURLToPath } from 'node:url';
const __dirname = path.dirname(fileURLToPath(import.meta.url));
const packageRoot = path.resolve(__dirname, '..');
const requiredPaths = [
'README.md',
'package.json',
'src/index.mjs',
'src/core',
'src/adapters',
'src/adapters/watchdog.mjs',
'src/adapters/dispatcher.mjs',
'src/adapters/bridge-supervisor.mjs',
'src/adapters/sender-binding.mjs',
'src/adapters/orchestrator.mjs',
'src/storage',
'src/storage/profile-artifact.mjs',
'src/storage/decision-artifact.mjs',
'src/storage/decision-store.mjs',
'src/reference/openclaw-watchdog-chain.md',
'capabilities/openclaw-watchdog-reference.json',
'examples/openclaw-watchdog-reference.descriptor.example.json',
'profiles/strict-manager-mode.profile.json'
];
test('reporting-governance package skeleton paths exist', () => {
for (const relativePath of requiredPaths) {
const fullPath = path.join(packageRoot, relativePath);
assert.equal(fs.existsSync(fullPath), true, `expected path to exist: ${relativePath}`);
}
});