c41e5063b7
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>
18 lines
422 B
TypeScript
18 lines
422 B
TypeScript
import { createHash, randomUUID } from 'node:crypto'
|
|
import { readFile } from 'node:fs/promises'
|
|
|
|
export type KbxScenarioEvidenceArtifact = {
|
|
type: string
|
|
path: string
|
|
sha256?: string
|
|
}
|
|
|
|
export async function sha256File(path: string) {
|
|
const bytes = await readFile(path)
|
|
return createHash('sha256').update(bytes).digest('hex')
|
|
}
|
|
|
|
export function createScenarioRunId() {
|
|
return `kbx-scenario-${randomUUID()}`
|
|
}
|