test: guard employee edge security boundary

This commit is contained in:
pavlov346346-source 2026-09-11 07:53:03 +03:00
parent 7044d36ae6
commit 0c4830dcc6

View File

@ -0,0 +1,12 @@
import fs from 'node:fs';
const src=fs.readFileSync('supabase/functions/caterium-create-employee/index.ts','utf8');
let bad=0;const check=(v,m)=>{console.log(`${v?'OK':'FAIL'}: ${m}`);if(!v)bad++};
check(src.includes('npm:@supabase/supabase-js@2.116.0'),'Supabase JS is pinned');
check(!src.includes('"Access-Control-Allow-Origin": "*"'),'wildcard CORS is removed');
check(src.includes('https://app.caterium.ru')&&src.includes('WORKERS_DEV_ORIGIN'),'production and backup origins are allowlisted');
check(src.includes('origin_not_allowed'),'unknown browser origins fail closed');
check(src.includes('UUID_RE')&&src.includes('EMAIL_RE')&&src.includes('ALLOWED_ROLES'),'employee inputs are validated');
check(src.includes('console.error("[caterium-create-employee]"'),'internal errors remain server-side');
check(src.includes('employee_create_failed'),'unexpected failures return a safe public code');
check(!src.includes('return reply({ error: e instanceof Error ? e.message'),'raw exception messages are not returned');
if(bad)process.exit(1);