#!/usr/bin/env node /** * CI: canonical personal-drive special paths must stay documented. */ import fs from 'node:fs' import path from 'node:path' import process from 'node:process' import { fileURLToPath } from 'node:url' const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..') const paths = [ '/.bare/account', '/.bare/vault/', '/.bare-os/acct/', '/.bare-os/migration/legacy-root-v1.json', 'vault-rotation-audit.ndjson' ] const files = [ path.join(root, 'docs/architecture/POSIX_DECLARED_PROFILE.md'), path.join(root, 'handbook/04-the-booter-runtime.md'), path.join(root, 'handbook/05-identity-vault-and-hdms.md'), path.join(root, 'docs/reference/environment-and-posix-appendix.md') ] function main() { const blob = files.map((f) => fs.readFileSync(f, 'utf8')).join('\n') for (const p of paths) { if (!blob.includes(p)) { console.error( 'verify-personal-drive-path-policy: missing documentation for:', p ) process.exit(1) } } console.log( 'verify-personal-drive-path-policy:', paths.length, 'path tokens OK' ) } main()