Enforce release version consistency
This commit is contained in:
parent
22d245d2bb
commit
a37513fb61
@ -2,8 +2,12 @@ import fs from 'node:fs';
|
||||
import path from 'node:path';
|
||||
const root=process.cwd(), pub=path.join(root,'public');
|
||||
const read=p=>fs.readFileSync(path.join(pub,p),'utf8');
|
||||
const readRoot=p=>fs.readFileSync(path.join(root,p),'utf8');
|
||||
let bad=0;const check=(v,m)=>{console.log(`${v?'OK':'FAIL'}: ${m}`);if(!v)bad++};
|
||||
const index=read('index.html'),runtime=read('app-runtime.js'),sw=read('service-worker.js'),css=read('core/stability-v1760.css'),performance=read('core/performance.js'),ops=read('core/ops-ux-v1762.js'),hotfix=read('core/hotfix-v1763.js'),ux=read('core/ux-fixes-v1764.js');
|
||||
const pkg=JSON.parse(readRoot('package.json'));
|
||||
const lock=JSON.parse(readRoot('package-lock.json'));
|
||||
const releaseManifest=JSON.parse(readRoot('docs/release-manifest.json'));
|
||||
check(index.includes('core/stability-v1760.css'),'mobile stability stylesheet loaded');
|
||||
check(css.includes('overflow-x:hidden')&&css.includes('.cats'),'mobile overflow guard present');
|
||||
check(!index.includes('offer-gallery-data.js'),'blocking Base64 gallery absent');
|
||||
@ -31,4 +35,9 @@ check(ux.includes('persistOfferTemplate')&&ux.includes('clientOfferTemplateId')&
|
||||
check(ux.includes('sun-v1764-menu-icon')&&ux.includes('<svg'),'menu uses a styled SVG icon');
|
||||
check(fs.existsSync(path.join(root,'supabase/functions/caterium-create-employee/index.ts')),'employee Edge Function source is versioned');
|
||||
check(!/sb_secret_[A-Za-z0-9_-]{20,}|service_role\s*[:=]\s*["'][A-Za-z0-9._-]{30,}/i.test(index+runtime+performance+ops+hotfix+ux),'no client secret-like token');
|
||||
check(lock.version===pkg.version&&lock.packages?.['']?.version===pkg.version,'package.json and package-lock.json versions match');
|
||||
check(releaseManifest.version===`v${pkg.version}`,'release manifest version matches package.json');
|
||||
check(releaseManifest.channel==='production','release manifest channel is production');
|
||||
check(String(releaseManifest.pwaCache||'').includes('v17-6-4'),'release manifest points to current PWA cache');
|
||||
check(['17.6.2','17.6.3','17.6.4'].every(v=>fs.existsSync(path.join(root,`docs/releases/V${v}-CHANGES.txt`))),'release notes exist for v17.6.2 through v17.6.4');
|
||||
if(bad)process.exit(1);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user