/
home
/
techb158
/
trello.abdallabala.com
/
scripts
/
/home/techb158/trello.abdallabala.com/scripts
mkdir
upload
Name
Size
Mode
Actions
smoke-test.mjs
1315
0666
edit
dl
rm
Edit:
/home/techb158/trello.abdallabala.com/scripts/smoke-test.mjs
(1315B)
import fs from 'node:fs/promises'; const base = process.env.API_BASE || 'http://localhost:3000'; const samplePath = new URL('../samples/risk-assessment.json', import.meta.url); const payload = JSON.parse(await fs.readFile(samplePath, 'utf8')); async function request(path, options = {}) { const response = await fetch(`${base}${path}`, { headers: { 'Content-Type': 'application/json', ...(options.headers || {}) }, ...options }); const body = await response.text(); if (!response.ok) throw new Error(`${response.status} ${response.statusText}: ${body}`); return body ? JSON.parse(body) : null; } const health = await request('/api/health'); console.log('health:', health); const scored = await request('/api/risks/score', { method: 'POST', body: JSON.stringify(payload) }); console.log('score:', scored.score, scored.status, scored.gate.deploymentReady ? 'gate-ready' : 'gate-blocked'); const saved = await request('/api/boards/demo-board/cards/demo-card/assessments', { method: 'POST', body: JSON.stringify(payload) }); console.log('saved assessment:', saved.id); const summary = await request('/api/boards/demo-board/summary'); console.log('board summary:', { cardCount: summary.cardCount, averageScore: summary.averageScore, deploymentBlocked: summary.deploymentBlocked });
Save
cmd:
run