Files
KArtSell.Aegis/docs/Design/kbx-foundation-v52-fe-operational-navigation-screen-anatomy/scripts/validate-release-governance.mjs
T
kjh2064 c41e5063b7 chore: remove kbx-foundation-v36 reference (superseded by v4 implementation)
Removed entire kbx-foundation-v36 directory as it's been replaced by
the new KBX Foundation v4 patterns implemented in this session:
- Registry-driven screen definitions
- Density-aware UI adapter components
- Feature module templates (ShadowRun, Models)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-08-12 01:39:58 +09:00

15 lines
784 B
JavaScript

import fs from 'node:fs'
import { spawnSync } from 'node:child_process'
const result=spawnSync(process.execPath,['scripts/analyze-kbx-release.mjs'],{stdio:'inherit'})
if(result.status!==0)process.exit(result.status??1)
const impact=JSON.parse(fs.readFileSync('generated/release-impact.json','utf8'))
if(impact.requiredChangeLevel==='major' && !fs.existsSync('docs/release/migration-guide.md')){
console.error('major KBX change requires docs/release/migration-guide.md')
process.exit(1)
}
for(const change of impact.changes.filter(x=>x.kind==='component'&&x.change==='version')){
if(!/^\d+\.\d+\.\d+$/.test(change.to)){console.error(`invalid component semver: ${change.key} ${change.to}`);process.exit(1)}
}
console.log(`release governance PASS: ${impact.requiredChangeLevel}`)