Source identity
| Field | Recorded value |
|---|---|
| Source type | GitHub source |
| Original record | Janady13/thatdeveloperguy-website / scripts/check-private-leaks.ts |
| Date | Not specified in source |
| Repository | Janady13/thatdeveloperguy-website |
| Revision | 2bea2ebdff0e34494bff597d4fa9c8422a0c3a94 |
| Branch | main |
| Path or archive member | scripts/check-private-leaks.ts |
| Original SHA-256 | 1b8f1f5a6cab5ec939159e007b776a97a20adc66230d0f6f3266b7dd6fe8fd45 |
| Git blob SHA | 9fdf351da1a1f2ea2277ef2276ddee3c93774e31 |
| Reading-copy SHA-256 | 1b8f1f5a6cab5ec939159e007b776a97a20adc66230d0f6f3266b7dd6fe8fd45 |
Recovered source transcript
Download complete source text ↓10 lines · 0.8 KB
/** dist/site must contain only the approved public build. Fails the release on anything private. */
import { readdirSync, statSync } from 'node:fs';
import { join, relative, resolve } from 'node:path';
const site = resolve(import.meta.dirname, '../dist/site');
const walk = (dir: string): string[] => readdirSync(dir).flatMap(name => { const p = join(dir, name); return statSync(p).isDirectory() ? walk(p) : [p]; });
const files = walk(site).map(f => relative(site, f));
const banned = files.filter(f => /\.map$|^creative-source\/|^build-inputs\/|^content\/|^records\/|^evidence\/|\.md$|authoring-log|state-machine\.json|rive-manifest|\.env|manifest\.json$|__spa-fallback/.test(f));
if (banned.length) { console.error('private material in dist/site:\n' + banned.join('\n')); process.exit(1); }
console.log(`no private material in ${files.length} public files`);