Skip to main content
← PROGRAM ARCHIVEFULL ARCHIVE RECORD
ALLOWLISTED DURABLE SOURCE

build013.spec.ts

tests/build013.spec.ts

This is the retained record itself—not a chat summary. It is exposed because it materially documents the research, method, evidence, audit, production, planning or release history of The 100.

import {test,expect} from '@playwright/test';
test.describe('Build 013 AI workflow scanner',()=>{
 test('complete workflow contains mapped risks',async({page})=>{await page.goto('/100-builds/013/a');await expect(page.getByRole('heading',{name:'RISK CONTAINED'})).toBeVisible();await expect(page.getByText(/INHERITED BUILD 012 STATE/)).toBeVisible();await expect(page.getByText('CONTROLLED USE',{exact:true})).toBeVisible();});
 test('removing action controls exposes uncontrolled propagation',async({page})=>{await page.goto('/100-builds/013/a');await page.getByRole('button',{name:'REMOVE ACTION CONTROLS'}).click();await expect(page.getByRole('heading',{name:'UNCONTROLLED PROPAGATION'})).toBeVisible();await expect(page.getByText(/Notice and benefit action: define owner, control, stop authority, and monitoring/)).toBeVisible();});
 test('reset exposes a truthful empty control state',async({page})=>{await page.goto('/100-builds/013/a');await page.getByRole('button',{name:'RESET / START EMPTY'}).click();await expect(page.getByRole('heading',{name:'UNCONTROLLED PROPAGATION'})).toBeVisible();await expect(page.getByText(/No workflow or personal data is transmitted/)).toBeVisible();});
 test('exports explicit workflow scan',async({page})=>{await page.goto('/100-builds/013/a');const dl=page.waitForEvent('download');await page.getByRole('button',{name:'EXPORT WORKFLOW SCAN'}).click();expect((await dl).suggestedFilename()).toBe('ai-workflow-consequence-scan.json');});
 test('canonical room is active and 015 remains planned',async({page})=>{await page.goto('/100-builds/013');await expect(page.getByText('BUILD 013 / 100 · IN THE LAB')).toBeVisible();await expect(page.getByRole('link',{name:/OPEN THE TOOL/})).toHaveAttribute('href',/\/100-builds\/013\/a\/?$/);await page.goto('/100-builds/015');await expect(page.getByText('BUILD 015 / 100 · COMING NEXT')).toBeVisible();});
 test('functional artifact fits 320 CSS pixels',async({page})=>{await page.setViewportSize({width:320,height:800});await page.goto('/100-builds/013/a');await expect(page.getByRole('button',{name:'EXPORT WORKFLOW SCAN'})).toBeVisible();expect(await page.evaluate(()=>document.documentElement.scrollWidth>document.documentElement.clientWidth)).toBe(false);});
});
test.describe('Build 013 risk circuit',()=>{
 test('breaking a control lights the downstream path',async({page})=>{await page.goto('/100-builds/013/b');await page.getByRole('button',{name:'BREAK MODEL CONTROL'}).click();await expect(page.getByText('UNCONTROLLED PROPAGATION',{exact:true})).toBeVisible();await expect(page.getByRole('heading',{name:'ONE MISSING CONTROL BECOMES A DOWNSTREAM CONDITION.'})).toBeVisible();});
 test('complete circuit retains non-approval boundary',async({page})=>{await page.goto('/100-builds/013/b');await expect(page.getByText('RISK CONTAINED',{exact:true})).toBeVisible();await expect(page.getByText(/does not calculate real-world probability or approve deployment/)).toBeVisible();});
});