diff --git a/.tours/01-primary-user-flow.tour b/.tours/01-primary-user-flow.tour index ab3645a..3aad758 100644 --- a/.tours/01-primary-user-flow.tour +++ b/.tours/01-primary-user-flow.tour @@ -29,9 +29,9 @@ }, { "file": "src/features/node-agent/components/NodeAgentThread.tsx", - "line": 91, + "line": 126, "anchor": "" "" +node e2e/current-consumer-recovery-proof.mjs "" "" +``` + +Separate offline frame/durable/SQLite runs completed. SQLite closed/reopened the retained database and replayed the same frame with one journal entry; lease exclusion, expiry recovery and fencing passed. Use `nodeagent:frame:smoke`, `nodeagent:durable:smoke` and `nodeagent:sqlite:smoke` for that separate library integration. Their fixture confidence is not an external provider measurement. + +Remaining limits are explicit. Source-header text still overflows by 21 pixels in the 390-pixel, doubled-computed-text fixture; the changed recovery/composer regions fit and remain visible. The text fixture is not an operating-system zoom certificate. The source graph still needs its own visual/readability assessment. There is no React render-error boundary or New Thread control. Full visual, responsive, accessibility and performance grades remain null. Source full audit has nine development advisories, including one critical; the locked generated app has four development advisories, three high and one low. Both recorded production-only audits have zero findings. Those full-audit findings remain open. + +No provider, Convex, login, external-host hook, deployment or Pi capability was activated. The historical dependency checkpoint and previous promotion records retain their original outcomes. This handoff closes the bounded offline consumer and response-recovery implementation for independent review; it does not claim complete repository readiness. + + +Independent replay adds130 checks/34 captures, including late Stop after an actual completed tool result and two distinct failed-response Retry identities. Fresh41 tests, typecheck and citations pass. The original publication judgment records60 line-ending mismatches; packet-local attributes preserve those exact raw bytes before commit. Existing header overflow, graph readability, development advisories, browser reset and provider/durability limits remain unchanged. This local source/installed proof does not certify deployment or the whole product. diff --git a/docs/START_HERE.md b/docs/START_HERE.md index 0824d47..769adaf 100644 --- a/docs/START_HERE.md +++ b/docs/START_HERE.md @@ -116,7 +116,7 @@ send button is what starts the agent. **Core code** ```tsx -// src/features/node-agent/components/NodeAgentThread.tsx:84-93 +// src/features/node-agent/components/NodeAgentThread.tsx:118-135 @@ -130,9 +130,11 @@ actually start. **Input** — typed text, or a click on a suggestion chip. **Output** — a user message appended to the thread; assistant-ui then calls the adapter in Step 4. -**Failure behavior** — the send button is disabled while a run is in flight. -There is no cancel button; that is a known open defect (D3 in -`promotion/PROMOTION_LOG.md`). +**Failure behavior** — while a response runs, Send gives way to Stop response. +Stop ends its display updates and preserves completed work; it does not undo +already computed or external work. Incomplete responses offer explicit Retry +through the existing runtime. Retry is never automatic; this local demo does +not certify provider cancellation. **Next** — Step 4 receives the message. --- @@ -236,7 +238,7 @@ The four names are `collect_context`, `search_synthesize`, **Core code** ```ts -// registration — src/features/node-agent/components/toolUIs.tsx:55 +// registration — src/features/node-agent/components/toolUIs.tsx:61 const ContextToolUI = makeAssistantToolUI<{ focus: string }, ContextToolResult>({ toolName: "collect_context", @@ -345,19 +347,24 @@ function safe(step: AgentStep, fn: () => T, fallback: T): T { } ``` -**Be told this plainly, because the UI does not tell you:** - -- **There is no error state on screen.** `nodeAgentChatAdapter.run` has no - `catch`, and no component in the tree is a React error boundary. A throw inside - a rendered child unmounts the whole app to a blank page. That is exactly how - defect D1 presented. -- **There is no stop, cancel, or retry.** While a run is in flight the page has - one button, `Send`, and it is disabled. A user whose run misbehaves can only - reload, which discards the thread. Open as **D3**. +**Response recovery and remaining limits:** + +- **Adapter failures are visible.** The existing assistant-ui runtime marks the + response incomplete; the thread presents a constant failure message, marks + unfinished tool cards failed, and offers explicit Retry. Earlier results stay. +- **Stop response ends display updates.** It preserves completed work and cannot + undo computation already performed by the local adapter or external work. + Retry replaces the current response through the native runtime, runs only on + an explicit action, and rejects duplicate immediate activation. +- **Rendering exceptions remain separate.** There is still no React render-error + boundary; a throw in a rendered child can unmount the app, as defect D1 showed. - **"New Thread" does not exist here.** This runtime holds a single thread. + Reload discards the browser conversation. -These are recorded, with reproductions, in `promotion/PROMOTION_LOG.md` and -scored in `promotion/PRODUCT_GOAL.md` (conditions 2 and 5, both FAIL). +`promotion/PROMOTION_LOG.md` and `promotion/PRODUCT_GOAL.md` preserve their +historical defect reproductions and grades. Read `HANDOFF.md` for the current +D3 proof and remaining limits; no provider cancellation or full UI grade is +certified by this local response-recovery work. **Input** — a step body that may throw. **Output** — the fallback value, with the step marked `error`. @@ -420,7 +427,7 @@ byte-stable. | Change how sources are ranked | `searchAndSynthesize.ts` (`W_GROUNDING`, `W_RETRIEVAL`) | `npm test` | | Change how a tool card looks | `components/toolUIs.tsx` | `npm run dev` | | Add a fifth step | `nodeAgentRuntime.ts`, then a name in `toolUIs.tsx` **and** `nodeAgentChatAdapter.ts` | `npm test && npm run e2e:journey` | -| Give the app an error state | `NodeAgentDemoApp.tsx` (add a boundary) + `nodeAgentChatAdapter.ts` (add a catch) | `npm run e2e:journey` | +| Change response recovery | `components/NodeAgentThread.tsx` + `components/toolUIs.tsx` | `node e2e/current-consumer-recovery-proof.mjs "" ""` | Adding a step means touching three files, and the two name lists in Step 6 must agree. That is the sharpest edge in this codebase. diff --git a/e2e/current-consumer-proof.mjs b/e2e/current-consumer-proof.mjs new file mode 100644 index 0000000..684a931 --- /dev/null +++ b/e2e/current-consumer-proof.mjs @@ -0,0 +1,60 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import { createServer as createPortProbe } from 'node:net'; +import { chromium } from 'playwright'; +import { createServer } from 'vite'; + +// The supplied app must be the retained output of the installed package CLI. +// The actual adapter iterator is held in browser memory only to settle running-frame captures. +const source = path.resolve(import.meta.dirname, '..'); +const consumer = path.resolve(process.argv[2] ?? ''); +const evidence = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide generated consumer path and NEW evidence directory'); +await mkdir(evidence, { recursive:false }); +const sha = value => createHash('sha256').update(value).digest('hex'); +const tracked = execFileSync('git',['ls-files','-z'],{cwd:source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(Boolean).filter(file=>!path.basename(file).startsWith('.env')); +tracked.push('e2e/current-consumer-proof.mjs','examples/apps/chat-ui/template/package-lock.json'); +const sourceHashes = async () => Object.fromEntries(await Promise.all(tracked.map(async file=>[file,sha(await readFile(path.join(source,file)))]))); +const consumerFiles=['package.json','package-lock.json','index.html','vite.config.mjs','src/main.jsx','src/styles.css','src/nodeagent-chat/NodeAgentChatApp.jsx','src/nodeagent-chat/nodeAgentLocalAdapter.js','src/nodeagent-chat/toolUIs.jsx']; +const consumerHashes = async () => Object.fromEntries(await Promise.all(consumerFiles.map(async file=>[file,sha(await readFile(path.join(consumer,file)))]))); +const report={namedProof:'NODEAGENT-CURRENT-CONSUMER-01',passed:false,startedAt:new Date().toISOString(),sourceBefore:await sourceHashes(),consumerBefore:await consumerHashes(),checks:[],captures:[],observations:[],console:[],requests:[],providerCalls:0,grade:null}; +const check=(value,name)=>{report.checks.push({name,passed:Boolean(value)});assert.ok(value,name);}; +let browser,page;const servers=[]; +async function server(root){ + const probe=createPortProbe(); await new Promise(resolve=>probe.listen(0,'127.0.0.1',resolve)); const port=probe.address().port; await new Promise(resolve=>probe.close(resolve)); + const app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}}); await app.listen(); servers.push(app); + return 'http://127.0.0.1:'+port; +} +async function context(base,width){ + const ctx=await browser.newContext({viewport:{width,height:width<=390?844:960},colorScheme:'light'}); + await ctx.route('**/*',route=>{const request=route.request(),url=new URL(request.url());if(report.requests.length<500)report.requests.push({origin:url.origin,path:url.pathname,method:request.method()});if(url.origin!==base&&!['fonts.googleapis.com','fonts.gstatic.com'].includes(url.hostname))return route.abort();return route.continue();}); + page=await ctx.newPage();page.setDefaultTimeout(12000);page.on('pageerror',error=>report.console.push({type:'pageerror',message:error.message}));page.on('console',message=>{if(message.type()==='error'&&report.console.length<100)report.console.push({type:'console',message:message.text()});});await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor();await page.evaluate(()=>Promise.race([document.fonts.ready,new Promise(resolve=>setTimeout(resolve,3000))]));return ctx; +} +async function capture(name){ + await page.evaluate(()=>new Promise(resolve=>requestAnimationFrame(()=>requestAnimationFrame(resolve)))); + let prior=await page.content();for(let i=0;i<8;i++){await page.waitForTimeout(250);const now=await page.content();if(now===prior)break;prior=now;}const html=await page.content();const state=await page.evaluate(()=>({url:location.href,viewport:{width:innerWidth,height:innerHeight},focused:document.activeElement?.tagName,overflow:document.documentElement.scrollWidth-innerWidth,buttons:[...document.querySelectorAll('button')].map(e=>({label:e.getAttribute('aria-label')??e.textContent,disabled:e.disabled})),bodyText:document.body.innerText.slice(-6000)})); + await page.screenshot({path:path.join(evidence,name+'.png'),caret:'initial'});check(await page.content()===html,name+' screenshot restores exact DOM');await writeFile(path.join(evidence,name+'.html'),html);await writeFile(path.join(evidence,name+'.json'),JSON.stringify(state,null,2)+'\n');report.captures.push({name,state,pngSha256:sha(await readFile(path.join(evidence,name+'.png')))});return state; +} +async function holdActualRunningFrame(base){ + await page.evaluate(async()=>{const module=await import('/src/nodeagent-chat/nodeAgentLocalAdapter.js'),original=module.nodeAgentLocalAdapter.run;module.nodeAgentLocalAdapter.run=async function*(args){module.nodeAgentLocalAdapter.run=original;window.proofRunCompleted=false;let held=false;for await(const frame of original(args)){yield frame;if(!held&&frame.content.some(p=>p.type==='tool-call'&&!p.result)){held=true;window.proofHeldText=frame.content.find(p=>p.type==='text').text;await new Promise(resolve=>window.proofRelease=resolve);}}window.proofRunCompleted=true;};}); + report.observations.push({name:'actual-running-frame-hold',purpose:'The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution.'}); +} +async function send(text){await page.locator('textarea[name="input"]').fill(text);await page.waitForFunction(()=>document.querySelector('button[aria-label="Send"]')?.disabled===false);await page.locator('textarea[name="input"]').press('Enter');} +async function complete(generated,count=1){await page.waitForFunction(({generated,count})=>{const cards=document.querySelectorAll(generated?'.naTool':'.na-tool');return cards.length===4*count&&[...cards].every(e=>e.getAttribute('data-running')!=='true')&&document.body.innerText.includes('Done.');},{generated,count});} +try { + const generatedBase=await server(consumer);browser=await chromium.launch({headless:true});report.browser=browser.version();report.node=process.version; + for(const width of [320,390,768,1024,1440,1920]){ + const ctx=await context(generatedBase,width);check(await page.locator('[data-nodeagent-chat="empty"]').isVisible(),'generated empty state '+width);await capture('generated-empty-'+width); + await holdActualRunningFrame(generatedBase);await page.locator('textarea[name="input"]').fill('PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.');if([320,768,1440].includes(width))await page.getByRole('button',{name:'Send',exact:true}).click();else await page.locator('textarea[name="input"]').press('Enter');await page.locator('.naTool[data-running="true"]').first().waitFor(); + await page.waitForFunction(()=>typeof window.proofRelease==='function'&&document.body.innerText.includes(window.proofHeldText));const running=await capture('generated-running-'+width);check(running.overflow<=1,'generated running reflows '+width);report.observations.push({name:'generated-D3-'+width,hasStop:running.buttons.some(b=>/stop|cancel/i.test(b.label??'')),sendDisabled:running.buttons.find(b=>b.label==='Send')?.disabled}); + // A second immediate Enter cannot add a concurrent model/fixture run. + await page.locator('textarea[name="input"]').press('Enter');await page.evaluate(()=>window.proofRelease());await complete(true);await page.waitForFunction(()=>window.proofRunCompleted===true);check(await page.locator('.naTool').count()===4,'burst Enter retains one four-card run '+width);await capture('generated-populated-'+width); + await page.reload({waitUntil:'domcontentloaded'});await page.locator('textarea[name="input"]').waitFor();check(await page.locator('.naTool').count()===0&&await page.locator('[data-nodeagent-chat="empty"]').isVisible(),'reload resets only browser session '+width);await capture('generated-reloaded-'+width);await ctx.close(); + } + const sustained=await context(generatedBase,390),began=Date.now();for(let i=0;i<8;i++){await send('PROOF FIXTURE repeat '+(i+1)+': inspect the same local adoption evidence.');await complete(true,i+1);check(await page.locator('.naTool').count()===4*(i+1),'sustained accumulated four-card run '+(i+1));}report.sustained={turns:8,toolCards:32,elapsedMs:Date.now()-began};await capture('generated-sustained-390');await sustained.close(); + check(report.requests.every(r=>r.method==='GET'),'browser made no writes or provider requests');report.sourceAfter=await sourceHashes();report.consumerAfter=await consumerHashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);assert.deepEqual(report.consumerAfter,report.consumerBefore);check(true,'source and installed generated input bytes unchanged');report.passed=true; +}catch(error){report.error=String(error.stack??error);process.exitCode=1;if(page&&!page.isClosed()){await writeFile(path.join(evidence,'failure.html'),await page.content());await page.screenshot({path:path.join(evidence,'failure.png'),caret:'initial'}).catch(()=>{});} +}finally{await browser?.close();for(const app of servers)await app.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(evidence,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({evidence,passed:report.passed,checks:report.checks.length,captures:report.captures.length,error:report.error}));} diff --git a/e2e/current-consumer-recovery-proof.mjs b/e2e/current-consumer-recovery-proof.mjs new file mode 100644 index 0000000..e7d30e3 --- /dev/null +++ b/e2e/current-consumer-recovery-proof.mjs @@ -0,0 +1,173 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import { createServer as portProbe } from 'node:net'; +import path from 'node:path'; +import { chromium } from 'playwright'; +import { createServer } from 'vite'; + +const source = path.resolve(import.meta.dirname, '..'); +const consumer = path.resolve(process.argv[2] ?? ''); +const output = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide a real installed generated app and NEW output directory'); +await mkdir(output, { recursive: false }); +const sha = bytes => createHash('sha256').update(bytes).digest('hex'); +const sourceFiles = execFileSync('git', ['ls-files', '-z'], { cwd: source, env: { ...process.env, GIT_OPTIONAL_LOCKS: '0' } }).toString().split('\0').filter(f => f && !path.basename(f).startsWith('.env')); +sourceFiles.push('e2e/current-consumer-proof.mjs', 'e2e/current-consumer-recovery-proof.mjs', 'examples/apps/chat-ui/template/package-lock.json'); +const consumerFiles = ['package.json', 'package-lock.json', 'index.html', 'vite.config.mjs', 'src/main.jsx', 'src/styles.css', 'src/nodeagent-chat/NodeAgentChatApp.jsx', 'src/nodeagent-chat/nodeAgentLocalAdapter.js', 'src/nodeagent-chat/toolUIs.jsx']; +const hashFiles = async (root, files) => Object.fromEntries(await Promise.all(files.map(async f => [f, sha(await readFile(path.join(root, f)))]))); +const report = { namedProof: 'NODEAGENT-RESPONSE-RECOVERY-01', startedAt: new Date().toISOString(), sourceBefore: await hashFiles(source, sourceFiles), consumerBefore: await hashFiles(consumer, consumerFiles), passed: false, checks: [], cells: [], captures: [], requests: [], grade: null }; +const check = (value, name) => { report.checks.push({ name, passed: Boolean(value) }); assert.ok(value, name); }; +let browser, server, page; +let kind, tool, bubble, composer; +const surfaces = process.argv[4] === '--source-only' ? ['source'] : ['generated', 'source']; +async function start(root) { + const probe = portProbe(); await new Promise(resolve => probe.listen(0, '127.0.0.1', resolve)); const port = probe.address().port; await new Promise(resolve => probe.close(resolve)); + server = await createServer({ root, envDir: false, server: { host: '127.0.0.1', port, strictPort: true, open: false } }); await server.listen(); return 'http://127.0.0.1:' + port; +} +async function snapshot(name, target = composer) { + if (target) await page.locator(target).scrollIntoViewIfNeeded(); + let prior = await page.content(); + for (let i = 0; i < 16; i++) { await page.waitForTimeout(200); const current = await page.content(); if (current === prior) break; prior = current; } + await page.evaluate(() => new Promise(resolve => requestAnimationFrame(() => requestAnimationFrame(resolve)))); + const html = await page.content(); + await writeFile(path.join(output, name + '.before.html'), html); + await page.screenshot({ path: path.join(output, name + '.png'), caret: 'initial' }); + const after = await page.content(); await writeFile(path.join(output, name + '.html'), after); + check(after === html, name + ' exact DOM during settled screenshot'); + const state = await page.evaluate(() => ({ layout: [...document.querySelectorAll('.na-recovery,.naRecovery,.na-footer,.naFooter,.na-viewport,.naViewport')].map(e=>({class:e.className,scrollTop:e.scrollTop,scrollHeight:e.scrollHeight,clientHeight:e.clientHeight,box:JSON.parse(JSON.stringify(e.getBoundingClientRect()))})), viewport: { width: innerWidth, height: innerHeight }, scroll: { x: scrollX, y: scrollY }, text: document.body.innerText, overflow: document.documentElement.scrollWidth - innerWidth, focus: { tag: document.activeElement?.tagName, label: document.activeElement?.getAttribute('aria-label') }, buttons: [...document.querySelectorAll('button')].map(b => ({ label: b.getAttribute('aria-label') || b.textContent, disabled: b.disabled })) })); + await writeFile(path.join(output, name + '.json'), JSON.stringify(state, null, 2) + '\n'); + report.captures.push({ name, pngSha256: sha(await readFile(path.join(output, name + '.png'))), state }); return state; +} +async function send(question) { + await page.locator('textarea[name="input"]').fill(question); + await page.getByRole('button', { name: 'Send', exact: true }).waitFor(); + await page.waitForFunction(() => document.querySelector('button[aria-label="Send"]')?.disabled === false); + await page.locator('textarea[name="input"]').press('Enter'); +} +async function idleWithCards(count) { + await page.waitForFunction(({ tool, count }) => document.querySelectorAll(tool).length === count && !document.querySelector('button[aria-label="Stop response"]'), { tool, count }); +} +async function activateRetry(retry, keyboard, cell, phase) { + if (keyboard) { await retry.focus(); await page.keyboard.press('Enter'); return; } + await retry.evaluate(e => { + window.proofPointerMotion = {}; + const rect = () => { const r = e.getBoundingClientRect(); return { x: r.x, y: r.y, width: r.width, height: r.height }; }; + e.addEventListener('mousedown', () => window.proofPointerMotion.down = rect(), { once: true }); + document.addEventListener('mouseup', () => window.proofPointerMotion.up = rect(), { once: true, capture: true }); + }); + await retry.dblclick(); + const motion = await page.evaluate(() => window.proofPointerMotion); + (cell.pointerActivations ??= []).push({ phase, ...motion }); + check(Boolean(motion.down && motion.up) && JSON.stringify(motion.down) === JSON.stringify(motion.up), kind + ' pointer Retry stays in place before activation ' + phase + ' ' + cell.width); +} +async function graph() { + if (kind === 'generated') return null; + return page.evaluate(async () => { const m = await import('/src/features/node-agent/graph/agentGraphSession.ts'); return m.graphSession.getSnapshot(); }); +} +async function installPartialFailure() { + await page.evaluate(async ({ modulePath, key }) => { + const module = await import(modulePath), original = module[key].run; + window.proofAttempts = []; + module[key].run = async function* (args) { + if (window.proofAttempts.length >= 64) throw new Error('PROOF FIXTURE: attempt bound exceeded'); + const attempt = { id: args.unstable_assistantMessageId, parentId: args.unstable_parentId, injectedFailure: window.proofAttempts.length < 2 }; + window.proofAttempts.push(attempt); + window.proofCurrentMessage = args.unstable_getMessage; + for await (const frame of original(args)) { + yield frame; + const tools = frame.content.filter(p => p.type === 'tool-call'); + if (attempt.injectedFailure && tools.some(p => p.result) && tools.some(p => !p.result)) throw new Error('PROOF FIXTURE: second tool failed after the first actual result.'); + } + }; + }, { modulePath: kind === 'generated' ? '/src/nodeagent-chat/nodeAgentLocalAdapter.js' : '/src/features/node-agent/runtime/nodeAgentChatAdapter.ts', key: kind === 'generated' ? 'nodeAgentLocalAdapter' : 'nodeAgentChatAdapter' }); +} +try { + browser = await chromium.launch({ headless: true }); report.browser = browser.version(); report.node = process.version; + for (kind of surfaces) { + const base = await start(kind === 'generated' ? consumer : source); + tool = kind === 'generated' ? '.naTool' : '.na-tool'; bubble = kind === 'generated' ? '.naMsgAssistant .naBubble' : '.na-msg-assistant .na-bubble'; composer = kind === 'generated' ? '.naComposer' : '.na-composer'; + for (const width of [320, 390, 768, 1024, 1440, 1920]) { + const ctx = await browser.newContext({ viewport: { width, height: width <= 390 ? 844 : 960 }, colorScheme: 'dark' }); + await ctx.route('**/*', route => { const request = route.request(), url = new URL(request.url()); if (report.requests.length < 2000) report.requests.push({ origin: url.origin, path: url.pathname, method: request.method() }); return url.origin === base || ['fonts.googleapis.com', 'fonts.gstatic.com'].includes(url.hostname) ? route.continue() : route.abort(); }); + page = await ctx.newPage(); page.setDefaultTimeout(16000); + const cell = { kind, width, errors: [], checksStart: report.checks.length, capturesStart: report.captures.length }; report.cells.push(cell); page.on('pageerror', error => cell.errors.push(error.message)); + await page.goto(base, { waitUntil: 'domcontentloaded', timeout: 45000 }); await page.locator('textarea[name="input"]').waitFor(); + const question = kind === 'generated' ? 'Does the local NodeAgent wedge hold for an MVP?' : 'Does our wedge hold versus Acme, and does the runway model survive 18 months?'; + await snapshot(kind + '-empty-' + width); + await send(question); await idleWithCards(4); await page.waitForTimeout(700); + const earlier = await page.locator(bubble).first().innerText(); const graphBefore = await graph(); + await send(question); await page.locator(tool + '[data-running="true"]').first().waitFor(); + const stop = page.getByRole('button', { name: 'Stop response', exact: true }); const began = Date.now(); + if ([390, 1024, 1920].includes(width)) { await stop.focus(); await page.keyboard.press('Enter'); cell.stopInput = 'keyboard'; } else { await stop.click(); cell.stopInput = 'pointer'; } + await page.getByText('Stopped this response. Completed work is kept.', { exact: true }).waitFor(); cell.stopLatencyMs = Date.now() - began; + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('stopped')), kind + ' native incomplete tool shows stopped ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' Stop preserves earlier completed response ' + width); + const stoppedText = await page.locator(bubble).last().innerText(), stoppedGraph = await graph(); + check(!stoppedText.includes('Done.'), kind + ' stopped response has no fake Done ' + width); + await page.waitForTimeout(750); check(await page.locator(bubble).last().innerText() === stoppedText, kind + ' stopped response remains stable ' + width); assert.deepEqual(await graph(), stoppedGraph); assert.deepEqual(stoppedGraph, graphBefore); + await snapshot(kind + '-stopped-' + width); + check(await page.locator('textarea[name="input"]').evaluate(e => e === document.activeElement), kind + ' Stop retains keyboard continuation focus ' + width); + await page.getByRole('button', { name: 'Retry response', exact: true }).click(); await idleWithCards(8); check(await page.locator(bubble).count() === 2, kind + ' stopped Retry replaces only current response ' + width); + await installPartialFailure(); await send(question); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('failed')), kind + ' partial failure names failed tool ' + width); + await page.waitForTimeout(750); check(await page.evaluate(() => window.proofAttempts.length === 1), kind + ' failed response does not retry automatically ' + width); + await snapshot(kind + '-error-' + width); + const retry = page.getByRole('button', { name: 'Retry response', exact: true }); + await activateRetry(retry, [390, 1024, 1920].includes(width), cell, 'fail-again'); + await page.waitForFunction(() => window.proofAttempts.length >= 2 && window.proofCurrentMessage().status?.type === 'incomplete'); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + await page.waitForTimeout(750); + check(await page.evaluate(() => window.proofAttempts.length === 2), kind + ' first explicit Retry fails once with no automatic or duplicate retry ' + width); + await snapshot(kind + '-error-again-' + width); + if (width === 390) { + cell.enlargement = await page.evaluate(() => { + const targets = [...document.querySelectorAll('*')].filter(e => e.matches('textarea,input,button') || [...e.childNodes].some(n => n.nodeType === 3 && n.textContent.trim())); + const originals = targets.map(e => ({ e, style: e.getAttribute('style'), size: parseFloat(getComputedStyle(e).fontSize) })); + window.proofRestoreText = () => originals.forEach(({ e, style }) => style === null ? e.removeAttribute('style') : e.setAttribute('style', style)); + originals.forEach(({ e, size }) => e.style.fontSize = size * 2 + 'px'); + return { method: 'Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.', elements: originals.length }; + }); + await page.locator('textarea[name="input"]').focus(); + await page.keyboard.press('Shift+Tab'); + check(await retry.evaluate(e => e === document.activeElement), kind + ' enlarged Retry reachable from composer by keyboard ' + width); + const enlarged = await snapshot(kind + '-error-text-200-' + width, null); + cell.enlargement.documentOverflow = enlarged.overflow; + const changedBounds = await page.locator('.na-recovery,.naRecovery,' + composer).evaluateAll(es => es.map(e => ({ class: e.className, left: e.getBoundingClientRect().left, right: e.getBoundingClientRect().right, overflow: e.scrollWidth - e.clientWidth }))); + cell.enlargement.changedBounds = changedBounds; + check(changedBounds.every(b => b.left >= -1 && b.right <= width + 1 && b.overflow <= 1), kind + ' enlarged recovery and composer fit ' + width); + check(await retry.evaluate(e => { const r = e.getBoundingClientRect(); const hit = document.elementFromPoint(r.x + r.width / 2, r.y + r.height / 2); return r.y >= 0 && r.bottom <= innerHeight && (hit === e || e.contains(hit)); }), kind + ' enlarged Retry paints visibly without overlay obstruction ' + width); + check(await page.getByRole('alert').evaluate(e => { const r = e.getBoundingClientRect(); const hit = document.elementFromPoint(r.x + r.width / 2, r.y + r.height / 2); return r.y >= 0 && r.bottom <= innerHeight && (hit === e || e.contains(hit)); }), kind + ' enlarged failure explanation remains visible with Retry ' + width); + await page.evaluate(() => window.proofRestoreText()); + } + await activateRetry(retry, [390, 1024, 1920].includes(width), cell, 'recover'); + await idleWithCards(12); cell.attempts = await page.evaluate(() => window.proofAttempts); + check(cell.attempts.length === 3, kind + ' second explicit Retry recovers once despite repeated activation ' + width); + check(cell.attempts.every(a => typeof a.id === 'string' && a.id.length > 0) && new Set(cell.attempts.map(a => a.id)).size === 3, kind + ' SDK creates a fresh response identity for both retries ' + width); + check(new Set(cell.attempts.map(a => a.parentId)).size === 1, kind + ' retries retain the same user parent ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' recovery retains earlier evidence ' + width); + check(await page.getByRole('alert').count() === 0, kind + ' recovered response removes failure notice ' + width); + await snapshot(kind + '-recovered-' + width); + if (width === 390) { + const begin = Date.now(); for (let i = 0; i < 12; i++) { await send(question); await idleWithCards(4 * (4 + i)); } + cell.accumulation = { additionalTurns: 12, totalResponses: 15, toolCards: 60, elapsedMs: Date.now() - begin }; + await snapshot(kind + '-accumulated-' + width); + } + await page.reload({ waitUntil: 'domcontentloaded' }); await page.locator('textarea[name="input"]').waitFor(); check(await page.locator(tool).count() === 0, kind + ' reload resets browser session honestly ' + width); + await snapshot(kind + '-reloaded-' + width); + check(cell.errors.every(e => e.includes('PROOF FIXTURE: second tool failed')), kind + ' only the intentional adapter fault reaches page errors ' + width); + cell.checksEnd = report.checks.length; cell.capturesEnd = report.captures.length; await ctx.close(); + } + await server.close(); server = null; + } + check(report.requests.every(r => r.method === 'GET'), 'no browser writes or provider requests'); + report.sourceAfter = await hashFiles(source, sourceFiles); report.consumerAfter = await hashFiles(consumer, consumerFiles); assert.deepEqual(report.sourceAfter, report.sourceBefore); assert.deepEqual(report.consumerAfter, report.consumerBefore); + report.passed = true; +} catch (error) { + report.error = String(error.stack ?? error); process.exitCode = 1; + if (page && !page.isClosed()) { await writeFile(path.join(output, 'failure.html'), await page.content()); await page.screenshot({ path: path.join(output, 'failure.png'), caret: 'initial' }).catch(() => {}); } +} finally { + await browser?.close(); await server?.close(); report.finishedAt = new Date().toISOString(); await writeFile(path.join(output, 'report.json'), JSON.stringify(report, null, 2) + '\n'); console.log(JSON.stringify({ output, passed: report.passed, checks: report.checks.length, captures: report.captures.length, error: report.error })); +} diff --git a/evidence/current-consumer-20260905/.gitattributes b/evidence/current-consumer-20260905/.gitattributes new file mode 100644 index 0000000..6c9d67f --- /dev/null +++ b/evidence/current-consumer-20260905/.gitattributes @@ -0,0 +1,2 @@ +# Keep hash-bound evidence bytes unchanged in Git. +* -text diff --git a/evidence/current-consumer-20260905/README.md b/evidence/current-consumer-20260905/README.md new file mode 100644 index 0000000..9083ef5 --- /dev/null +++ b/evidence/current-consumer-20260905/README.md @@ -0,0 +1,20 @@ +# Current NodeAgent consumer evidence + +This packet supports the bounded local consumer and response-recovery handoff. Read [HANDOFF.md](../../HANDOFF.md) first. The [independent source and consumer judgment](judge/E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.md.txt) accepts the bounded behavior; full UI grades are null. This packet retains the pre-publication judgment and its exact evidence. Use its manifest and Git history to identify the committed candidate. + +The final response-recovery report is [operator/d3-final-browser-03/report.json](operator/d3-final-browser-03/report.json): 289 checks, 76 captures, 12 cells at 320/390/768/1024/1440/1920. The unchanged first-run scenario is [operator/d3-unchanged-baseline-replay/report.json](operator/d3-unchanged-baseline-replay/report.json): 59 checks, 25 captures. Both use the normally installed final consumer and bind input bytes before/after. Intentional adapter faults and screenshot-only iterator holds are labelled; no provider request is represented by them. + +Before scope: operator/evidence/nodeagent-d3-{source,generated}-before contains the approved actual labelled 3px PNGs. The matched after reports operator/d3-source-matched-after and operator/d3-generated-matched-after reuse the exact original questions, held first frame, one-run error fixture, anonymous context, 960px height and 390/1440 widths. Ephemeral local ports and installed root differ. Source running-state captures additionally cover all six widths at 960px height. The larger recovery matrix uses 844px height at 320/390 and 960px elsewhere; it is separate interaction/accumulation coverage, not a geometrically identical before comparison. + +The final package receipt operator/d3-installed-consumer-03.json binds 242 exact source/tarball/installed files. The final HANDOFF and this packet were written afterward; package bytes are an uncommitted implementation checkpoint, not a published release certificate. The earlier locked dependency checkpoint remains separate. Template/source dependency ranges and original Pi work were not merged or replaced. + +Failure history is preserved. Historical folders contain raw reports and failure/selected enlarged PNGs for the incompatible unlocked install, early-completion probe, lost Stop focus, two rapid Retry starts, ineffective isRunning-only guard, first compounded-text fixture, generated intrinsic-width overflow and source sticky-footer obstruction. Full intermediate raw directories remain in the retained operator packet; this portable packet deliberately selects their decisive artifacts. Their older claims are historical. Raw Markdown and source snippets are copied with .txt suffixes; their original bytes and hashes are preserved. + +Current limitations: source-header overflow 21px at 390 in the doubled-computed-text fixture; crowded/clipped source graph labels need a separate readability assessment; no React render-error boundary or New Thread control; browser reload resets conversation. Source full audit 9 development findings and generated 4 development findings remain open, despite zero recorded production-only findings. No provider, Convex, host-login/hook or deployment certification. The durable/SQLite close/reopen proof is a separate library consumer, not browser persistence. + +manifest.json hashes every included artifact except itself and binds the final runtime proof's 234 source files. operator/d3-worker-visual-inspection.json names the 31 actual after PNGs inspected by the implementation worker; other captures remain available for independent review. Raw artifact paths/ports identify their retained environment and are evidence data, not portable launch commands. Use HANDOFF.md for fresh-run commands. + + +Independent review adds 130 browser checks/34 captures: 105/28 for native source/generated recovery and 25/6 for stopping after a completed tool result. Earlier results remain, the unfinished tool stops, and explicit Retry recovers. Fresh41 tests/typecheck/tours pass. See [the primary replay](judge/E6e-nodeagent-independent-review/browser-01/report.json) and [late Stop](judge/E6e-nodeagent-independent-review/late-stop-01/report.json). The judge inspected11 actual before/after PNGs; source-header/graph limits remain. + +The pre-publication judge found that root line-ending rules would alter60 evidence files. This packet now has a local `.gitattributes` rule that preserves all raw bytes. The old manifest/index/handoff and worker receipt remain under `historical/publication-before-raw-attributes`; their earlier pending statements describe that checkpoint. The current manifest includes this metadata correction and every copied independent artifact. The source234 bindings and all implementation/package/consumer bytes remain unchanged; only current handoff/publication metadata follows the reviewed source checkpoint. This correction does not rerun or relabel any historical proof. diff --git a/evidence/current-consumer-20260905/historical/browser-before-03/report.json b/evidence/current-consumer-20260905/historical/browser-before-03/report.json new file mode 100644 index 0000000..01e2003 --- /dev/null +++ b/evidence/current-consumer-20260905/historical/browser-before-03/report.json @@ -0,0 +1,394 @@ +{ + "namedProof": "NODEAGENT-CURRENT-CONSUMER-01", + "passed": false, + "startedAt": "2026-09-05T07:26:28.771Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "examples/apps/chat-ui/template/src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "src/features/node-agent/components/toolUIs.tsx": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "1f74cbdf16dd807444c0986cc65063732b273c49eb48c260dabedbaa4d6e0c4d" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "f185d6cd0889ef7ea8974f0c73f31c352a52e4c18b7e7394ceded0cf230ef101", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + }, + "checks": [ + { + "name": "generated empty state 320", + "passed": true + }, + { + "name": "generated-empty-320 screenshot restores exact DOM", + "passed": true + } + ], + "captures": [ + { + "name": "generated-empty-320", + "state": { + "url": "http://127.0.0.1:54115/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad" + } + ], + "observations": [], + "console": [ + { + "type": "pageerror", + "message": "Maximum update depth exceeded. The result of getSnapshot should be cached to avoid an infinite loop." + }, + { + "type": "pageerror", + "message": "Maximum update depth exceeded. This can happen when a resource repeatedly calls setState inside useEffect." + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:54115", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/node_modules/.vite/deps/chunk-5JE52KWM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/node_modules/.vite/deps/chunk-XDD65R4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54115", + "path": "/node_modules/.vite/deps/chunk-4HOKYLK4.js", + "method": "GET" + } + ], + "providerCalls": 0, + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "error": "locator.waitFor: Timeout 12000ms exceeded.\nCall log:\n\u001b[2m - waiting for locator('.naTool[data-running=\"true\"]').first() to be visible\u001b[22m\n\n at D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905\\e2e\\current-consumer-proof.mjs:56:168", + "finishedAt": "2026-09-05T07:26:42.107Z" +} diff --git a/evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.html b/evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.html new file mode 100644 index 0000000..22a1a7a --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.png b/evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.png new file mode 100644 index 0000000..4a808aa Binary files /dev/null and b/evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.png differ diff --git a/evidence/current-consumer-20260905/historical/d3-final-browser-01/generated-error-text-200-390.png b/evidence/current-consumer-20260905/historical/d3-final-browser-01/generated-error-text-200-390.png new file mode 100644 index 0000000..4a808aa Binary files /dev/null and b/evidence/current-consumer-20260905/historical/d3-final-browser-01/generated-error-text-200-390.png differ diff --git a/evidence/current-consumer-20260905/historical/d3-final-browser-01/report.json b/evidence/current-consumer-20260905/historical/d3-final-browser-01/report.json new file mode 100644 index 0000000..c3f4080 --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-final-browser-01/report.json @@ -0,0 +1,1558 @@ +{ + "namedProof": "NODEAGENT-RESPONSE-RECOVERY-01", + "startedAt": "2026-09-05T08:35:09.225Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "a0e40ef53b606e3249c46002cfaf04c6741859b07d808bad6474287e6a897f1b", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "e0adeb247191d8a894bf74989b714e7fdcfcf9c1f3d91e52b95db2ded5bcf341", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "ed2a8ff8e0c034d534b2d5b1ca941735c71c0e4c091af7a6e48a5200503e6ecd", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "passed": false, + "checks": [ + { + "name": "generated-empty-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 320", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 320", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 320", + "passed": true + }, + { + "name": "generated stopped response remains stable 320", + "passed": true + }, + { + "name": "generated-stopped-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 320", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 320", + "passed": true + }, + { + "name": "generated partial failure names failed tool 320", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 320", + "passed": true + }, + { + "name": "generated-error-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 320", + "passed": true + }, + { + "name": "generated-error-again-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 320", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 320", + "passed": true + }, + { + "name": "generated retries retain the same user parent 320", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 320", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 320", + "passed": true + }, + { + "name": "generated-recovered-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 320", + "passed": true + }, + { + "name": "generated-reloaded-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 320", + "passed": true + }, + { + "name": "generated-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 390", + "passed": true + }, + { + "name": "generated stopped response remains stable 390", + "passed": true + }, + { + "name": "generated-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "generated partial failure names failed tool 390", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 390", + "passed": true + }, + { + "name": "generated-error-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 390", + "passed": true + }, + { + "name": "generated-error-again-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated enlarged Retry reachable from composer by keyboard 390", + "passed": true + }, + { + "name": "generated-error-text-200-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated enlarged recovery and composer fit 390", + "passed": false + } + ], + "cells": [ + { + "kind": "generated", + "width": 320, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 0, + "capturesStart": 0, + "stopInput": "pointer", + "stopLatencyMs": 252, + "attempts": [ + { + "id": "dHmtD0i", + "parentId": "pk1o4uI", + "injectedFailure": true + }, + { + "id": "53Cwbxy", + "parentId": "pk1o4uI", + "injectedFailure": true + }, + { + "id": "drydNe9", + "parentId": "pk1o4uI", + "injectedFailure": false + } + ], + "checksEnd": 22, + "capturesEnd": 6 + }, + { + "kind": "generated", + "width": 390, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 22, + "capturesStart": 6, + "stopInput": "keyboard", + "stopLatencyMs": 312, + "enlargement": { + "method": "Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.", + "elements": 115, + "documentOverflow": 55, + "changedBounds": [ + { + "class": "naRecovery", + "left": 67, + "right": 418, + "overflow": 0 + }, + { + "class": "naComposer", + "left": 30, + "right": 415, + "overflow": 0 + } + ] + } + } + ], + "captures": [ + { + "name": "generated-empty-320", + "pngSha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 320, + "height": 780, + "top": 64, + "right": 320, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 296, + "height": 128, + "top": 708, + "right": 308, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-320", + "pngSha256": "652934d39f0e3eb65357e59ab2312c57f16fe9c2c2c0e4791e407dc9303dc6ec", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2800, + "clientHeight": 2800, + "box": { + "x": 0, + "y": -1888, + "width": 320, + "height": 2799.546875, + "top": -1888, + "right": 320, + "bottom": 911.546875, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.546875, + "width": 226, + "height": 115, + "top": 629.546875, + "right": 293, + "bottom": 744.546875, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.546875, + "width": 296, + "height": 128, + "top": 775.546875, + "right": 308, + "bottom": 903.546875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1952 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-320", + "pngSha256": "914d34e5c4e3c77a75568bda1683fcad1e85d27ec995dd45cb9ab945c04b56b7", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 5436, + "clientHeight": 5436, + "box": { + "x": 0, + "y": -4592, + "width": 320, + "height": 5436.09375, + "top": -4592, + "right": 320, + "bottom": 844.09375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.09375, + "width": 226, + "height": 115, + "top": 562.09375, + "right": 293, + "bottom": 677.09375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.09375, + "width": 296, + "height": 128, + "top": 708.09375, + "right": 308, + "bottom": 836.09375, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4656 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-320", + "pngSha256": "937c54b96421ca35ca308d9de0682e87350da227de26184abb7a3754220c5cd8", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 5436, + "clientHeight": 5436, + "box": { + "x": 0, + "y": -4592, + "width": 320, + "height": 5436.09375, + "top": -4592, + "right": 320, + "bottom": 844.09375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.09375, + "width": 226, + "height": 115, + "top": 562.09375, + "right": 293, + "bottom": 677.09375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.09375, + "width": 296, + "height": 128, + "top": 708.09375, + "right": 308, + "bottom": 836.09375, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4656 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-320", + "pngSha256": "1ffeaf2cc5fcbb17e9fbc1dd7cfa1d46a42c460804fb45953b888760756df998", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 6737, + "clientHeight": 6737, + "box": { + "x": 0, + "y": -5893, + "width": 320, + "height": 6737.296875, + "top": -5893, + "right": 320, + "bottom": 844.296875, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.296875, + "width": 296, + "height": 128, + "top": 708.296875, + "right": 308, + "bottom": 836.296875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 5957 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-320", + "pngSha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 320, + "height": 780, + "top": 64, + "right": 320, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 296, + "height": 128, + "top": 708, + "right": 308, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-390", + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-390", + "pngSha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2538, + "clientHeight": 2538, + "box": { + "x": 0, + "y": -1626, + "width": 390, + "height": 2537.640625, + "top": -1626, + "right": 390, + "bottom": 911.640625, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.640625, + "width": 296, + "height": 115, + "top": 629.640625, + "right": 363, + "bottom": 744.640625, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.640625, + "width": 366, + "height": 128, + "top": 775.640625, + "right": 378, + "bottom": 903.640625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1690 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-390", + "pngSha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-390", + "pngSha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-text-200-390", + "pngSha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 10420, + "clientHeight": 10420, + "box": { + "x": 0, + "y": -9576, + "width": 445, + "height": 10420.1875, + "top": -9576, + "right": 445, + "bottom": 844.1875, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 186, + "clientHeight": 186, + "box": { + "x": 67, + "y": 426.59375, + "width": 351, + "height": 186.59375, + "top": 426.59375, + "right": 418, + "bottom": 613.1875, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 192, + "clientHeight": 192, + "box": { + "x": 12, + "y": 644.1875, + "width": 421, + "height": 192, + "top": 644.1875, + "right": 433, + "bottom": 836.1875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 9640 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 55, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:59446", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/chunk-CYQPUWW3.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/chunk-D4K3B3B5.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/chunk-WHVVH2LO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/chunk-CYQPUWW3.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/chunk-D4K3B3B5.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/chunk-WHVVH2LO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/chunk-CYQPUWW3.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/chunk-D4K3B3B5.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59446", + "path": "/node_modules/.vite/deps/chunk-WHVVH2LO.js", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "error": "AssertionError [ERR_ASSERTION]: generated enlarged recovery and composer fit 390\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:127:9", + "finishedAt": "2026-09-05T08:35:50.006Z" +} diff --git a/evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.html b/evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.html new file mode 100644 index 0000000..4c56e2a --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.png b/evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.png new file mode 100644 index 0000000..a67a50d Binary files /dev/null and b/evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.png differ diff --git a/evidence/current-consumer-20260905/historical/d3-final-browser-02/generated-error-text-200-390.png b/evidence/current-consumer-20260905/historical/d3-final-browser-02/generated-error-text-200-390.png new file mode 100644 index 0000000..806ad4d Binary files /dev/null and b/evidence/current-consumer-20260905/historical/d3-final-browser-02/generated-error-text-200-390.png differ diff --git a/evidence/current-consumer-20260905/historical/d3-final-browser-02/report.json b/evidence/current-consumer-20260905/historical/d3-final-browser-02/report.json new file mode 100644 index 0000000..6128397 --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-final-browser-02/report.json @@ -0,0 +1,6549 @@ +{ + "namedProof": "NODEAGENT-RESPONSE-RECOVERY-01", + "startedAt": "2026-09-05T08:42:14.093Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "a0e40ef53b606e3249c46002cfaf04c6741859b07d808bad6474287e6a897f1b", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "e0adeb247191d8a894bf74989b714e7fdcfcf9c1f3d91e52b95db2ded5bcf341", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "ed2a8ff8e0c034d534b2d5b1ca941735c71c0e4c091af7a6e48a5200503e6ecd", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "passed": false, + "checks": [ + { + "name": "generated-empty-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 320", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 320", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 320", + "passed": true + }, + { + "name": "generated stopped response remains stable 320", + "passed": true + }, + { + "name": "generated-stopped-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 320", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 320", + "passed": true + }, + { + "name": "generated partial failure names failed tool 320", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 320", + "passed": true + }, + { + "name": "generated-error-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 320", + "passed": true + }, + { + "name": "generated-error-again-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 320", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 320", + "passed": true + }, + { + "name": "generated retries retain the same user parent 320", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 320", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 320", + "passed": true + }, + { + "name": "generated-recovered-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 320", + "passed": true + }, + { + "name": "generated-reloaded-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 320", + "passed": true + }, + { + "name": "generated-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 390", + "passed": true + }, + { + "name": "generated stopped response remains stable 390", + "passed": true + }, + { + "name": "generated-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "generated partial failure names failed tool 390", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 390", + "passed": true + }, + { + "name": "generated-error-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 390", + "passed": true + }, + { + "name": "generated-error-again-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated enlarged Retry reachable from composer by keyboard 390", + "passed": true + }, + { + "name": "generated-error-text-200-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated enlarged recovery and composer fit 390", + "passed": true + }, + { + "name": "generated enlarged Retry paints visibly without overlay obstruction 390", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 390", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 390", + "passed": true + }, + { + "name": "generated retries retain the same user parent 390", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 390", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 390", + "passed": true + }, + { + "name": "generated-recovered-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated-accumulated-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 390", + "passed": true + }, + { + "name": "generated-reloaded-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 390", + "passed": true + }, + { + "name": "generated-empty-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 768", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 768", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 768", + "passed": true + }, + { + "name": "generated stopped response remains stable 768", + "passed": true + }, + { + "name": "generated-stopped-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 768", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 768", + "passed": true + }, + { + "name": "generated partial failure names failed tool 768", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 768", + "passed": true + }, + { + "name": "generated-error-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 768", + "passed": true + }, + { + "name": "generated-error-again-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 768", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 768", + "passed": true + }, + { + "name": "generated retries retain the same user parent 768", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 768", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 768", + "passed": true + }, + { + "name": "generated-recovered-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 768", + "passed": true + }, + { + "name": "generated-reloaded-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 768", + "passed": true + }, + { + "name": "generated-empty-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 1024", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 1024", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 1024", + "passed": true + }, + { + "name": "generated stopped response remains stable 1024", + "passed": true + }, + { + "name": "generated-stopped-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 1024", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 1024", + "passed": true + }, + { + "name": "generated partial failure names failed tool 1024", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 1024", + "passed": true + }, + { + "name": "generated-error-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 1024", + "passed": true + }, + { + "name": "generated-error-again-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 1024", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 1024", + "passed": true + }, + { + "name": "generated retries retain the same user parent 1024", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 1024", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 1024", + "passed": true + }, + { + "name": "generated-recovered-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 1024", + "passed": true + }, + { + "name": "generated-reloaded-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 1024", + "passed": true + }, + { + "name": "generated-empty-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 1440", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 1440", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 1440", + "passed": true + }, + { + "name": "generated stopped response remains stable 1440", + "passed": true + }, + { + "name": "generated-stopped-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 1440", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 1440", + "passed": true + }, + { + "name": "generated partial failure names failed tool 1440", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 1440", + "passed": true + }, + { + "name": "generated-error-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 1440", + "passed": true + }, + { + "name": "generated-error-again-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 1440", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 1440", + "passed": true + }, + { + "name": "generated retries retain the same user parent 1440", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 1440", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 1440", + "passed": true + }, + { + "name": "generated-recovered-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 1440", + "passed": true + }, + { + "name": "generated-reloaded-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 1440", + "passed": true + }, + { + "name": "generated-empty-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 1920", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 1920", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 1920", + "passed": true + }, + { + "name": "generated stopped response remains stable 1920", + "passed": true + }, + { + "name": "generated-stopped-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 1920", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 1920", + "passed": true + }, + { + "name": "generated partial failure names failed tool 1920", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 1920", + "passed": true + }, + { + "name": "generated-error-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 1920", + "passed": true + }, + { + "name": "generated-error-again-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 1920", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 1920", + "passed": true + }, + { + "name": "generated retries retain the same user parent 1920", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 1920", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 1920", + "passed": true + }, + { + "name": "generated-recovered-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 1920", + "passed": true + }, + { + "name": "generated-reloaded-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 1920", + "passed": true + }, + { + "name": "source-empty-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 320", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 320", + "passed": true + }, + { + "name": "source stopped response has no fake Done 320", + "passed": true + }, + { + "name": "source stopped response remains stable 320", + "passed": true + }, + { + "name": "source-stopped-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 320", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 320", + "passed": true + }, + { + "name": "source partial failure names failed tool 320", + "passed": true + }, + { + "name": "source failed response does not retry automatically 320", + "passed": true + }, + { + "name": "source-error-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 320", + "passed": true + }, + { + "name": "source-error-again-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 320", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 320", + "passed": true + }, + { + "name": "source retries retain the same user parent 320", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 320", + "passed": true + }, + { + "name": "source recovered response removes failure notice 320", + "passed": true + }, + { + "name": "source-recovered-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 320", + "passed": true + }, + { + "name": "source-reloaded-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 320", + "passed": true + }, + { + "name": "source-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "source stopped response has no fake Done 390", + "passed": true + }, + { + "name": "source stopped response remains stable 390", + "passed": true + }, + { + "name": "source-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "source partial failure names failed tool 390", + "passed": true + }, + { + "name": "source failed response does not retry automatically 390", + "passed": true + }, + { + "name": "source-error-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 390", + "passed": true + }, + { + "name": "source-error-again-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source enlarged Retry reachable from composer by keyboard 390", + "passed": true + }, + { + "name": "source-error-text-200-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source enlarged recovery and composer fit 390", + "passed": true + }, + { + "name": "source enlarged Retry paints visibly without overlay obstruction 390", + "passed": false + } + ], + "cells": [ + { + "kind": "generated", + "width": 320, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 0, + "capturesStart": 0, + "stopInput": "pointer", + "stopLatencyMs": 251, + "attempts": [ + { + "id": "7Q0ZQTR", + "parentId": "iKKg2zu", + "injectedFailure": true + }, + { + "id": "Vopx4Cp", + "parentId": "iKKg2zu", + "injectedFailure": true + }, + { + "id": "3VJVJPp", + "parentId": "iKKg2zu", + "injectedFailure": false + } + ], + "checksEnd": 22, + "capturesEnd": 6 + }, + { + "kind": "generated", + "width": 390, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 22, + "capturesStart": 6, + "stopInput": "keyboard", + "stopLatencyMs": 328, + "enlargement": { + "method": "Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.", + "elements": 115, + "documentOverflow": 0, + "changedBounds": [ + { + "class": "naRecovery", + "left": 67, + "right": 363, + "overflow": 0 + }, + { + "class": "naComposer", + "left": 30, + "right": 360, + "overflow": 0 + } + ] + }, + "attempts": [ + { + "id": "HFyXT7U", + "parentId": "kvUX19P", + "injectedFailure": true + }, + { + "id": "01l9AXC", + "parentId": "kvUX19P", + "injectedFailure": true + }, + { + "id": "Po2RfQ5", + "parentId": "kvUX19P", + "injectedFailure": false + } + ], + "accumulation": { + "additionalTurns": 12, + "totalResponses": 15, + "toolCards": 60, + "elapsedMs": 21164 + }, + "checksEnd": 49, + "capturesEnd": 14 + }, + { + "kind": "generated", + "width": 768, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 49, + "capturesStart": 14, + "stopInput": "pointer", + "stopLatencyMs": 341, + "attempts": [ + { + "id": "rhsK7gT", + "parentId": "Sc2jrTu", + "injectedFailure": true + }, + { + "id": "4ntTrDk", + "parentId": "Sc2jrTu", + "injectedFailure": true + }, + { + "id": "uGkZKCW", + "parentId": "Sc2jrTu", + "injectedFailure": false + } + ], + "checksEnd": 71, + "capturesEnd": 20 + }, + { + "kind": "generated", + "width": 1024, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 71, + "capturesStart": 20, + "stopInput": "keyboard", + "stopLatencyMs": 307, + "attempts": [ + { + "id": "lrKoGFo", + "parentId": "CwkGjrz", + "injectedFailure": true + }, + { + "id": "SDWX4gC", + "parentId": "CwkGjrz", + "injectedFailure": true + }, + { + "id": "1L6vdLX", + "parentId": "CwkGjrz", + "injectedFailure": false + } + ], + "checksEnd": 93, + "capturesEnd": 26 + }, + { + "kind": "generated", + "width": 1440, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 93, + "capturesStart": 26, + "stopInput": "pointer", + "stopLatencyMs": 246, + "attempts": [ + { + "id": "DCTq3e5", + "parentId": "ELD6TOD", + "injectedFailure": true + }, + { + "id": "JWxVGxO", + "parentId": "ELD6TOD", + "injectedFailure": true + }, + { + "id": "A9X20LX", + "parentId": "ELD6TOD", + "injectedFailure": false + } + ], + "checksEnd": 115, + "capturesEnd": 32 + }, + { + "kind": "generated", + "width": 1920, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 115, + "capturesStart": 32, + "stopInput": "keyboard", + "stopLatencyMs": 310, + "attempts": [ + { + "id": "Ya9eAAh", + "parentId": "owA9Xnr", + "injectedFailure": true + }, + { + "id": "9HfMPk7", + "parentId": "owA9Xnr", + "injectedFailure": true + }, + { + "id": "o7Vj6EM", + "parentId": "owA9Xnr", + "injectedFailure": false + } + ], + "checksEnd": 137, + "capturesEnd": 38 + }, + { + "kind": "source", + "width": 320, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 137, + "capturesStart": 38, + "stopInput": "pointer", + "stopLatencyMs": 359, + "attempts": [ + { + "id": "Inrr5i9", + "parentId": "hndyC4h", + "injectedFailure": true + }, + { + "id": "8NLVIFE", + "parentId": "hndyC4h", + "injectedFailure": true + }, + { + "id": "BprfVee", + "parentId": "hndyC4h", + "injectedFailure": false + } + ], + "checksEnd": 159, + "capturesEnd": 44 + }, + { + "kind": "source", + "width": 390, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 159, + "capturesStart": 44, + "stopInput": "keyboard", + "stopLatencyMs": 827, + "enlargement": { + "method": "Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.", + "elements": 143, + "documentOverflow": 21, + "changedBounds": [ + { + "class": "na-recovery", + "left": 63, + "right": 363, + "overflow": 0 + }, + { + "class": "na-composer", + "left": 12, + "right": 378, + "overflow": 0 + } + ] + } + } + ], + "captures": [ + { + "name": "generated-empty-320", + "pngSha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 320, + "height": 780, + "top": 64, + "right": 320, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 296, + "height": 128, + "top": 708, + "right": 308, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-320", + "pngSha256": "652934d39f0e3eb65357e59ab2312c57f16fe9c2c2c0e4791e407dc9303dc6ec", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2800, + "clientHeight": 2800, + "box": { + "x": 0, + "y": -1888, + "width": 320, + "height": 2799.546875, + "top": -1888, + "right": 320, + "bottom": 911.546875, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.546875, + "width": 226, + "height": 115, + "top": 629.546875, + "right": 293, + "bottom": 744.546875, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.546875, + "width": 296, + "height": 128, + "top": 775.546875, + "right": 308, + "bottom": 903.546875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1952 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-320", + "pngSha256": "914d34e5c4e3c77a75568bda1683fcad1e85d27ec995dd45cb9ab945c04b56b7", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 5436, + "clientHeight": 5436, + "box": { + "x": 0, + "y": -4592, + "width": 320, + "height": 5436.09375, + "top": -4592, + "right": 320, + "bottom": 844.09375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.09375, + "width": 226, + "height": 115, + "top": 562.09375, + "right": 293, + "bottom": 677.09375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.09375, + "width": 296, + "height": 128, + "top": 708.09375, + "right": 308, + "bottom": 836.09375, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4656 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-320", + "pngSha256": "937c54b96421ca35ca308d9de0682e87350da227de26184abb7a3754220c5cd8", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 5436, + "clientHeight": 5436, + "box": { + "x": 0, + "y": -4592, + "width": 320, + "height": 5436.09375, + "top": -4592, + "right": 320, + "bottom": 844.09375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.09375, + "width": 226, + "height": 115, + "top": 562.09375, + "right": 293, + "bottom": 677.09375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.09375, + "width": 296, + "height": 128, + "top": 708.09375, + "right": 308, + "bottom": 836.09375, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4656 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-320", + "pngSha256": "1ffeaf2cc5fcbb17e9fbc1dd7cfa1d46a42c460804fb45953b888760756df998", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 6737, + "clientHeight": 6737, + "box": { + "x": 0, + "y": -5893, + "width": 320, + "height": 6737.296875, + "top": -5893, + "right": 320, + "bottom": 844.296875, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.296875, + "width": 296, + "height": 128, + "top": 708.296875, + "right": 308, + "bottom": 836.296875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 5957 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-320", + "pngSha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 320, + "height": 780, + "top": 64, + "right": 320, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 296, + "height": 128, + "top": 708, + "right": 308, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-390", + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-390", + "pngSha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2538, + "clientHeight": 2538, + "box": { + "x": 0, + "y": -1626, + "width": 390, + "height": 2537.640625, + "top": -1626, + "right": 390, + "bottom": 911.640625, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.640625, + "width": 296, + "height": 115, + "top": 629.640625, + "right": 363, + "bottom": 744.640625, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.640625, + "width": 366, + "height": 128, + "top": 775.640625, + "right": 378, + "bottom": 903.640625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1690 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-390", + "pngSha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-390", + "pngSha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-text-200-390", + "pngSha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 11658, + "clientHeight": 11658, + "box": { + "x": 0, + "y": -10814, + "width": 390, + "height": 11658.4375, + "top": -10814, + "right": 390, + "bottom": 844.4375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 234, + "clientHeight": 234, + "box": { + "x": 67, + "y": 378.84375, + "width": 296, + "height": 234.59375, + "top": 378.84375, + "right": 363, + "bottom": 613.4375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 192, + "clientHeight": 192, + "box": { + "x": 12, + "y": 644.4375, + "width": 366, + "height": 192, + "top": 644.4375, + "right": 378, + "bottom": 836.4375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 10878 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-390", + "pngSha256": "33ee4ebc7c01a3f826e4b66b873fa57610fce8cd9120df361172a40c3def033d", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 5952, + "clientHeight": 5952, + "box": { + "x": 0, + "y": -5108, + "width": 390, + "height": 5951.578125, + "top": -5108, + "right": 390, + "bottom": 843.578125, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 707.578125, + "width": 366, + "height": 128, + "top": 707.578125, + "right": 378, + "bottom": 835.578125, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 5172 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-accumulated-390", + "pngSha256": "58ba9e90d8ee08e3e4de36315520230539a85f7a6f7aa00c00d551d1faeca633", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 29134, + "clientHeight": 29134, + "box": { + "x": 0, + "y": -28290, + "width": 390, + "height": 29133.890625, + "top": -28290, + "right": 390, + "bottom": 843.890625, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 707.890625, + "width": 366, + "height": 128, + "top": 707.890625, + "right": 378, + "bottom": 835.890625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 28354 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-390", + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-768", + "pngSha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 0, + "y": 64, + "width": 768, + "height": 896, + "top": 64, + "right": 768, + "bottom": 960, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840, + "width": 732, + "height": 112, + "top": 840, + "right": 750, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-768", + "pngSha256": "d2e9ff544a462e6031dbfed0f425caf9bf1472afdadc02b5bd94ef233e6bb442", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1756, + "clientHeight": 1756, + "box": { + "x": 0, + "y": -748, + "width": 768, + "height": 1756.140625, + "top": -748, + "right": 768, + "bottom": 1008.140625, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 73, + "y": 766.140625, + "width": 614.15625, + "height": 91, + "top": 766.140625, + "right": 687.15625, + "bottom": 857.140625, + "left": 73 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 888.140625, + "width": 732, + "height": 112, + "top": 888.140625, + "right": 750, + "bottom": 1000.140625, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 812 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-768", + "pngSha256": "7b29501873ba5b601f6bbb3ef55468f49a159347bf4839eeeb181e5d7bba9710", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3186, + "clientHeight": 3186, + "box": { + "x": 0, + "y": -2226, + "width": 768, + "height": 3186.109375, + "top": -2226, + "right": 768, + "bottom": 960.109375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 73, + "y": 718.109375, + "width": 614.15625, + "height": 91, + "top": 718.109375, + "right": 687.15625, + "bottom": 809.109375, + "left": 73 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840.109375, + "width": 732, + "height": 112, + "top": 840.109375, + "right": 750, + "bottom": 952.109375, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2290 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-768", + "pngSha256": "b04709917a1a7c0571b29d18e84a1f98b2dbc9071ac2689281b8f7e2bde61968", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3186, + "clientHeight": 3186, + "box": { + "x": 0, + "y": -2226, + "width": 768, + "height": 3186.109375, + "top": -2226, + "right": 768, + "bottom": 960.109375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 73, + "y": 718.109375, + "width": 614.15625, + "height": 91, + "top": 718.109375, + "right": 687.15625, + "bottom": 809.109375, + "left": 73 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840.109375, + "width": 732, + "height": 112, + "top": 840.109375, + "right": 750, + "bottom": 952.109375, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2290 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-768", + "pngSha256": "335650ac40dab0dbf9289b21fea9191ed2ed072bd43d63847810d026edb53f08", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3918, + "clientHeight": 3918, + "box": { + "x": 0, + "y": -2958, + "width": 768, + "height": 3918.25, + "top": -2958, + "right": 768, + "bottom": 960.25, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840.25, + "width": 732, + "height": 112, + "top": 840.25, + "right": 750, + "bottom": 952.25, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 3022 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-768", + "pngSha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 0, + "y": 64, + "width": 768, + "height": 896, + "top": 64, + "right": 768, + "bottom": 960, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840, + "width": 732, + "height": 112, + "top": 840, + "right": 750, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-1024", + "pngSha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 52, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 972, + "bottom": 960, + "left": 52 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 954, + "bottom": 952, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-1024", + "pngSha256": "37d80b33fdd0769336860ba760072bca9682e6bef5d683e318a3f1752f3d6596", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1731, + "clientHeight": 1731, + "box": { + "x": 52, + "y": -723, + "width": 920, + "height": 1731.34375, + "top": -723, + "right": 972, + "bottom": 1008.34375, + "left": 52 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 125, + "y": 766.34375, + "width": 730, + "height": 91, + "top": 766.34375, + "right": 855, + "bottom": 857.34375, + "left": 125 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 888.34375, + "width": 884, + "height": 112, + "top": 888.34375, + "right": 954, + "bottom": 1000.34375, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 787 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-1024", + "pngSha256": "8771217ee4017d80a0d96770f8b6102ca307e466c9ce9bc892b162b00d43af5f", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 52, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 972, + "bottom": 959.515625, + "left": 52 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 125, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 855, + "bottom": 808.515625, + "left": 125 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 954, + "bottom": 951.515625, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-1024", + "pngSha256": "56f0f5a4352c57b7c56842dcd6da1f6c90d04dfb46cfae4995994a48995ec2e2", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 52, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 972, + "bottom": 959.515625, + "left": 52 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 125, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 855, + "bottom": 808.515625, + "left": 125 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 954, + "bottom": 951.515625, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-1024", + "pngSha256": "a0f976461b91b9595c61523d38a92ffeb29812b08ec7e43a9539782a8bbb1ad9", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3844, + "clientHeight": 3844, + "box": { + "x": 52, + "y": -2884, + "width": 920, + "height": 3843.859375, + "top": -2884, + "right": 972, + "bottom": 959.859375, + "left": 52 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 839.859375, + "width": 884, + "height": 112, + "top": 839.859375, + "right": 954, + "bottom": 951.859375, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2948 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-1024", + "pngSha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 52, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 972, + "bottom": 960, + "left": 52 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 954, + "bottom": 952, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-1440", + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 260, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1180, + "bottom": 960, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1162, + "bottom": 952, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-1440", + "pngSha256": "83264c4288a5f0b7240a757a12571f7f292902ea890b426b9f4b5318dd3a85c7", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1731, + "clientHeight": 1731, + "box": { + "x": 260, + "y": -723, + "width": 920, + "height": 1731.34375, + "top": -723, + "right": 1180, + "bottom": 1008.34375, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 766.34375, + "width": 730, + "height": 91, + "top": 766.34375, + "right": 1063, + "bottom": 857.34375, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 888.34375, + "width": 884, + "height": 112, + "top": 888.34375, + "right": 1162, + "bottom": 1000.34375, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 787 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-1440", + "pngSha256": "0b0b4496efe9ccd09e844a4e75afb7ff74e37dc54ce08f64911ee322ed830d60", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 260, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1180, + "bottom": 959.515625, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1063, + "bottom": 808.515625, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1162, + "bottom": 951.515625, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-1440", + "pngSha256": "07765375ec1a2f2786cd335ef09b11e6daf43b5625483e646f3c722a6f5b291b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 260, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1180, + "bottom": 959.515625, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1063, + "bottom": 808.515625, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1162, + "bottom": 951.515625, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-1440", + "pngSha256": "a11ca95732178919c8ec6f957d8c8ce1e30376525fda5a4aace5b1870ac31dd2", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3844, + "clientHeight": 3844, + "box": { + "x": 260, + "y": -2884, + "width": 920, + "height": 3843.859375, + "top": -2884, + "right": 1180, + "bottom": 959.859375, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.859375, + "width": 884, + "height": 112, + "top": 839.859375, + "right": 1162, + "bottom": 951.859375, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2948 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-1440", + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 260, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1180, + "bottom": 960, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1162, + "bottom": 952, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-1920", + "pngSha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 500, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1420, + "bottom": 960, + "left": 500 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1402, + "bottom": 952, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-1920", + "pngSha256": "c6e314e7866c16a0a9fb893ab53e708b69d01cf1dfc91e175171021ad1563339", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1731, + "clientHeight": 1731, + "box": { + "x": 500, + "y": -723, + "width": 920, + "height": 1731.34375, + "top": -723, + "right": 1420, + "bottom": 1008.34375, + "left": 500 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 573, + "y": 766.34375, + "width": 730, + "height": 91, + "top": 766.34375, + "right": 1303, + "bottom": 857.34375, + "left": 573 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 888.34375, + "width": 884, + "height": 112, + "top": 888.34375, + "right": 1402, + "bottom": 1000.34375, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 787 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-1920", + "pngSha256": "04ea13ef9f7347a8b3f69e0c6d8cbe277197c38ea5c31a4571154504696a7207", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 500, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1420, + "bottom": 959.515625, + "left": 500 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 573, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1303, + "bottom": 808.515625, + "left": 573 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1402, + "bottom": 951.515625, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-1920", + "pngSha256": "04ea13ef9f7347a8b3f69e0c6d8cbe277197c38ea5c31a4571154504696a7207", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 500, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1420, + "bottom": 959.515625, + "left": 500 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 573, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1303, + "bottom": 808.515625, + "left": 573 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1402, + "bottom": 951.515625, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-1920", + "pngSha256": "ef4cc1b5a4d754bcc95061400b93152dc8aa9b536e221e8b9dec376b3623860d", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3844, + "clientHeight": 3844, + "box": { + "x": 500, + "y": -2884, + "width": 920, + "height": 3843.859375, + "top": -2884, + "right": 1420, + "bottom": 959.859375, + "left": 500 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 839.859375, + "width": 884, + "height": 112, + "top": 839.859375, + "right": 1402, + "bottom": 951.859375, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2948 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-1920", + "pngSha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 500, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1420, + "bottom": 960, + "left": 500 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1402, + "bottom": 952, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-320", + "pngSha256": "568e2afd4346059bf04f2b0deb8addd65edab12ad88a58c2227edbbe093121f9", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 660.21875, + "top": 54, + "right": 320, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 296, + "height": 128.09375, + "top": 578.125, + "right": 308, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-320", + "pngSha256": "8c448d3fd32cd1b5ca352c9351d21eeacc1ae0559334d87e61f86ea29e309495", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1965, + "scrollHeight": 2367, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.53125, + "width": 230, + "height": 111.78125, + "top": 178.53125, + "right": 293, + "bottom": 290.3125, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-320", + "pngSha256": "cc6f45b379d771c0668aa0b3b91b063d3e6383c1d027fd383f9cfb4cfd1aa14f", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3879, + "scrollHeight": 4281, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.90625, + "width": 230, + "height": 111.78125, + "top": 177.90625, + "right": 293, + "bottom": 289.6875, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-320", + "pngSha256": "278b9787b3541a0751be04c65d2eef0bc0e47a7497e3bfa7e81ea2ac9e227243", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3879, + "scrollHeight": 4281, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.90625, + "width": 230, + "height": 111.78125, + "top": 177.90625, + "right": 293, + "bottom": 289.6875, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-320", + "pngSha256": "aae0bbc473d5bb33061e7292e86f728b75b98c130e970f4e7cf422ec104d3214", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 5017, + "scrollHeight": 5419, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-320", + "pngSha256": "79fb416362b6d91c86f3287cf855f7c98c746abe4be85d9bfba3f7cd670956f2", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 660.21875, + "top": 54, + "right": 320, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 296, + "height": 128.09375, + "top": 578.125, + "right": 308, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-390", + "pngSha256": "dca169d5d745c96ded1fdc4b1718da647a0b268d134d505e56c34015b46a025a", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-390", + "pngSha256": "c9b8193629d4921b30345fb06a6739d73cb02d92666237974b52ec3927ff2344", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1675, + "scrollHeight": 2077, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.59375, + "width": 300, + "height": 111.78125, + "top": 178.59375, + "right": 363, + "bottom": 290.375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-390", + "pngSha256": "a786ece230589fc7d50b252978a29f115a647d04be485786fbc73e2ca2e1a188", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-390", + "pngSha256": "3dc67d1b8875ed26535e6908fc3926c332f8245e5c119b612d46676de3483aeb", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-text-200-390", + "pngSha256": "193b20dd5900f7101a9707bab577835645a619596a2b5d76489decf915f42bb8", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 8703, + "scrollHeight": 9166, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 166, + "clientHeight": 166, + "box": { + "x": 63, + "y": 115.75, + "width": 300, + "height": 166.59375, + "top": 115.75, + "right": 363, + "bottom": 282.34375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 196, + "clientHeight": 196, + "box": { + "x": 12, + "y": 251.484375, + "width": 366, + "height": 196.28125, + "top": 251.484375, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 21, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:53193", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-KJOPNLMC.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-3NJXHAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-CUTKHRBT.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-KJOPNLMC.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-3NJXHAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-CUTKHRBT.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-KJOPNLMC.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-3NJXHAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-CUTKHRBT.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-KJOPNLMC.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-3NJXHAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-CUTKHRBT.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-KJOPNLMC.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-3NJXHAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-CUTKHRBT.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-KJOPNLMC.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-3NJXHAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-CUTKHRBT.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-KJOPNLMC.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-3NJXHAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-CUTKHRBT.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-KJOPNLMC.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-3NJXHAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-CUTKHRBT.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-KJOPNLMC.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-3NJXHAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-CUTKHRBT.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-KJOPNLMC.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-3NJXHAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-CUTKHRBT.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-KJOPNLMC.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-3NJXHAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-CUTKHRBT.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-KJOPNLMC.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-3NJXHAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53193", + "path": "/node_modules/.vite/deps/chunk-CUTKHRBT.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:56212", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "error": "AssertionError [ERR_ASSERTION]: source enlarged Retry paints visibly without overlay obstruction 390\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:128:9", + "finishedAt": "2026-09-05T08:44:33.336Z" +} diff --git a/evidence/current-consumer-20260905/historical/d3-final-browser-02/source-error-text-200-390.png b/evidence/current-consumer-20260905/historical/d3-final-browser-02/source-error-text-200-390.png new file mode 100644 index 0000000..d897e10 Binary files /dev/null and b/evidence/current-consumer-20260905/historical/d3-final-browser-02/source-error-text-200-390.png differ diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.html b/evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.html new file mode 100644 index 0000000..547148c --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.png b/evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.png new file mode 100644 index 0000000..6d7d0b7 Binary files /dev/null and b/evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.png differ diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-01/report.json b/evidence/current-consumer-20260905/historical/d3-source-smoke-01/report.json new file mode 100644 index 0000000..57c4ffb --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-source-smoke-01/report.json @@ -0,0 +1,595 @@ +{ + "namedProof": "NODEAGENT-RESPONSE-RECOVERY-01", + "startedAt": "2026-09-05T08:10:15.055Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "8c3c452e944de438b6449be63f5cbc9b38102fa50dc7c5a8e50c2699914c552f", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "04e64097b0c543254f59694d6a85e86f5892ba245ad308780af3013ef1284fb8", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "71d5cc86b7b7b6ed1334814a8c4c170ddf7fd354c1d42134bc98a36f48158ff7", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + }, + "passed": false, + "checks": [ + { + "name": "source-empty-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 320", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 320", + "passed": true + }, + { + "name": "source stopped response has no fake Done 320", + "passed": true + }, + { + "name": "source stopped response remains stable 320", + "passed": true + }, + { + "name": "source-stopped-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 320", + "passed": false + } + ], + "cells": [ + { + "kind": "source", + "width": 320, + "errors": [], + "checksStart": 0, + "capturesStart": 0, + "stopInput": "pointer", + "stopLatencyMs": 375 + } + ], + "captures": [ + { + "name": "source-empty-320", + "pngSha256": "c85c5185e55bd0d8b6bab799439d8e26a7bd82a28fa5e3515df06e08c6a4b4fa", + "state": { + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-320", + "pngSha256": "e591c14a84518a8e6767d19ae673d47b0ed2320d7e92e25f7fd387a33187332c", + "state": { + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:52870", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52870", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "error": "AssertionError [ERR_ASSERTION]: source Stop retains keyboard continuation focus 320\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:96:7", + "finishedAt": "2026-09-05T08:10:24.349Z" +} diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.html b/evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.html new file mode 100644 index 0000000..984253c --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.png b/evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.png new file mode 100644 index 0000000..866f324 Binary files /dev/null and b/evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.png differ diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-02/report.json b/evidence/current-consumer-20260905/historical/d3-source-smoke-02/report.json new file mode 100644 index 0000000..0d6704b --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-source-smoke-02/report.json @@ -0,0 +1,785 @@ +{ + "namedProof": "NODEAGENT-RESPONSE-RECOVERY-01", + "startedAt": "2026-09-05T08:13:35.235Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "1b13c028fb4db0bdf2a7ce91b2a3b9d185a2026b27c068492f3c122c0f1ad7e6", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "2d2644ae39e93b598d8386807d18fb886d1635e68dd38f5903e3a7b5f8be06fb", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "ced9b544ccd3a5df3c45b55d3d48ce007da210a5583b055a2ef450f912fc443a", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + }, + "passed": false, + "checks": [ + { + "name": "source-empty-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 320", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 320", + "passed": true + }, + { + "name": "source stopped response has no fake Done 320", + "passed": true + }, + { + "name": "source stopped response remains stable 320", + "passed": true + }, + { + "name": "source-stopped-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 320", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 320", + "passed": true + }, + { + "name": "source partial failure names failed tool 320", + "passed": true + }, + { + "name": "source failed response does not retry automatically 320", + "passed": true + }, + { + "name": "source-error-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source explicit Retry runs once despite repeated activation 320", + "passed": false + } + ], + "cells": [ + { + "kind": "source", + "width": 320, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 0, + "capturesStart": 0, + "stopInput": "pointer", + "stopLatencyMs": 357 + } + ], + "captures": [ + { + "name": "source-empty-320", + "pngSha256": "a62e4eb88af10918e0ad7ad40deb6f0c6e3e9482bada71e9a316054d12f14e44", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 660.21875, + "top": 54, + "right": 320, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 296, + "height": 128.09375, + "top": 578.125, + "right": 308, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-320", + "pngSha256": "8f741d23900da1ac6519a07a17e9472960deae6ceace4f445530a413d22d4083", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1965, + "scrollHeight": 2367, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.53125, + "width": 230, + "height": 111.78125, + "top": 178.53125, + "right": 293, + "bottom": 290.3125, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-320", + "pngSha256": "89ae3381d45815aae413f4eee9c4a12c30d6c099aff2876fc20c1f983198b21d", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3879, + "scrollHeight": 4281, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.90625, + "width": 230, + "height": 111.78125, + "top": 177.90625, + "right": 293, + "bottom": 289.6875, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:53801", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53801", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "error": "AssertionError [ERR_ASSERTION]: source explicit Retry runs once despite repeated activation 320\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:105:32", + "finishedAt": "2026-09-05T08:13:48.971Z" +} diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.html b/evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.html new file mode 100644 index 0000000..8a61dbc --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.png b/evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.png new file mode 100644 index 0000000..fa1e3e0 Binary files /dev/null and b/evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.png differ diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-03/report.json b/evidence/current-consumer-20260905/historical/d3-source-smoke-03/report.json new file mode 100644 index 0000000..2f14786 --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-source-smoke-03/report.json @@ -0,0 +1,786 @@ +{ + "namedProof": "NODEAGENT-RESPONSE-RECOVERY-01", + "startedAt": "2026-09-05T08:15:50.311Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "1b13c028fb4db0bdf2a7ce91b2a3b9d185a2026b27c068492f3c122c0f1ad7e6", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "2d2644ae39e93b598d8386807d18fb886d1635e68dd38f5903e3a7b5f8be06fb", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "46d5bc98ecf4282a93c5e542321be060994f815e6f8c0e5fcec57160d3b95175", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + }, + "passed": false, + "checks": [ + { + "name": "source-empty-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 320", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 320", + "passed": true + }, + { + "name": "source stopped response has no fake Done 320", + "passed": true + }, + { + "name": "source stopped response remains stable 320", + "passed": true + }, + { + "name": "source-stopped-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 320", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 320", + "passed": true + }, + { + "name": "source partial failure names failed tool 320", + "passed": true + }, + { + "name": "source failed response does not retry automatically 320", + "passed": true + }, + { + "name": "source-error-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source explicit Retry runs once despite repeated activation 320", + "passed": false + } + ], + "cells": [ + { + "kind": "source", + "width": 320, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 0, + "capturesStart": 0, + "stopInput": "pointer", + "stopLatencyMs": 358, + "actualRecoveryStarts": 2 + } + ], + "captures": [ + { + "name": "source-empty-320", + "pngSha256": "cb6b31cbc124638e6bd64c50e178278dc4a11031daa0cff5d3c518fa4b85eabf", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 660.21875, + "top": 54, + "right": 320, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 296, + "height": 128.09375, + "top": 578.125, + "right": 308, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-320", + "pngSha256": "b0e274d75f19400abfe6634650b2152cb9a142ab092e1d85444a35895c1fd6c8", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1965, + "scrollHeight": 2367, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.53125, + "width": 230, + "height": 111.78125, + "top": 178.53125, + "right": 293, + "bottom": 290.3125, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-320", + "pngSha256": "89ae3381d45815aae413f4eee9c4a12c30d6c099aff2876fc20c1f983198b21d", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3879, + "scrollHeight": 4281, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.90625, + "width": 230, + "height": 111.78125, + "top": 177.90625, + "right": 293, + "bottom": 289.6875, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:51622", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51622", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "error": "AssertionError [ERR_ASSERTION]: source explicit Retry runs once despite repeated activation 320\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:105:114", + "finishedAt": "2026-09-05T08:16:03.891Z" +} diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.html b/evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.html new file mode 100644 index 0000000..b588ced --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.png b/evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.png new file mode 100644 index 0000000..866f324 Binary files /dev/null and b/evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.png differ diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-04/report.json b/evidence/current-consumer-20260905/historical/d3-source-smoke-04/report.json new file mode 100644 index 0000000..d6b60a0 --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-source-smoke-04/report.json @@ -0,0 +1,786 @@ +{ + "namedProof": "NODEAGENT-RESPONSE-RECOVERY-01", + "startedAt": "2026-09-05T08:17:01.327Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "737689cbaac3caae9670c023437877eefe34d611286947e8899e8e1ee6959efa", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "90c6194898c4330a140b84731928e1573141e96db88158173539d93fe4de12c4", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "46d5bc98ecf4282a93c5e542321be060994f815e6f8c0e5fcec57160d3b95175", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + }, + "passed": false, + "checks": [ + { + "name": "source-empty-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 320", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 320", + "passed": true + }, + { + "name": "source stopped response has no fake Done 320", + "passed": true + }, + { + "name": "source stopped response remains stable 320", + "passed": true + }, + { + "name": "source-stopped-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 320", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 320", + "passed": true + }, + { + "name": "source partial failure names failed tool 320", + "passed": true + }, + { + "name": "source failed response does not retry automatically 320", + "passed": true + }, + { + "name": "source-error-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source explicit Retry runs once despite repeated activation 320", + "passed": false + } + ], + "cells": [ + { + "kind": "source", + "width": 320, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 0, + "capturesStart": 0, + "stopInput": "pointer", + "stopLatencyMs": 356, + "actualRecoveryStarts": 2 + } + ], + "captures": [ + { + "name": "source-empty-320", + "pngSha256": "98dc080209cd6f14ac11bcc9726183569949d2d13231b5ae898dd58e1b86cc7d", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 660.21875, + "top": 54, + "right": 320, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 296, + "height": 128.09375, + "top": 578.125, + "right": 308, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-320", + "pngSha256": "ccaada8afa071a53b08266800f5791ab5c3cdb62f8086e801f31af29c15415ff", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1965, + "scrollHeight": 2367, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.53125, + "width": 230, + "height": 111.78125, + "top": 178.53125, + "right": 293, + "bottom": 290.3125, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-320", + "pngSha256": "1b874406803534997b0927890775f53a85b7eb9048223f46563ba57faaea8fdc", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3879, + "scrollHeight": 4281, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.90625, + "width": 230, + "height": 111.78125, + "top": 177.90625, + "right": 293, + "bottom": 289.6875, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:50088", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:50088", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "error": "AssertionError [ERR_ASSERTION]: source explicit Retry runs once despite repeated activation 320\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:105:114", + "finishedAt": "2026-09-05T08:17:14.966Z" +} diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.html b/evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.html new file mode 100644 index 0000000..9c1393a --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.png b/evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.png new file mode 100644 index 0000000..f523340 Binary files /dev/null and b/evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.png differ diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-05/report.json b/evidence/current-consumer-20260905/historical/d3-source-smoke-05/report.json new file mode 100644 index 0000000..73f061e --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-source-smoke-05/report.json @@ -0,0 +1,1912 @@ +{ + "namedProof": "NODEAGENT-RESPONSE-RECOVERY-01", + "startedAt": "2026-09-05T08:20:16.028Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "46d5bc98ecf4282a93c5e542321be060994f815e6f8c0e5fcec57160d3b95175", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + }, + "passed": false, + "checks": [ + { + "name": "source-empty-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 320", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 320", + "passed": true + }, + { + "name": "source stopped response has no fake Done 320", + "passed": true + }, + { + "name": "source stopped response remains stable 320", + "passed": true + }, + { + "name": "source-stopped-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 320", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 320", + "passed": true + }, + { + "name": "source partial failure names failed tool 320", + "passed": true + }, + { + "name": "source failed response does not retry automatically 320", + "passed": true + }, + { + "name": "source-error-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source explicit Retry runs once despite repeated activation 320", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 320", + "passed": true + }, + { + "name": "source recovered response removes failure notice 320", + "passed": true + }, + { + "name": "source-recovered-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 320", + "passed": true + }, + { + "name": "source-reloaded-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 320", + "passed": true + }, + { + "name": "source-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "source stopped response has no fake Done 390", + "passed": true + }, + { + "name": "source stopped response remains stable 390", + "passed": true + }, + { + "name": "source-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "source partial failure names failed tool 390", + "passed": true + }, + { + "name": "source failed response does not retry automatically 390", + "passed": true + }, + { + "name": "source-error-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source explicit Retry runs once despite repeated activation 390", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 390", + "passed": true + }, + { + "name": "source recovered response removes failure notice 390", + "passed": true + }, + { + "name": "source-recovered-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source-accumulated-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source-text-200-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source doubled computed text reflows 390", + "passed": false + } + ], + "cells": [ + { + "kind": "source", + "width": 320, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 0, + "capturesStart": 0, + "stopInput": "pointer", + "stopLatencyMs": 344, + "actualRecoveryStarts": 1, + "checksEnd": 18, + "capturesEnd": 5 + }, + { + "kind": "source", + "width": 390, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 18, + "capturesStart": 5, + "stopInput": "keyboard", + "stopLatencyMs": 852, + "actualRecoveryStarts": 1, + "accumulation": { + "additionalTurns": 12, + "totalResponses": 15, + "toolCards": 60, + "elapsedMs": 29374 + } + } + ], + "captures": [ + { + "name": "source-empty-320", + "pngSha256": "a62e4eb88af10918e0ad7ad40deb6f0c6e3e9482bada71e9a316054d12f14e44", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 660.21875, + "top": 54, + "right": 320, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 296, + "height": 128.09375, + "top": 578.125, + "right": 308, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-320", + "pngSha256": "8f741d23900da1ac6519a07a17e9472960deae6ceace4f445530a413d22d4083", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1965, + "scrollHeight": 2367, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.53125, + "width": 230, + "height": 111.78125, + "top": 178.53125, + "right": 293, + "bottom": 290.3125, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-320", + "pngSha256": "1b874406803534997b0927890775f53a85b7eb9048223f46563ba57faaea8fdc", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3879, + "scrollHeight": 4281, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.90625, + "width": 230, + "height": 111.78125, + "top": 177.90625, + "right": 293, + "bottom": 289.6875, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-320", + "pngSha256": "13fdddffd8c3b781d6d79ab01d2b2f5a62b86bd1938306333bfa85e51c4e40c0", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 5017, + "scrollHeight": 5419, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-320", + "pngSha256": "cb6b31cbc124638e6bd64c50e178278dc4a11031daa0cff5d3c518fa4b85eabf", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 660.21875, + "top": 54, + "right": 320, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 296, + "height": 128.09375, + "top": 578.125, + "right": 308, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-390", + "pngSha256": "75090e3ee26ca99cec746074a56f5980f0c4d90d76399c5138f03af7c34252d1", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-390", + "pngSha256": "9f963b9226caf17dcd550c724b3a0fa9271d817d46034ce5e46c345d1d71978e", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1675, + "scrollHeight": 2077, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.59375, + "width": 300, + "height": 111.78125, + "top": 178.59375, + "right": 363, + "bottom": 290.375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-390", + "pngSha256": "ab2219df2251728fbe2fb90a3281f12b9b0e10c5999dcae5820a35355866f8ed", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-390", + "pngSha256": "387331c3501db66c2cdf060fc9e9740815d74454ce3e28521c4f0fbd199619f7", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 4273, + "scrollHeight": 4675, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-accumulated-390", + "pngSha256": "fede949eae9d1b81770ccb35c27e1a5a1c421445adfadec7c5106521b27cc948", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 22365, + "scrollHeight": 22767, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.609375, + "width": 366, + "height": 128.09375, + "top": 319.609375, + "right": 378, + "bottom": 447.703125, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-text-200-390", + "pngSha256": "b9f14a4ecc6115041985c2074697fc0220d0f135a30a93e9b609c049d232d796", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 57701, + "scrollHeight": 58746, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 196, + "clientHeight": 196, + "box": { + "x": 12, + "y": 251.484375, + "width": 366, + "height": 196.28125, + "top": 251.484375, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 21, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:59668", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59668", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "error": "AssertionError [ERR_ASSERTION]: source doubled computed text reflows 390\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:114:71", + "finishedAt": "2026-09-05T08:21:13.947Z" +} diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-05/source-text-200-390.png b/evidence/current-consumer-20260905/historical/d3-source-smoke-05/source-text-200-390.png new file mode 100644 index 0000000..ec7aca5 Binary files /dev/null and b/evidence/current-consumer-20260905/historical/d3-source-smoke-05/source-text-200-390.png differ diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-06/report.json b/evidence/current-consumer-20260905/historical/d3-source-smoke-06/report.json new file mode 100644 index 0000000..f7811bd --- /dev/null +++ b/evidence/current-consumer-20260905/historical/d3-source-smoke-06/report.json @@ -0,0 +1,6826 @@ +{ + "namedProof": "NODEAGENT-RESPONSE-RECOVERY-01", + "startedAt": "2026-09-05T08:27:22.562Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "3a58f8d185cbbedbdb95f2a687f009d3a0513e284220f2dcca0ac1475ae45512", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + }, + "passed": true, + "checks": [ + { + "name": "source-empty-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 320", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 320", + "passed": true + }, + { + "name": "source stopped response has no fake Done 320", + "passed": true + }, + { + "name": "source stopped response remains stable 320", + "passed": true + }, + { + "name": "source-stopped-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 320", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 320", + "passed": true + }, + { + "name": "source partial failure names failed tool 320", + "passed": true + }, + { + "name": "source failed response does not retry automatically 320", + "passed": true + }, + { + "name": "source-error-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 320", + "passed": true + }, + { + "name": "source-error-again-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 320", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 320", + "passed": true + }, + { + "name": "source retries retain the same user parent 320", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 320", + "passed": true + }, + { + "name": "source recovered response removes failure notice 320", + "passed": true + }, + { + "name": "source-recovered-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 320", + "passed": true + }, + { + "name": "source-reloaded-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 320", + "passed": true + }, + { + "name": "source-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "source stopped response has no fake Done 390", + "passed": true + }, + { + "name": "source stopped response remains stable 390", + "passed": true + }, + { + "name": "source-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "source partial failure names failed tool 390", + "passed": true + }, + { + "name": "source failed response does not retry automatically 390", + "passed": true + }, + { + "name": "source-error-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 390", + "passed": true + }, + { + "name": "source-error-again-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source-error-text-200-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source enlarged recovery and composer fit 390", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 390", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 390", + "passed": true + }, + { + "name": "source retries retain the same user parent 390", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 390", + "passed": true + }, + { + "name": "source recovered response removes failure notice 390", + "passed": true + }, + { + "name": "source-recovered-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source-accumulated-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 390", + "passed": true + }, + { + "name": "source-reloaded-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 390", + "passed": true + }, + { + "name": "source-empty-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 768", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 768", + "passed": true + }, + { + "name": "source stopped response has no fake Done 768", + "passed": true + }, + { + "name": "source stopped response remains stable 768", + "passed": true + }, + { + "name": "source-stopped-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 768", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 768", + "passed": true + }, + { + "name": "source partial failure names failed tool 768", + "passed": true + }, + { + "name": "source failed response does not retry automatically 768", + "passed": true + }, + { + "name": "source-error-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 768", + "passed": true + }, + { + "name": "source-error-again-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 768", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 768", + "passed": true + }, + { + "name": "source retries retain the same user parent 768", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 768", + "passed": true + }, + { + "name": "source recovered response removes failure notice 768", + "passed": true + }, + { + "name": "source-recovered-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 768", + "passed": true + }, + { + "name": "source-reloaded-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 768", + "passed": true + }, + { + "name": "source-empty-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 1024", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 1024", + "passed": true + }, + { + "name": "source stopped response has no fake Done 1024", + "passed": true + }, + { + "name": "source stopped response remains stable 1024", + "passed": true + }, + { + "name": "source-stopped-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 1024", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 1024", + "passed": true + }, + { + "name": "source partial failure names failed tool 1024", + "passed": true + }, + { + "name": "source failed response does not retry automatically 1024", + "passed": true + }, + { + "name": "source-error-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 1024", + "passed": true + }, + { + "name": "source-error-again-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 1024", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 1024", + "passed": true + }, + { + "name": "source retries retain the same user parent 1024", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 1024", + "passed": true + }, + { + "name": "source recovered response removes failure notice 1024", + "passed": true + }, + { + "name": "source-recovered-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 1024", + "passed": true + }, + { + "name": "source-reloaded-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 1024", + "passed": true + }, + { + "name": "source-empty-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 1440", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 1440", + "passed": true + }, + { + "name": "source stopped response has no fake Done 1440", + "passed": true + }, + { + "name": "source stopped response remains stable 1440", + "passed": true + }, + { + "name": "source-stopped-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 1440", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 1440", + "passed": true + }, + { + "name": "source partial failure names failed tool 1440", + "passed": true + }, + { + "name": "source failed response does not retry automatically 1440", + "passed": true + }, + { + "name": "source-error-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 1440", + "passed": true + }, + { + "name": "source-error-again-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 1440", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 1440", + "passed": true + }, + { + "name": "source retries retain the same user parent 1440", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 1440", + "passed": true + }, + { + "name": "source recovered response removes failure notice 1440", + "passed": true + }, + { + "name": "source-recovered-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 1440", + "passed": true + }, + { + "name": "source-reloaded-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 1440", + "passed": true + }, + { + "name": "source-empty-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 1920", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 1920", + "passed": true + }, + { + "name": "source stopped response has no fake Done 1920", + "passed": true + }, + { + "name": "source stopped response remains stable 1920", + "passed": true + }, + { + "name": "source-stopped-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 1920", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 1920", + "passed": true + }, + { + "name": "source partial failure names failed tool 1920", + "passed": true + }, + { + "name": "source failed response does not retry automatically 1920", + "passed": true + }, + { + "name": "source-error-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 1920", + "passed": true + }, + { + "name": "source-error-again-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 1920", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 1920", + "passed": true + }, + { + "name": "source retries retain the same user parent 1920", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 1920", + "passed": true + }, + { + "name": "source recovered response removes failure notice 1920", + "passed": true + }, + { + "name": "source-recovered-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 1920", + "passed": true + }, + { + "name": "source-reloaded-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 1920", + "passed": true + }, + { + "name": "no browser writes or provider requests", + "passed": true + } + ], + "cells": [ + { + "kind": "source", + "width": 320, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 0, + "capturesStart": 0, + "stopInput": "pointer", + "stopLatencyMs": 358, + "attempts": [ + { + "id": "HlDaDzh", + "parentId": "AeegTul", + "injectedFailure": true + }, + { + "id": "3sweW6H", + "parentId": "AeegTul", + "injectedFailure": true + }, + { + "id": "1jmLouN", + "parentId": "AeegTul", + "injectedFailure": false + } + ], + "checksEnd": 22, + "capturesEnd": 6 + }, + { + "kind": "source", + "width": 390, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 22, + "capturesStart": 6, + "stopInput": "keyboard", + "stopLatencyMs": 329, + "enlargement": { + "method": "Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.", + "elements": 143, + "documentOverflow": 21, + "changedBounds": [ + { + "class": "na-recovery", + "left": 63, + "right": 363, + "overflow": 0 + }, + { + "class": "na-composer", + "left": 12, + "right": 378, + "overflow": 0 + } + ] + }, + "attempts": [ + { + "id": "8ghd6wB", + "parentId": "ht6xHjz", + "injectedFailure": true + }, + { + "id": "sMdP4Aq", + "parentId": "ht6xHjz", + "injectedFailure": true + }, + { + "id": "pLxyeJt", + "parentId": "ht6xHjz", + "injectedFailure": false + } + ], + "accumulation": { + "additionalTurns": 12, + "totalResponses": 15, + "toolCards": 60, + "elapsedMs": 29514 + }, + "checksEnd": 47, + "capturesEnd": 14 + }, + { + "kind": "source", + "width": 768, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 47, + "capturesStart": 14, + "stopInput": "pointer", + "stopLatencyMs": 356, + "attempts": [ + { + "id": "hfEWobZ", + "parentId": "j7BwrHx", + "injectedFailure": true + }, + { + "id": "Ux0JcRq", + "parentId": "j7BwrHx", + "injectedFailure": true + }, + { + "id": "SRDuFuG", + "parentId": "j7BwrHx", + "injectedFailure": false + } + ], + "checksEnd": 69, + "capturesEnd": 20 + }, + { + "kind": "source", + "width": 1024, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 69, + "capturesStart": 20, + "stopInput": "keyboard", + "stopLatencyMs": 824, + "attempts": [ + { + "id": "h1n2cbz", + "parentId": "g4zGbMQ", + "injectedFailure": true + }, + { + "id": "d9gmYT9", + "parentId": "g4zGbMQ", + "injectedFailure": true + }, + { + "id": "sltTyPl", + "parentId": "g4zGbMQ", + "injectedFailure": false + } + ], + "checksEnd": 91, + "capturesEnd": 26 + }, + { + "kind": "source", + "width": 1440, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 91, + "capturesStart": 26, + "stopInput": "pointer", + "stopLatencyMs": 357, + "attempts": [ + { + "id": "ij5mjZB", + "parentId": "9OGAS8Q", + "injectedFailure": true + }, + { + "id": "PtUF40Y", + "parentId": "9OGAS8Q", + "injectedFailure": true + }, + { + "id": "Ln4URN3", + "parentId": "9OGAS8Q", + "injectedFailure": false + } + ], + "checksEnd": 113, + "capturesEnd": 32 + }, + { + "kind": "source", + "width": 1920, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 113, + "capturesStart": 32, + "stopInput": "keyboard", + "stopLatencyMs": 824, + "attempts": [ + { + "id": "mGPDjjm", + "parentId": "o2WcVsX", + "injectedFailure": true + }, + { + "id": "KJcTzt0", + "parentId": "o2WcVsX", + "injectedFailure": true + }, + { + "id": "fnfRusM", + "parentId": "o2WcVsX", + "injectedFailure": false + } + ], + "checksEnd": 135, + "capturesEnd": 38 + } + ], + "captures": [ + { + "name": "source-empty-320", + "pngSha256": "a62e4eb88af10918e0ad7ad40deb6f0c6e3e9482bada71e9a316054d12f14e44", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 660.21875, + "top": 54, + "right": 320, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 296, + "height": 128.09375, + "top": 578.125, + "right": 308, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-320", + "pngSha256": "ccaada8afa071a53b08266800f5791ab5c3cdb62f8086e801f31af29c15415ff", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1965, + "scrollHeight": 2367, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.53125, + "width": 230, + "height": 111.78125, + "top": 178.53125, + "right": 293, + "bottom": 290.3125, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-320", + "pngSha256": "a3000704299774e69700084809662ab76da606d210160d88189d0fe7ff17be79", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3879, + "scrollHeight": 4281, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.90625, + "width": 230, + "height": 111.78125, + "top": 177.90625, + "right": 293, + "bottom": 289.6875, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-320", + "pngSha256": "a6f3f3324a259dbf39bb3caa397eb546448e31f5f001a75f0c6b49511a139205", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3879, + "scrollHeight": 4281, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.90625, + "width": 230, + "height": 111.78125, + "top": 177.90625, + "right": 293, + "bottom": 289.6875, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-320", + "pngSha256": "ca29b2ea17fde271e523fb07c18dd862aed70c6fc0255255db6061d7f7910cb5", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 5017, + "scrollHeight": 5419, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-320", + "pngSha256": "98dc080209cd6f14ac11bcc9726183569949d2d13231b5ae898dd58e1b86cc7d", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 660.21875, + "top": 54, + "right": 320, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 296, + "height": 128.09375, + "top": 578.125, + "right": 308, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-390", + "pngSha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-390", + "pngSha256": "bb4bac2ce3bca723d926018f88778569b64d46b0ebb2b520aedee64de7430e19", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1675, + "scrollHeight": 2077, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.59375, + "width": 300, + "height": 111.78125, + "top": 178.59375, + "right": 363, + "bottom": 290.375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-390", + "pngSha256": "4e3e5dfc733a6d4eede6536dd5ff487fba6017b01d599ec91edd8ac0a64d96c2", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-390", + "pngSha256": "7b0473a0f335270e867c0e94af6275012e6795b0017668b6eb1873c7a3935b79", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-text-200-390", + "pngSha256": "56b259eda21b5dfaf35dc3cf4fa1805de6647b760a8a572b778fd63471888c5a", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 8261, + "scrollHeight": 9166, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 166, + "clientHeight": 166, + "box": { + "x": 63, + "y": 557.75, + "width": 300, + "height": 166.59375, + "top": 557.75, + "right": 363, + "bottom": 724.34375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 196, + "clientHeight": 196, + "box": { + "x": 12, + "y": 251.484375, + "width": 366, + "height": 196.28125, + "top": 251.484375, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 21, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-390", + "pngSha256": "c0c07d0e4a6b50da3e79da58e138b342091d9f39860bd907044bd94060fa4e45", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 4273, + "scrollHeight": 4675, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-accumulated-390", + "pngSha256": "35a988e8314ee6b5817cf9bc71068740d66e29a11178029646ce23f2fe630de7", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 22365, + "scrollHeight": 22767, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.609375, + "width": 366, + "height": 128.09375, + "top": 319.609375, + "right": 378, + "bottom": 447.703125, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-390", + "pngSha256": "75090e3ee26ca99cec746074a56f5980f0c4d90d76399c5138f03af7c34252d1", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-768", + "pngSha256": "f2d9e60ecedbee55a44bdde8f1a2dd8636222f13c58b450160eb0daa25bbb5ef", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 795, + "clientHeight": 795, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 794.8125, + "top": 54, + "right": 768, + "bottom": 848.8125, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 729.765625, + "width": 732, + "height": 111.046875, + "top": 729.765625, + "right": 750, + "bottom": 840.8125, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-768", + "pngSha256": "14d3e7742c8e9d21db565f3de73b43c0b4a0fb275c91cd033814746e295ea0be", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1209, + "scrollHeight": 1673, + "clientHeight": 464, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 464.40625, + "top": 54, + "right": 768, + "bottom": 518.40625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 279.09375, + "width": 614.15625, + "height": 89.390625, + "top": 279.09375, + "right": 683.15625, + "bottom": 368.484375, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 398.484375, + "width": 732, + "height": 111.046875, + "top": 398.484375, + "right": 750, + "bottom": 509.53125, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-768", + "pngSha256": "7c2e19d58749a6ce8714fde1eab9403d2547f4ef053bc107b6948cba27fb72e0", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2568, + "scrollHeight": 3032, + "clientHeight": 464, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 464.40625, + "top": 54, + "right": 768, + "bottom": 518.40625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 279.1875, + "width": 614.15625, + "height": 89.390625, + "top": 279.1875, + "right": 683.15625, + "bottom": 368.578125, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 398.578125, + "width": 732, + "height": 111.046875, + "top": 398.578125, + "right": 750, + "bottom": 509.625, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-768", + "pngSha256": "26f7e9fa8f37e15d137db72c3a7c6baa46ac5b586d9743e3645904d4257cda78", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2568, + "scrollHeight": 3032, + "clientHeight": 464, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 464.40625, + "top": 54, + "right": 768, + "bottom": 518.40625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 279.1875, + "width": 614.15625, + "height": 89.390625, + "top": 279.1875, + "right": 683.15625, + "bottom": 368.578125, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 398.578125, + "width": 732, + "height": 111.046875, + "top": 398.578125, + "right": 750, + "bottom": 509.625, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-768", + "pngSha256": "7df6bf7e74959f306e582b5c252ccab34f4ba24a987bcf8281ec89c94ef91755", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3283, + "scrollHeight": 3747, + "clientHeight": 464, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 464.40625, + "top": 54, + "right": 768, + "bottom": 518.40625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 398.9375, + "width": 732, + "height": 111.046875, + "top": 398.9375, + "right": 750, + "bottom": 509.984375, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-768", + "pngSha256": "82769be9f986f6b5216f6e827249cd81ad8dd1d62db4f0d15305710a78d8ab2d", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 795, + "clientHeight": 795, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 794.8125, + "top": 54, + "right": 768, + "bottom": 848.8125, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 729.765625, + "width": 732, + "height": 111.046875, + "top": 729.765625, + "right": 750, + "bottom": 840.8125, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-1024", + "pngSha256": "e23b57298adb8e30ed14961e8045fc74e864a36b8afc297ef6c767dbed2f8435", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-1024", + "pngSha256": "3cc35a6e8f5f95c1947236414da28659aa34eb8bf797b4d3cb87d9c29bb07f87", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 867, + "scrollHeight": 1773, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 729.859375, + "width": 522.625, + "height": 89.390625, + "top": 729.859375, + "right": 591.625, + "bottom": 819.25, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-1024", + "pngSha256": "0f9ebdb80f39c62b75fda7be00ca79e8a657e7891c908cbf721b807f6618e639", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2290, + "scrollHeight": 3196, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 729.9375, + "width": 522.625, + "height": 89.390625, + "top": 729.9375, + "right": 591.625, + "bottom": 819.328125, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-1024", + "pngSha256": "0b026b4293ee031a49b29d0e8f985914dbccc3beca60f018a7f69ed95331313b", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2290, + "scrollHeight": 3196, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 729.9375, + "width": 522.625, + "height": 89.390625, + "top": 729.9375, + "right": 591.625, + "bottom": 819.328125, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-1024", + "pngSha256": "6df5186228050c2598687727f314e35f1d60a12c090e3f8e33fa8f00dddfe77f", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3025, + "scrollHeight": 3931, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.890625, + "width": 628, + "height": 103.046875, + "top": 848.890625, + "right": 646, + "bottom": 951.9375, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-1024", + "pngSha256": "28a5b8cbc04f9676ec6e93efc0abef0dc688bfc28e428e1f11dde8ad94a15047", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-1440", + "pngSha256": "a6c2b56f63f22462a80c912197c44667a82ed86b39441d288576277765e809d8", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-1440", + "pngSha256": "0c84fee8e71f8fe73050d19b46d2a5c25f7f57fba5a0eff30f87f6ff71a6789c", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 738, + "scrollHeight": 1644, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.296875, + "width": 659.90625, + "height": 89.390625, + "top": 729.296875, + "right": 858.90625, + "bottom": 818.6875, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.6875, + "width": 784, + "height": 103.046875, + "top": 848.6875, + "right": 932, + "bottom": 951.734375, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-1440", + "pngSha256": "25c7da2f16357da66bcb591af0d2d2f9a133a2682235c6bc23ede9def2dd9271", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 858.90625, + "bottom": 818.984375, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-1440", + "pngSha256": "63028c477f51793f646aab18162a221d00c9533235ef0026aebc006be43424fd", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 858.90625, + "bottom": 818.984375, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-1440", + "pngSha256": "e1719c7b6a5ea6b782290d9d3e1b00a2fc8beaf73fb471d3edbb3865fa88bae6", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2771, + "scrollHeight": 3677, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.546875, + "width": 784, + "height": 103.046875, + "top": 848.546875, + "right": 932, + "bottom": 951.59375, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-1440", + "pngSha256": "7eace4db2622037e322f95a1aea5487b5ebc43e601ea6dcb2b2c6f4bc27995be", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-1920", + "pngSha256": "4e42b30f2dd51449a47526f0f9eb3415ce29b0db21b3c2c31bcdf66099c94e53", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 1172, + "bottom": 952, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-1920", + "pngSha256": "ec7c6bcc7b16f2c5d4981d183e82fe28a21e1381966e17ec9a465e3d8cf25519", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 738, + "scrollHeight": 1644, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 439, + "y": 729.296875, + "width": 659.90625, + "height": 89.390625, + "top": 729.296875, + "right": 1098.90625, + "bottom": 818.6875, + "left": 439 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.6875, + "width": 784, + "height": 103.046875, + "top": 848.6875, + "right": 1172, + "bottom": 951.734375, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-1920", + "pngSha256": "9c9b46760e24c61c532bdd4d51910e7074a72ccf37faa6ab41a2e4bc89b479fc", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 439, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 1098.90625, + "bottom": 818.984375, + "left": 439 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 1172, + "bottom": 952, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-1920", + "pngSha256": "696d6eac2d8e944cafeb0917cbb317a01398f6cf8536784efaadffdd8233e554", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 439, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 1098.90625, + "bottom": 818.984375, + "left": 439 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 1172, + "bottom": 952, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-1920", + "pngSha256": "42325096862498e70576503c3f81a947063850b985099003798ba3d192c891bc", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2771, + "scrollHeight": 3677, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.546875, + "width": 784, + "height": 103.046875, + "top": 848.546875, + "right": 1172, + "bottom": 951.59375, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-1920", + "pngSha256": "ff1573b712c74f25a18aecda6427387f9aefa6671fb71abfe112067502070c83", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 1172, + "bottom": 952, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:63684", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:63684", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "sourceAfter": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "3a58f8d185cbbedbdb95f2a687f009d3a0513e284220f2dcca0ac1475ae45512", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerAfter": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + }, + "finishedAt": "2026-09-05T08:29:26.600Z" +} diff --git a/evidence/current-consumer-20260905/historical/d3-source-smoke-06/source-error-text-200-390.png b/evidence/current-consumer-20260905/historical/d3-source-smoke-06/source-error-text-200-390.png new file mode 100644 index 0000000..f6d5dab Binary files /dev/null and b/evidence/current-consumer-20260905/historical/d3-source-smoke-06/source-error-text-200-390.png differ diff --git a/evidence/current-consumer-20260905/historical/first-submit-dependency-comparison-01/report.json b/evidence/current-consumer-20260905/historical/first-submit-dependency-comparison-01/report.json new file mode 100644 index 0000000..e9ad9ba --- /dev/null +++ b/evidence/current-consumer-20260905/historical/first-submit-dependency-comparison-01/report.json @@ -0,0 +1,756 @@ +{ + "causalOnly": true, + "dependencyOverride": "Canonical installed assistant-ui/react 0.14.14 + React 19.2.7 via diagnostic Vite aliases; generated files and installed package remain unchanged. This is not a repaired installed consumer.", + "startedAt": "2026-09-05T07:32:29.650Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "examples/apps/chat-ui/template/src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "src/features/node-agent/components/toolUIs.tsx": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc" + }, + "cells": [ + { + "kind": "generated", + "width": 390, + "errors": [], + "captures": [ + { + "name": "generated-empty-390", + "pngSha256": "b3dc0946e573686d6817bde2edd771bd38d4e01856e8d8625579de0b1fa64465", + "state": { + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "scrollWidth": 390, + "width": 390, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-390", + "boxes": [ + { + "selector": ".naComposer", + "x": 30, + "y": 836, + "width": 330, + "height": 56 + } + ], + "pngSha256": "2aa7abe3ddbff2965e41760d01e6c4ab9176d158263d3cf5e5844037d373f88e" + }, + { + "name": "generated-first-submit-390", + "pngSha256": "2e31687baa9048bd319bbdfac38b9ea6d6ed1d3efdcae0a9af886f5a8f9b12ca", + "state": { + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local no-key MVP path work?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "scrollWidth": 390, + "width": 390, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-first-submit-390", + "boxes": [ + { + "selector": "body", + "x": 0, + "y": 0, + "width": 390, + "height": 2127.0625 + } + ], + "pngSha256": "65e0edc3a316c5155dbde9af717c5c5238b262872320ee6716b437c74fbdc9b1" + } + ] + }, + { + "kind": "generated", + "width": 1440, + "errors": [], + "captures": [ + { + "name": "generated-empty-1440", + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "state": { + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "scrollWidth": 1440, + "width": 1440, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-1440", + "boxes": [ + { + "selector": ".naComposer", + "x": 296, + "y": 852, + "width": 848, + "height": 56 + } + ], + "pngSha256": "fd1da816b75f4d6711b3fb3d175c7db05d6deb487fd116236cbfe6358e508b54" + }, + { + "name": "generated-first-submit-1440", + "pngSha256": "c599afd33ea45a167f590aaf2d05811ad9f857f2190b66e3d0466bee15d7d11e", + "state": { + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local no-key MVP path work?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "scrollWidth": 1440, + "width": 1440, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-first-submit-1440", + "boxes": [ + { + "selector": "body", + "x": 0, + "y": 0, + "width": 1440, + "height": 1443.953125 + } + ], + "pngSha256": "0f341d61f0cba05403855fe76cb3749addc731604ff86a62c19849e085c78944" + } + ] + } + ], + "requests": [ + { + "url": "http://127.0.0.1:65151/", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/@vite/client", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/src/main.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/@react-refresh", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/src/styles.css", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/chunk-YUZDNSYT.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/chunk-JWR466QF.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/chunk-2QPKLDJX.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/@vite/client", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/src/main.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/@react-refresh", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/src/styles.css", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/chunk-YUZDNSYT.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/chunk-JWR466QF.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:65151/node_modules/.vite/deps/chunk-2QPKLDJX.js", + "method": "GET" + } + ], + "grade": null, + "sourceAfter": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "examples/apps/chat-ui/template/src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "src/features/node-agent/components/toolUIs.tsx": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc" + }, + "completed": true, + "finishedAt": "2026-09-05T07:32:39.521Z" +} diff --git a/evidence/current-consumer-20260905/historical/first-submit-diagnosis-01/report.json b/evidence/current-consumer-20260905/historical/first-submit-diagnosis-01/report.json new file mode 100644 index 0000000..81f2c19 --- /dev/null +++ b/evidence/current-consumer-20260905/historical/first-submit-diagnosis-01/report.json @@ -0,0 +1,1282 @@ +{ + "startedAt": "2026-09-05T07:29:53.647Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "examples/apps/chat-ui/template/src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "src/features/node-agent/components/toolUIs.tsx": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc" + }, + "cells": [ + { + "kind": "generated", + "width": 390, + "errors": [ + { + "message": "Maximum update depth exceeded. The result of getSnapshot should be cached to avoid an infinite loop.", + "stack": "Error: Maximum update depth exceeded. The result of getSnapshot should be cached to avoid an infinite loop.\n at http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:686:13\n at setupEffect (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:986:20)\n at reconcileEffects (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1018:5)\n at commitResourceFiber (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1163:3)\n at http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1414:5\n at setupEffect (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:986:20)\n at reconcileEffects (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1018:5)\n at commitResourceFiber (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1163:3)\n at http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1414:5\n at setupEffect (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:986:20)" + }, + { + "message": "Maximum update depth exceeded. This can happen when a resource repeatedly calls setState inside useEffect.", + "stack": "Error: Maximum update depth exceeded. This can happen when a resource repeatedly calls setState inside useEffect.\n at UpdateScheduler.markDirty (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:861:88)\n at Object.dispatchUpdate (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1193:15)\n at dispatchOnFiber (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:484:14)\n at dispatch (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:538:9)\n at http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:688:5\n at setupEffect (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:986:20)\n at reconcileEffects (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1018:5)\n at commitResourceFiber (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1163:3)\n at http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1414:5\n at setupEffect (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:986:20)" + } + ], + "captures": [ + { + "name": "generated-empty-390", + "pngSha256": "b3dc0946e573686d6817bde2edd771bd38d4e01856e8d8625579de0b1fa64465", + "state": { + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "scrollWidth": 390, + "width": 390, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-390", + "boxes": [ + { + "selector": ".naComposer", + "x": 30, + "y": 836, + "width": 330, + "height": 56 + } + ], + "pngSha256": "2aa7abe3ddbff2965e41760d01e6c4ab9176d158263d3cf5e5844037d373f88e" + }, + { + "name": "generated-first-submit-390", + "pngSha256": "b3dc0946e573686d6817bde2edd771bd38d4e01856e8d8625579de0b1fa64465", + "state": { + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "scrollWidth": 390, + "width": 390, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-first-submit-390", + "boxes": [ + { + "selector": "body", + "x": 0, + "y": 0, + "width": 390, + "height": 960 + } + ], + "pngSha256": "67e36e97cc23c2cbcab90e7adaad38cb272a1e01fdd6d6801ff7170def588a93" + } + ] + }, + { + "kind": "generated", + "width": 1440, + "errors": [ + { + "message": "Maximum update depth exceeded. The result of getSnapshot should be cached to avoid an infinite loop.", + "stack": "Error: Maximum update depth exceeded. The result of getSnapshot should be cached to avoid an infinite loop.\n at http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:686:13\n at setupEffect (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:986:20)\n at reconcileEffects (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1018:5)\n at commitResourceFiber (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1163:3)\n at http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1414:5\n at setupEffect (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:986:20)\n at reconcileEffects (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1018:5)\n at commitResourceFiber (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1163:3)\n at http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1414:5\n at setupEffect (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:986:20)" + }, + { + "message": "Maximum update depth exceeded. This can happen when a resource repeatedly calls setState inside useEffect.", + "stack": "Error: Maximum update depth exceeded. This can happen when a resource repeatedly calls setState inside useEffect.\n at UpdateScheduler.markDirty (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:861:88)\n at Object.dispatchUpdate (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1193:15)\n at dispatchOnFiber (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:484:14)\n at dispatch (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:538:9)\n at http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:688:5\n at setupEffect (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:986:20)\n at reconcileEffects (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1018:5)\n at commitResourceFiber (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1163:3)\n at http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:1414:5\n at setupEffect (http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js?v=a291f4dd:986:20)" + } + ], + "captures": [ + { + "name": "generated-empty-1440", + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "state": { + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "scrollWidth": 1440, + "width": 1440, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-1440", + "boxes": [ + { + "selector": ".naComposer", + "x": 296, + "y": 852, + "width": 848, + "height": 56 + } + ], + "pngSha256": "fd1da816b75f4d6711b3fb3d175c7db05d6deb487fd116236cbfe6358e508b54" + }, + { + "name": "generated-first-submit-1440", + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "state": { + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "scrollWidth": 1440, + "width": 1440, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-first-submit-1440", + "boxes": [ + { + "selector": "body", + "x": 0, + "y": 0, + "width": 1440, + "height": 960 + } + ], + "pngSha256": "5c0ffbbe9052ba4e11dd66dd77a6252c266b37279913eaf0e0da9e0eeb4d2791" + } + ] + }, + { + "kind": "source", + "width": 390, + "errors": [], + "captures": [ + { + "name": "source-empty-390", + "pngSha256": "f897b50dc153a4bca0a319720059b841c20983b6b406c387e6f443c2f6c065fd", + "state": { + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "scrollWidth": 390, + "width": 390, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-390", + "boxes": [ + { + "selector": ".na-composer", + "x": 12, + "y": 702.125, + "width": 366, + "height": 62 + } + ], + "pngSha256": "b02af36bee3c94ac528a59bafafdbf62cab4ab0a234c58492a42b1b412802322" + }, + { + "name": "source-first-submit-390", + "pngSha256": "06f3f0ae1cdccdccc6cc0996b7bc6d94e6699c4d761aec4037dff76dcbd51fcc", + "state": { + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes the local no-key MVP path work?\n\n◆\n\nPartial: I gathered context and updated the model, but grounding was too weak to synthesize a confident answer — flagged for manual review.\n\n💬\nGather room context\n2 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nlow · grounded 0/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.00\nWEB\n[2] Acme teardown blog — Why context rooms lose\n0.17\nDOC\n[3] finance://burn — runway model\n0.00\nDOC\n[4] diligence://wedge — competitive note\n0.00\nInsufficient grounded sources — declining to synthesize to avoid fabrication.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n4 blocks\nAcme — diligence memo\n\nThe room asked: \"Does the local no-key MVP path work?\"\n\nNo grounded answer was produced; manual review required.\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 23 edges\nRelationship graph\n\n12 entities · 23 of 23 relationships shown\n\nfit\nevidence\n(2)\ntraversal\n(21)\n· local", + "scrollWidth": 390, + "width": 390, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-first-submit-390", + "boxes": [ + { + "selector": ".na-composer", + "x": 12, + "y": 389.71875, + "width": 366, + "height": 62 + } + ], + "pngSha256": "b9e69db1096d0cbbb5246a76048b06ad9e4cd797a80d655300a9e879cd60dec5" + } + ] + }, + { + "kind": "source", + "width": 1440, + "errors": [], + "captures": [ + { + "name": "source-empty-1440", + "pngSha256": "477a4ace40dad1fb667303e5b61d5c338edc1ecef9dcceec4129377170bb9389", + "state": { + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "scrollWidth": 1440, + "width": 1440, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-1440", + "boxes": [ + { + "selector": ".na-composer", + "x": 148, + "y": 856.953125, + "width": 784, + "height": 54 + } + ], + "pngSha256": "427caabdf9dcad67b174e8f14f5e31ad87e6971e8c555575b4606911d626ee56" + }, + { + "name": "source-first-submit-1440", + "pngSha256": "114760b1f630eee4e0c6ec08009663dcdb72080bc36b45cf537620f4167e9e6c", + "state": { + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes the local no-key MVP path work?\n\n◆\n\nPartial: I gathered context and updated the model, but grounding was too weak to synthesize a confident answer — flagged for manual review.\n\n💬\nGather room context\n2 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nlow · grounded 0/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.00\nWEB\n[2] Acme teardown blog — Why context rooms lose\n0.17\nDOC\n[3] finance://burn — runway model\n0.00\nDOC\n[4] diligence://wedge — competitive note\n0.00\nInsufficient grounded sources — declining to synthesize to avoid fabrication.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n4 blocks\nAcme — diligence memo\n\nThe room asked: \"Does the local no-key MVP path work?\"\n\nNo grounded answer was produced; manual review required.\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 23 edges\nRelationship graph\n\n12 entities · 23 of 23 relationships shown\n\nfit\nevidence\n(2)\ntraversal\n(21)\n· local", + "scrollWidth": 1440, + "width": 1440, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-first-submit-1440", + "boxes": [ + { + "selector": ".na-composer", + "x": 148, + "y": 856.546875, + "width": 784, + "height": 54 + } + ], + "pngSha256": "77e4396b06e571775431a9cf390ae1fa04d12f797f9756da9fe2175d6303086a" + } + ] + } + ], + "requests": [ + { + "url": "http://127.0.0.1:53803/", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/@vite/client", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/src/main.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/@react-refresh", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/src/styles.css", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/chunk-5JE52KWM.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/chunk-XDD65R4D.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/chunk-4HOKYLK4.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/@vite/client", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/src/main.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/@react-refresh", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/src/styles.css", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/chunk-5JE52KWM.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/chunk-XDD65R4D.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:53803/node_modules/.vite/deps/chunk-4HOKYLK4.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/@vite/client", + "method": "GET" + }, + { + "url": "https://fonts.googleapis.com/css2", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/app/main.tsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/@react-refresh", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/app/styles.css", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/@vite/client", + "method": "GET" + }, + { + "url": "https://fonts.googleapis.com/css2", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/app/main.tsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/@react-refresh", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/app/styles.css", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:49357/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + } + ], + "grade": null, + "sourceAfter": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "examples/apps/chat-ui/template/src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "src/features/node-agent/components/toolUIs.tsx": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc" + }, + "completed": true, + "finishedAt": "2026-09-05T07:30:18.128Z" +} diff --git a/evidence/current-consumer-20260905/historical/locked-browser-01/failure.html b/evidence/current-consumer-20260905/historical/locked-browser-01/failure.html new file mode 100644 index 0000000..172bdfe --- /dev/null +++ b/evidence/current-consumer-20260905/historical/locked-browser-01/failure.html @@ -0,0 +1,458 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/historical/locked-browser-01/failure.png b/evidence/current-consumer-20260905/historical/locked-browser-01/failure.png new file mode 100644 index 0000000..b6e9953 Binary files /dev/null and b/evidence/current-consumer-20260905/historical/locked-browser-01/failure.png differ diff --git a/evidence/current-consumer-20260905/historical/locked-browser-01/report.json b/evidence/current-consumer-20260905/historical/locked-browser-01/report.json new file mode 100644 index 0000000..636e8dd --- /dev/null +++ b/evidence/current-consumer-20260905/historical/locked-browser-01/report.json @@ -0,0 +1,2196 @@ +{ + "namedProof": "NODEAGENT-CURRENT-CONSUMER-01", + "passed": false, + "startedAt": "2026-09-05T07:43:32.416Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "examples/apps/chat-ui/template/src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "src/features/node-agent/components/toolUIs.tsx": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "16497d628f5bec3dfae29f522f2702c9966bbcb4cbbbb78204db1dcd969662ef" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + }, + "checks": [ + { + "name": "generated empty state 320", + "passed": true + }, + { + "name": "generated-empty-320 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-320 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 320", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 320", + "passed": true + }, + { + "name": "generated-populated-320 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 320", + "passed": true + }, + { + "name": "generated-reloaded-320 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 390", + "passed": true + }, + { + "name": "generated-empty-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 390", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 390", + "passed": true + }, + { + "name": "generated-populated-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 390", + "passed": true + }, + { + "name": "generated-reloaded-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 768", + "passed": true + }, + { + "name": "generated-empty-768 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-768 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 768", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 768", + "passed": true + }, + { + "name": "generated-populated-768 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 768", + "passed": true + }, + { + "name": "generated-reloaded-768 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 1024", + "passed": true + }, + { + "name": "generated-empty-1024 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-1024 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 1024", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 1024", + "passed": true + }, + { + "name": "generated-populated-1024 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 1024", + "passed": true + }, + { + "name": "generated-reloaded-1024 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 1440", + "passed": true + }, + { + "name": "generated-empty-1440 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-1440 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 1440", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 1440", + "passed": true + }, + { + "name": "generated-populated-1440 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 1440", + "passed": true + }, + { + "name": "generated-reloaded-1440 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 1920", + "passed": true + }, + { + "name": "generated-empty-1920 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-1920 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 1920", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 1920", + "passed": true + }, + { + "name": "generated-populated-1920 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 1920", + "passed": true + }, + { + "name": "generated-reloaded-1920 screenshot restores exact DOM", + "passed": true + }, + { + "name": "sustained accumulated four-card run 1", + "passed": true + } + ], + "captures": [ + { + "name": "generated-empty-320", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad" + }, + { + "name": "generated-running-320", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "df3e7ffedf6384aa56ca2e0fbabd285f2210fcbb98f3a0832038cd8cfb946abe" + }, + { + "name": "generated-populated-320", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "62b1ec0fc69fb0c4b1c4caf0c3705c8d6f552402e50c611a8625aed21690b64c" + }, + { + "name": "generated-reloaded-320", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad" + }, + { + "name": "generated-empty-390", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734" + }, + { + "name": "generated-running-390", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "fe40295325c3942cd1bfcf179d9fd626f7699c7dc65c84da7c4ad5a2a8f38e01" + }, + { + "name": "generated-populated-390", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "382ec6f9a7846cc694a7ffb848dccb1ded561a8d64e2c2ff5c5e7834d499cc6f" + }, + { + "name": "generated-reloaded-390", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734" + }, + { + "name": "generated-empty-768", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445" + }, + { + "name": "generated-running-768", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "582683ea8ece2702fb4a096498cc00861998dcbc02f2a77a7f81523d397eb17a" + }, + { + "name": "generated-populated-768", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "8f39389bb97178ffa7148afde59ec70d87173744f8188295f37726a0250d7ee0" + }, + { + "name": "generated-reloaded-768", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445" + }, + { + "name": "generated-empty-1024", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9" + }, + { + "name": "generated-running-1024", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "062ef6da15f30947243870a7bffe86fe8ecb4db036898c06ff489858bbb5f129" + }, + { + "name": "generated-populated-1024", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "db5b14a2d4e77e3545d129ee6413f70874b349de7c7d67fe60ff75b23e824174" + }, + { + "name": "generated-reloaded-1024", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9" + }, + { + "name": "generated-empty-1440", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795" + }, + { + "name": "generated-running-1440", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "94f72a9e74a6f3d21a53afa9bafabd4880c43eb995a6808dd7a2256b37b4abba" + }, + { + "name": "generated-populated-1440", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "0bc2f3246755af576a03fd013a3f79acb377261ab1b0b7a2ae0be65d99110ffb" + }, + { + "name": "generated-reloaded-1440", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795" + }, + { + "name": "generated-empty-1920", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b" + }, + { + "name": "generated-running-1920", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "9026f07501136fdfe942540c9dd4fed895f234a2c4ed0bc9ab9c2850663a68ca" + }, + { + "name": "generated-populated-1920", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "f35bc072e2f56b00950ad4a12abd14df26e1562deb707c54e460123d022714bc" + }, + { + "name": "generated-reloaded-1920", + "state": { + "url": "http://127.0.0.1:53285/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b" + } + ], + "observations": [ + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-320", + "hasStop": false, + "sendDisabled": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-390", + "hasStop": false, + "sendDisabled": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-768", + "hasStop": false, + "sendDisabled": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-1024", + "hasStop": false, + "sendDisabled": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-1440", + "hasStop": false, + "sendDisabled": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-1920", + "hasStop": false, + "sendDisabled": true + } + ], + "console": [], + "requests": [ + { + "origin": "http://127.0.0.1:53285", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53285", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + } + ], + "providerCalls": 0, + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "error": "page.waitForFunction: Timeout 12000ms exceeded.\n at complete (D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905\\e2e\\current-consumer-proof.mjs:54:55)\n at D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905\\e2e\\current-consumer-proof.mjs:66:184", + "finishedAt": "2026-09-05T07:44:23.965Z" +} diff --git a/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/HANDOFF.md.txt b/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/HANDOFF.md.txt new file mode 100644 index 0000000..15daecc --- /dev/null +++ b/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/HANDOFF.md.txt @@ -0,0 +1,35 @@ +# NodeAgent developer handoff + +Read this file first, then [the runtime walkthrough](docs/START_HERE.md). This review candidate starts from canonical `4e525fd0`. The separately preserved Pi draft is not integrated. Independent review, commit and publication remain pending. + +A developer can run the repository's local scenario and generate a separate chat application without credentials. Both chats use scripted local adapters; displayed confidence numbers come from fixtures. Their browser conversations reset on reload. The library's durable/SQLite demonstration is a separate integration and does not persist either browser chat. + +Use Node 22; this proof used Node 22.22.2. From this repository run `npm ci`, `npm test`, `npm run build` and `npm run tours:validate`. The 41 tests, typecheck/build, three tours/36 steps and 11 walkthrough citations pass. To generate a consumer, run `npm pack`, install that exact tarball in a new empty npm project, then use its installed CLI: + +```powershell +node node_modules/nodeagent/bin/nodeagent.mjs doctor +node node_modules/nodeagent/bin/nodeagent.mjs apps scaffold chat-ui --dir "../NodeAgent Chat" --auto +Set-Location "../NodeAgent Chat" +npm run dev +``` + +`--auto` performs normal install, demo, smoke and build. Keep the included template lock; use `npm ci` for repeatable reinstall. Existing-target refusal was verified with an owner sentinel and without force. Each failed and repaired consumer was retained separately. + +The original unlocked template resolved incompatible assistant-ui dependencies and failed its first real prompt despite smoke/build passing. A tested compatible template lock fixes that install seam without changing dependency ranges. The final packed consumer binds 242 source/tarball/installed files and the exact generated lock. Its tarball SHA-256 is `1a6e980a684f433fcdc80021eb5569fa5c4b94e09a71e8a2adbe5d821e654c69`. That package predates this final handoff/evidence metadata; it is an uncommitted candidate proof, not a published release certificate. + +Both current chats expose **Stop response**, visible incomplete/failed tool status, and explicit **Retry response**. Stop ends response display updates and keeps completed work. It cannot undo work already computed by the adapter, graph facts already recorded, durable work or external actions. Retry re-executes only the current response through the native runtime and preserves earlier turns. It is never automatic. A synchronous claim on the current response ID rejects immediate double activation; actual SDK IDs were observed to change on each retry, so a second failed response remains retryable. This is a local UI guarantee, not external-service idempotency or provider cancellation. + +[Portable evidence](evidence/current-consumer-20260905/README.md) contains the actual before boundaries, failure history, command logs, source bindings and final browser reports. The response-recovery run passed 289 checks and saved 76 captures across 320/390/768/1024/1440/1920 for both source and installed generated apps. It covers ordinary pointer/keyboard Stop, stable incomplete output, preserved earlier cards/graph snapshot, failure then explicit retry then failure again then explicit recovery, duplicate activation, pointer target stability, keyboard-visible error/Retry at enlarged text, and reload reset. An additional 12 turns produced 15 responses/60 cards in 21.182 seconds generated and 29.482 seconds source. These are bounded accumulation checks, not production longevity measurements. + +The unchanged first-run scenario separately passed 59 checks/25 captures on the final installed app, including eight sequential turns/32 cards in 13.968 seconds. Reproduce the two browser journeys from the source checkout with a fresh installed generated target and NEW output directories: + +```powershell +node e2e/current-consumer-proof.mjs "" "" +node e2e/current-consumer-recovery-proof.mjs "" "" +``` + +Separate offline frame/durable/SQLite runs completed. SQLite closed/reopened the retained database and replayed the same frame with one journal entry; lease exclusion, expiry recovery and fencing passed. Use `nodeagent:frame:smoke`, `nodeagent:durable:smoke` and `nodeagent:sqlite:smoke` for that separate library integration. Their fixture confidence is not an external provider measurement. + +Remaining limits are explicit. Source-header text still overflows by 21 pixels in the 390-pixel, doubled-computed-text fixture; the changed recovery/composer regions fit and remain visible. The text fixture is not an operating-system zoom certificate. The source graph still needs its own visual/readability assessment. There is no React render-error boundary or New Thread control. Full visual, responsive, accessibility and performance grades remain null. Source full audit has nine development advisories, including one critical; the locked generated app has four development advisories, three high and one low. Both recorded production-only audits have zero findings. Those full-audit findings remain open. + +No provider, Convex, login, external-host hook, deployment or Pi capability was activated. The historical dependency checkpoint and previous promotion records retain their original outcomes. This handoff closes the bounded offline consumer and response-recovery implementation for independent review; it does not claim complete repository readiness. diff --git a/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/README.md.txt b/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/README.md.txt new file mode 100644 index 0000000..1432771 --- /dev/null +++ b/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/README.md.txt @@ -0,0 +1,15 @@ +# Current NodeAgent consumer evidence + +This packet supports the bounded local consumer and response-recovery handoff. Read [HANDOFF.md](../../HANDOFF.md) first. Independent judgment, commit and publication are still pending; full UI grades are null. + +The final response-recovery report is [operator/d3-final-browser-03/report.json](operator/d3-final-browser-03/report.json): 289 checks, 76 captures, 12 cells at 320/390/768/1024/1440/1920. The unchanged first-run scenario is [operator/d3-unchanged-baseline-replay/report.json](operator/d3-unchanged-baseline-replay/report.json): 59 checks, 25 captures. Both use the normally installed final consumer and bind input bytes before/after. Intentional adapter faults and screenshot-only iterator holds are labelled; no provider request is represented by them. + +Before scope: operator/evidence/nodeagent-d3-{source,generated}-before contains the approved actual labelled 3px PNGs. The matched after reports operator/d3-source-matched-after and operator/d3-generated-matched-after reuse the exact original questions, held first frame, one-run error fixture, anonymous context, 960px height and 390/1440 widths. Ephemeral local ports and installed root differ. Source running-state captures additionally cover all six widths at 960px height. The larger recovery matrix uses 844px height at 320/390 and 960px elsewhere; it is separate interaction/accumulation coverage, not a geometrically identical before comparison. + +The final package receipt operator/d3-installed-consumer-03.json binds 242 exact source/tarball/installed files. The final HANDOFF and this packet were written afterward; package bytes are an uncommitted implementation checkpoint, not a published release certificate. The earlier locked dependency checkpoint remains separate. Template/source dependency ranges and original Pi work were not merged or replaced. + +Failure history is preserved. Historical folders contain raw reports and failure/selected enlarged PNGs for the incompatible unlocked install, early-completion probe, lost Stop focus, two rapid Retry starts, ineffective isRunning-only guard, first compounded-text fixture, generated intrinsic-width overflow and source sticky-footer obstruction. Full intermediate raw directories remain in the retained operator packet; this portable packet deliberately selects their decisive artifacts. Their older claims are historical. Raw Markdown and source snippets are copied with .txt suffixes; their original bytes and hashes are preserved. + +Current limitations: source-header overflow 21px at 390 in the doubled-computed-text fixture; crowded/clipped source graph labels need a separate readability assessment; no React render-error boundary or New Thread control; browser reload resets conversation. Source full audit 9 development findings and generated 4 development findings remain open, despite zero recorded production-only findings. No provider, Convex, host-login/hook or deployment certification. The durable/SQLite close/reopen proof is a separate library consumer, not browser persistence. + +manifest.json hashes every included artifact except itself and binds the final runtime proof's 234 source files. operator/d3-worker-visual-inspection.json names the 31 actual after PNGs inspected by the implementation worker; other captures remain available for independent review. Raw artifact paths/ports identify their retained environment and are evidence data, not portable launch commands. Use HANDOFF.md for fresh-run commands. diff --git a/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/manifest.json b/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/manifest.json new file mode 100644 index 0000000..dcbd7b1 --- /dev/null +++ b/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/manifest.json @@ -0,0 +1,5874 @@ +{ + "version": "nodeagent-current-consumer-evidence/v1", + "createdAt": "2026-09-05T09:10:14.208253+00:00", + "scope": "Uncommitted implementation candidate; independent judge pending", + "sourceHead": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "sourceBindings": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "sourceBindingScope": "234 tracked non-env and owned scenario/lock bytes at completed recovery proof, before final metadata packaging", + "artifacts": [ + { + "path": "README.md", + "bytes": 3505, + "sha256": "dd25393b9d34f1635c50a3911603e98b57e658263673b6268be2aedfe8235b80", + "operatorSource": "Authored portable index" + }, + { + "path": "historical/browser-before-03/report.json", + "bytes": 31866, + "sha256": "509f4f14ba05b96ae17fa2b8d23d25ab11c5a66975756d128622dc681ccdcf8c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-03\\report.json" + }, + { + "path": "historical/d3-final-browser-01/failure.html", + "bytes": 21043, + "sha256": "7cee54fd73c476992d29dbd03cd53be84978ffd5ce026fcd0c79df6c92653d5d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01\\failure.html" + }, + { + "path": "historical/d3-final-browser-01/failure.png", + "bytes": 48450, + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01\\failure.png" + }, + { + "path": "historical/d3-final-browser-01/generated-error-text-200-390.png", + "bytes": 48450, + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01\\generated-error-text-200-390.png" + }, + { + "path": "historical/d3-final-browser-01/report.json", + "bytes": 84861, + "sha256": "e36764e37db2649fbef0908e65208b4fbf309a63e949b8b0a5a0cecad796469d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01\\report.json" + }, + { + "path": "historical/d3-final-browser-02/failure.html", + "bytes": 34627, + "sha256": "7bef1ff5cd4ed944b73e92031c37bb3ad285fde2062d33e861faa950dd9fa5cf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02\\failure.html" + }, + { + "path": "historical/d3-final-browser-02/failure.png", + "bytes": 75461, + "sha256": "cb45fbca1d0d5a23a76c726235a0f53f68b1e82b2959528c156fe518b6885dee", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02\\failure.png" + }, + { + "path": "historical/d3-final-browser-02/generated-error-text-200-390.png", + "bytes": 49228, + "sha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02\\generated-error-text-200-390.png" + }, + { + "path": "historical/d3-final-browser-02/report.json", + "bytes": 320226, + "sha256": "ba38b0cc4391635b1aca9b5affd8570951ade9fe72c36ad94ca820d123b73835", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02\\report.json" + }, + { + "path": "historical/d3-final-browser-02/source-error-text-200-390.png", + "bytes": 75482, + "sha256": "193b20dd5900f7101a9707bab577835645a619596a2b5d76489decf915f42bb8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02\\source-error-text-200-390.png" + }, + { + "path": "historical/d3-source-smoke-01/failure.html", + "bytes": 25903, + "sha256": "8b20b95d6b8854a3706d1c600d4f4230aed58a36c670e23b3149ab1d560c040b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01\\failure.html" + }, + { + "path": "historical/d3-source-smoke-01/failure.png", + "bytes": 45131, + "sha256": "619972dd54365a8402662a7f84336792d6eaca4333354336656acea3b30cb56c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01\\failure.png" + }, + { + "path": "historical/d3-source-smoke-01/report.json", + "bytes": 39838, + "sha256": "3e5149702e84d223bc8d005d25bd455a3bb135e189fe9889a862c22a1025fa2f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01\\report.json" + }, + { + "path": "historical/d3-source-smoke-02/failure.html", + "bytes": 33646, + "sha256": "65071a02e617be4861abc4c7ce5e1b2289be1a9dc7ba3735b20c57c70c5f458c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02\\failure.html" + }, + { + "path": "historical/d3-source-smoke-02/failure.png", + "bytes": 47665, + "sha256": "3fe4ba8d90b13c14affaffdf358a1339f898335c1f17ab767d0ff7c2f7e14a93", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02\\failure.png" + }, + { + "path": "historical/d3-source-smoke-02/report.json", + "bytes": 49152, + "sha256": "25790c3eff05cc321bb7db465c0c17b66953e97d6f9d534518e611765985da40", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02\\report.json" + }, + { + "path": "historical/d3-source-smoke-03/failure.html", + "bytes": 33646, + "sha256": "d394a476f68e2ab347209a80f2ff56480030eefefda0f5c1b9c7ec4657ef502a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03\\failure.html" + }, + { + "path": "historical/d3-source-smoke-03/failure.png", + "bytes": 47537, + "sha256": "2e59ebc5923b6a4372d35ce13edd12c09e95acaa1c8a12c356c8a6604d117485", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03\\failure.png" + }, + { + "path": "historical/d3-source-smoke-03/report.json", + "bytes": 49186, + "sha256": "628c9d434f0f04fde80d6c26f518c94f9127c901addfc63d5c2441ebb70799c0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03\\report.json" + }, + { + "path": "historical/d3-source-smoke-04/failure.html", + "bytes": 33646, + "sha256": "fa164c86bc3c7e205e58ef9b6b2c587fd210333d94949435957d028caeea343e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04\\failure.html" + }, + { + "path": "historical/d3-source-smoke-04/failure.png", + "bytes": 47665, + "sha256": "3fe4ba8d90b13c14affaffdf358a1339f898335c1f17ab767d0ff7c2f7e14a93", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04\\failure.png" + }, + { + "path": "historical/d3-source-smoke-04/report.json", + "bytes": 49186, + "sha256": "07523b9fc8936cf10b2b9886ee103d0092ae8962c6eec27b4e54233a316c1e70", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04\\report.json" + }, + { + "path": "historical/d3-source-smoke-05/failure.html", + "bytes": 105248, + "sha256": "aad2ce2325693e765154b80d05bbd655a769549f5d97f46e86ab9a7faf75f3ec", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05\\failure.html" + }, + { + "path": "historical/d3-source-smoke-05/failure.png", + "bytes": 77272, + "sha256": "5a405fbcc7753997cbe4a830b64d4d7d6b032295891d39b781c9fe0d26d33586", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05\\failure.png" + }, + { + "path": "historical/d3-source-smoke-05/report.json", + "bytes": 152063, + "sha256": "5d3f540caf94cb8b1e8fcc824f24008a00a688f394280c044d9558e68181793f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05\\report.json" + }, + { + "path": "historical/d3-source-smoke-05/source-text-200-390.png", + "bytes": 77313, + "sha256": "b9f14a4ecc6115041985c2074697fc0220d0f135a30a93e9b609c049d232d796", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05\\source-text-200-390.png" + }, + { + "path": "historical/d3-source-smoke-06/report.json", + "bytes": 359511, + "sha256": "fc18836185b6b326b94fe7a13e209c835fbac3de843638c669e46ded045cca9c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-06\\report.json" + }, + { + "path": "historical/d3-source-smoke-06/source-error-text-200-390.png", + "bytes": 71011, + "sha256": "56b259eda21b5dfaf35dc3cf4fa1805de6647b760a8a572b778fd63471888c5a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-06\\source-error-text-200-390.png" + }, + { + "path": "historical/first-submit-dependency-comparison-01/report.json", + "bytes": 64220, + "sha256": "99693bc6140469572d3821b30642b6d3a395c45f12a96a0a8ebd8dd0044aaf1c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-dependency-comparison-01\\report.json" + }, + { + "path": "historical/first-submit-diagnosis-01/report.json", + "bytes": 85904, + "sha256": "27741aacc74b04bb19380e0c6354f20d8db768414689edcee557674d7567cfa8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-diagnosis-01\\report.json" + }, + { + "path": "historical/locked-browser-01/failure.html", + "bytes": 13141, + "sha256": "e412f7230502f3d6f735a0272e0145032d6e49b6d3bbdbc4517213aa28d724c7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01\\failure.html" + }, + { + "path": "historical/locked-browser-01/failure.png", + "bytes": 33108, + "sha256": "5dce8e4f033659ce22a46d99519690d746b5470cbc4dee32fa11557eded7ab93", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01\\failure.png" + }, + { + "path": "historical/locked-browser-01/report.json", + "bytes": 93753, + "sha256": "c1c9e0f1a4b1b08b3e25d672d76bf3f0954dab40ddcdbf4e8fa6028ef7a2eda3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01\\report.json" + }, + { + "path": "operator/D3_SOURCE_BEFORE_BINDINGS.json", + "bytes": 1140, + "sha256": "11866c9e365fe8617a32e726c9d038d4b81392ba19ab25ae8c88f24c5d691b6b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\D3_SOURCE_BEFORE_BINDINGS.json" + }, + { + "path": "operator/browser-before-01-command.json", + "bytes": 366, + "sha256": "f3349585a17450163e6b1ee081b3f2af6e37fca0e775a8ea207dbb3d368383f1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-01-command.json" + }, + { + "path": "operator/browser-before-01-harness.mjs.txt", + "bytes": 12067, + "sha256": "364cfa15c6b176407b7afe8caec2f555f718ca09886e86d0596d481031a48a02", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-01-harness.mjs.txt" + }, + { + "path": "operator/browser-before-01.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-01.stderr" + }, + { + "path": "operator/browser-before-01.stdout", + "bytes": 753, + "sha256": "a9d110ed6d6282c7238008f2c51a5a544121b91f2830a629ee7e5cd3af1c8f69", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-01.stdout" + }, + { + "path": "operator/browser-before-02-command.json", + "bytes": 364, + "sha256": "7a3a79f21864cec996ae8e838057c3431ae1a7c73a76be6746f3dd1f565c97c3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-02-command.json" + }, + { + "path": "operator/browser-before-02-command.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-02-command.stderr" + }, + { + "path": "operator/browser-before-02-command.stdout", + "bytes": 1003, + "sha256": "3ee598d331df710a361076a47c5591cb83863ef2220f62015986b17c28cef06f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-02-command.stdout" + }, + { + "path": "operator/browser-before-02-harness.mjs.txt", + "bytes": 12356, + "sha256": "211987d2ea5c21337226155501cf79a665db0ee88f05e0adf71d5d2704eeb54e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-02-harness.mjs.txt" + }, + { + "path": "operator/browser-before-03-command.json", + "bytes": 365, + "sha256": "ada89b022af7aa6ec91acb627b6882b0d7927702fd7893dbdb7975ef546f68fb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-03-command.json" + }, + { + "path": "operator/browser-before-03-command.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-03-command.stderr" + }, + { + "path": "operator/browser-before-03-command.stdout", + "bytes": 533, + "sha256": "1c6472a5aaea3e4e56e36d017b4bfe5844d3d0709aed0f276e328b839b936d1d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-03-command.stdout" + }, + { + "path": "operator/browser-before-03-harness.mjs.txt", + "bytes": 12436, + "sha256": "1f74cbdf16dd807444c0986cc65063732b273c49eb48c260dabedbaa4d6e0c4d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-03-harness.mjs.txt" + }, + { + "path": "operator/canonical-audit-production.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-audit-production.stderr" + }, + { + "path": "operator/canonical-audit-production.stdout", + "bytes": 366, + "sha256": "63c0065f6900d02e8b63ffecedfe68547d17db39d991d7f67869cbf3abce2e49", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-audit-production.stdout" + }, + { + "path": "operator/canonical-build.stderr", + "bytes": 342, + "sha256": "aa9b7207d2d2d42fbf4e013331ee76fc39b9b042505b38551893c1f60f35b63a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-build.stderr" + }, + { + "path": "operator/canonical-build.stdout", + "bytes": 604, + "sha256": "dcfd2e31e77842b1f9278c39d812c5433a5f87b4090579b40019e649e8052722", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-build.stdout" + }, + { + "path": "operator/canonical-checks.json", + "bytes": 2804, + "sha256": "36fefaf8774eb0b53302640f6779e09bca9293d0c01b34d53a93d1758974299d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-checks.json" + }, + { + "path": "operator/canonical-tests.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-tests.stderr" + }, + { + "path": "operator/canonical-tests.stdout", + "bytes": 1253, + "sha256": "b939a31d2f0eb38e23b00706c1d8216c85d1571302137207f611de7b98072cf7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-tests.stdout" + }, + { + "path": "operator/capture-generated-d3-before-01.mjs.txt", + "bytes": 9017, + "sha256": "ca239549202a427b9f4a6bccf05fe4646876801f73f8d05f964357cde017ce1d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-generated-d3-before-01.mjs.txt" + }, + { + "path": "operator/capture-generated-d3-before.mjs.txt", + "bytes": 9076, + "sha256": "fade830ebb8a90c4bb82c1a5fcb0f9f27f5a7660904ac39b4a86184a95bbb61d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-generated-d3-before.mjs" + }, + { + "path": "operator/capture-generated-d3-matched-after-syntax-failure.mjs.txt", + "bytes": 7609, + "sha256": "d668a20bdbdd2e0d660e7d93a6fd74e2db99e9c6841070dc910eed91764a3c22", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-generated-d3-matched-after-syntax-failure.mjs.txt" + }, + { + "path": "operator/capture-generated-d3-matched-after.mjs.txt", + "bytes": 7608, + "sha256": "c2ca4153af05e4e128d6cd6fb38258e6dc9827f48dafa13f5119f8aa40d6af4b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-generated-d3-matched-after.mjs" + }, + { + "path": "operator/capture-source-d3-before-01.mjs.txt", + "bytes": 8554, + "sha256": "a1039f2f9f4b737c7d2b055325aee9f54ffb022e682d71c1bddc7f0edd860f7a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-source-d3-before-01.mjs.txt" + }, + { + "path": "operator/capture-source-d3-before-02.mjs.txt", + "bytes": 8962, + "sha256": "f6c05c18f4577a14cb1adec9b403b6f9eeb0e6de28f47cbf792b5676e8159e14", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-source-d3-before-02.mjs.txt" + }, + { + "path": "operator/capture-source-d3-before.mjs.txt", + "bytes": 8964, + "sha256": "5a50d40dbe8380cc366c46c289cb67c06f3bbee4de8b867d651f0a9efc3cd539", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-source-d3-before.mjs" + }, + { + "path": "operator/capture-source-d3-matched-after.mjs.txt", + "bytes": 7015, + "sha256": "a358ba9166caae7baf5b59e22f598817dbb472854b16b0bcdd8b154b62ee1113", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-source-d3-matched-after.mjs" + }, + { + "path": "operator/d3-citation-before/.tours/01-primary-user-flow.tour", + "bytes": 4743, + "sha256": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-citation-before\\.tours\\01-primary-user-flow.tour" + }, + { + "path": "operator/d3-citation-before/docs/START_HERE.md.txt", + "bytes": 17384, + "sha256": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-citation-before\\docs\\START_HERE.md" + }, + { + "path": "operator/d3-citation-correctness-addendum.json", + "bytes": 923, + "sha256": "82c548892018bec4225826ab29d9f7e989fe04dbbd6fba021715fd516cc0da32", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-citation-correctness-addendum.json" + }, + { + "path": "operator/d3-consumer-02-commands.json", + "bytes": 1831, + "sha256": "b0296d34c5fecec7f11e0b16ee1ee1ff9b9ca340021a2e3864ef64df0fdbaabb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-consumer-02-commands.json" + }, + { + "path": "operator/d3-consumer-preservation.json", + "bytes": 5441, + "sha256": "69a91e38f0001e57b2effbd7988d55302365f878235e81d81e328b7f591437df", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-consumer-preservation.json" + }, + { + "path": "operator/d3-corrected-tours-validate.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-corrected-tours-validate.stderr" + }, + { + "path": "operator/d3-corrected-tours-validate.stdout", + "bytes": 188, + "sha256": "8b91eaa9d523522537255352c11c4861181d47d8559a7cfee65ebd89e731476a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-corrected-tours-validate.stdout" + }, + { + "path": "operator/d3-enlargement-css-before.txt", + "bytes": 7126, + "sha256": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-css-before.txt" + }, + { + "path": "operator/d3-enlargement-diagnosis-01.command.json", + "bytes": 512, + "sha256": "9add5c59d39b69db716453b518ea2f4914a4af3df50b6c7b85edfa77c3cb1871", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01.command.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01.stderr" + }, + { + "path": "operator/d3-enlargement-diagnosis-01.stdout", + "bytes": 476, + "sha256": "621db98d4563e6f931f5784daad4d057d0e424b42ddf76b8471129a9d78a640e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01.stdout" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/change-boundary.md.txt", + "bytes": 714, + "sha256": "655de20425af950dd8a7608433711266bbbe39e40e534650eade81d9ca82e27c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\change-boundary.md" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/change-boundary.png", + "bytes": 50135, + "sha256": "e3a84fa9f8010add7871ab196f8abccfbbaab4046b6aec08bbae8aac4c2f163d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\change-boundary.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/failure.html", + "bytes": 21043, + "sha256": "6a0ef3e833cb1ec1d5e81b8fa865a22606aaebf4a6325a094f80965776d3b39a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\failure.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/failure.png", + "bytes": 48450, + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\failure.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-empty-390.before.html", + "bytes": 12122, + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-empty-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-empty-390.html", + "bytes": 12122, + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-empty-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-empty-390.json", + "bytes": 1429, + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-empty-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-empty-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-empty-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-390.before.html", + "bytes": 18195, + "sha256": "20fc61c6350ca9aa39bf487c4ac4e86f042e715f214a89db813495cb80515d17", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-390.html", + "bytes": 18195, + "sha256": "20fc61c6350ca9aa39bf487c4ac4e86f042e715f214a89db813495cb80515d17", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-390.png", + "bytes": 29688, + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-again-390.before.html", + "bytes": 18195, + "sha256": "0d30220b7fa640f71b8a64f3d0a727d23a6fc0605d687ae357c3ea3343b8fdb2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-again-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-again-390.html", + "bytes": 18195, + "sha256": "0d30220b7fa640f71b8a64f3d0a727d23a6fc0605d687ae357c3ea3343b8fdb2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-again-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-again-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-again-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-again-390.png", + "bytes": 29700, + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-again-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.before.html", + "bytes": 21043, + "sha256": "6a0ef3e833cb1ec1d5e81b8fa865a22606aaebf4a6325a094f80965776d3b39a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-text-200-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.html", + "bytes": 21043, + "sha256": "6a0ef3e833cb1ec1d5e81b8fa865a22606aaebf4a6325a094f80965776d3b39a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-text-200-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.json", + "bytes": 4504, + "sha256": "5f25fcb3438e23c8da82b4f56aea5e3fca094692a605db0ee8c63d26f72e17d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-text-200-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.png", + "bytes": 48450, + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-text-200-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-stopped-390.before.html", + "bytes": 14721, + "sha256": "1ff85a39dce2635dc005f360f43a98d69256836561e7ee0ee5a14e3317c32f68", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-stopped-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-stopped-390.html", + "bytes": 14721, + "sha256": "1ff85a39dce2635dc005f360f43a98d69256836561e7ee0ee5a14e3317c32f68", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-stopped-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-stopped-390.json", + "bytes": 2958, + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-stopped-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-stopped-390.png", + "bytes": 31695, + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-stopped-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/intrinsic-width-diagnosis.json", + "bytes": 1681, + "sha256": "5f9d141b22c820efc00df05e432b6dbe77d693a7a14198307b9948c5513b3978", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\intrinsic-width-diagnosis.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/report.json", + "bytes": 53784, + "sha256": "9c1c9d90b1d55864b66bb9b0da33b2fbd05e85d6ecf5e70ceab6ed3771d39859", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\report.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02.command.json", + "bytes": 514, + "sha256": "713a05e8c3bb6ee8ed85fc49562871e1a4f5bf28ab544ffee13ec33eabfd343e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02.command.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02.stderr" + }, + { + "path": "operator/d3-enlargement-diagnosis-02.stdout", + "bytes": 479, + "sha256": "31db5f264364bb7962a150434032aed09130b22f2a0032b2d362e7d59f4516d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02.stdout" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/change-boundary.png", + "bytes": 50135, + "sha256": "e3a84fa9f8010add7871ab196f8abccfbbaab4046b6aec08bbae8aac4c2f163d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\change-boundary.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/failure.html", + "bytes": 21043, + "sha256": "1667d0a2ba7a05ad13378eab6f004b32c23aeee890e3de24b954d9ba3bd349e4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\failure.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/failure.png", + "bytes": 48450, + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\failure.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-empty-390.before.html", + "bytes": 12122, + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-empty-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-empty-390.html", + "bytes": 12122, + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-empty-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-empty-390.json", + "bytes": 1429, + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-empty-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-empty-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-empty-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-390.before.html", + "bytes": 18195, + "sha256": "e4e90a0c6a9b2ebd6593de15327a2163a1cae502a20b4b080565549429485ac4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-390.html", + "bytes": 18195, + "sha256": "e4e90a0c6a9b2ebd6593de15327a2163a1cae502a20b4b080565549429485ac4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-390.png", + "bytes": 29688, + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-again-390.before.html", + "bytes": 18195, + "sha256": "ac8a9f57bd49edeebff13e4e752f20d89731066258cd296196539d3e387aa1ea", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-again-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-again-390.html", + "bytes": 18195, + "sha256": "ac8a9f57bd49edeebff13e4e752f20d89731066258cd296196539d3e387aa1ea", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-again-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-again-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-again-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-again-390.png", + "bytes": 29700, + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-again-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.before.html", + "bytes": 21043, + "sha256": "1667d0a2ba7a05ad13378eab6f004b32c23aeee890e3de24b954d9ba3bd349e4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-text-200-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.html", + "bytes": 21043, + "sha256": "1667d0a2ba7a05ad13378eab6f004b32c23aeee890e3de24b954d9ba3bd349e4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-text-200-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.json", + "bytes": 4504, + "sha256": "5f25fcb3438e23c8da82b4f56aea5e3fca094692a605db0ee8c63d26f72e17d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-text-200-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.png", + "bytes": 48450, + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-text-200-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-stopped-390.before.html", + "bytes": 14721, + "sha256": "c99d225b4a798c7f17d79360f3044b707d2491a03d913fe1cfdf022becafa36a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-stopped-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-stopped-390.html", + "bytes": 14721, + "sha256": "c99d225b4a798c7f17d79360f3044b707d2491a03d913fe1cfdf022becafa36a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-stopped-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-stopped-390.json", + "bytes": 2958, + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-stopped-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-stopped-390.png", + "bytes": 31695, + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-stopped-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/intrinsic-width-diagnosis.json", + "bytes": 1094, + "sha256": "b7ab84e026c8a4785f4e64f61f68ae15c945607f0dcc1f691d89ae29e3641952", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\intrinsic-width-diagnosis.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/report.json", + "bytes": 53787, + "sha256": "310d33643208d5887ab00fdc9f6374d682f0067f9b1edbfd1b0bf5c3742388d3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\report.json" + }, + { + "path": "operator/d3-final-03-build.stderr", + "bytes": 342, + "sha256": "aa9b7207d2d2d42fbf4e013331ee76fc39b9b042505b38551893c1f60f35b63a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-build.stderr" + }, + { + "path": "operator/d3-final-03-build.stdout", + "bytes": 604, + "sha256": "e726ba3b108ddbd360c358c54c04154c2dd89dc90e7003bca255b8db23f9f7b0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-build.stdout" + }, + { + "path": "operator/d3-final-03-commands.json", + "bytes": 3910, + "sha256": "cd80bf5203ea3c863f77fc5190a937e0fbe2c2a3221f4a9806ee4500cf457892", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-commands.json" + }, + { + "path": "operator/d3-final-03-test.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-test.stderr" + }, + { + "path": "operator/d3-final-03-test.stdout", + "bytes": 1251, + "sha256": "5e876ce8972556a35b75a101d275324ab2d4c244b41f088b157d019d98609c57", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-test.stdout" + }, + { + "path": "operator/d3-final-03-tours-validate.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-tours-validate.stderr" + }, + { + "path": "operator/d3-final-03-tours-validate.stdout", + "bytes": 188, + "sha256": "8b91eaa9d523522537255352c11c4861181d47d8559a7cfee65ebd89e731476a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-tours-validate.stdout" + }, + { + "path": "operator/d3-final-browser-01.command.json", + "bytes": 383, + "sha256": "2f49fc84dc4bc4a20d172320eb19637a2395a6ba071344982e1d02f91ae9028b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01.command.json" + }, + { + "path": "operator/d3-final-browser-01.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01.stderr" + }, + { + "path": "operator/d3-final-browser-01.stdout", + "bytes": 654, + "sha256": "fa4b3733d14708ea7862f4d4432d2dcb771a1e3d2e7b4c48c9935066c41100c2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01.stdout" + }, + { + "path": "operator/d3-final-browser-02.command.json", + "bytes": 387, + "sha256": "65e27ecda84be3e5c05b7fa9c9218015bdeda8d816e20bec678c65f658ce261c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02.command.json" + }, + { + "path": "operator/d3-final-browser-02.stderr", + "bytes": 957, + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02.stderr" + }, + { + "path": "operator/d3-final-browser-02.stdout", + "bytes": 675, + "sha256": "b05bf8785f7d5e963a38b1a0c1fa99626ee5cd225adb964fff134f6f6623e420", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02.stdout" + }, + { + "path": "operator/d3-final-browser-03.stderr", + "bytes": 957, + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03.stderr" + }, + { + "path": "operator/d3-final-browser-03.stdout", + "bytes": 205, + "sha256": "a592d7c4ae366440302991fd057976fa66727bc0590b5759b58e686eeedbcd05", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03.stdout" + }, + { + "path": "operator/d3-final-browser-03/generated-accumulated-390.before.html", + "bytes": 54536, + "sha256": "59eb34ea0435ce840d70eb48a59adac70759497f3ae7a4b5584bc2488ffecbf2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-accumulated-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-accumulated-390.html", + "bytes": 54536, + "sha256": "59eb34ea0435ce840d70eb48a59adac70759497f3ae7a4b5584bc2488ffecbf2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-accumulated-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-accumulated-390.json", + "bytes": 20228, + "sha256": "6935b87a602d818b983454526a9b2b3e9d5d1c996fbed4318014aab143995adf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-accumulated-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-accumulated-390.png", + "bytes": 31563, + "sha256": "58ba9e90d8ee08e3e4de36315520230539a85f7a6f7aa00c00d551d1faeca633", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-accumulated-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1024.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1024.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1024.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1024.json", + "bytes": 1441, + "sha256": "bf71f827c6258d6850a61ffd3f44d5d49a579a8f50533c7e5b8995e599227732", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1024.json" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1024.png", + "bytes": 35614, + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1024.png" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1440.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1440.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1440.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1440.json", + "bytes": 1447, + "sha256": "ec64ee186c5090fb5b13eb0536c3d88caa2a51f55cf313b5321ef224d3ba7bf1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1440.json" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1440.png" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1920.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1920.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1920.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1920.json", + "bytes": 1447, + "sha256": "784b057efcc06117428ff64e758febd96fcead440f76cfd8bb1149a843077a42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1920.json" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1920.png", + "bytes": 38890, + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1920.png" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-320.before.html", + "bytes": 12162, + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-320.html", + "bytes": 12162, + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-320.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-320.json", + "bytes": 1429, + "sha256": "797209909becf655017daaaa1aa4c3561deb375c2cd86132540d874cdbc9a31d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-320.json" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-320.png", + "bytes": 27800, + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-320.png" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-390.before.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-390.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-390.json", + "bytes": 1429, + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-768.before.html", + "bytes": 12162, + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-768.html", + "bytes": 12162, + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-768.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-768.json", + "bytes": 1438, + "sha256": "c75f981b06d8509b77afe350c14ea252bc96e3ed341a3746f43eddc6746e6c33", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-768.json" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-768.png", + "bytes": 34212, + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-768.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1024.before.html", + "bytes": 18235, + "sha256": "31b63a4a1677db645819b3a8282212e35c49694d781bde3e1ee7fc0a7eac7a89", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1024.html", + "bytes": 18235, + "sha256": "31b63a4a1677db645819b3a8282212e35c49694d781bde3e1ee7fc0a7eac7a89", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1024.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1024.json", + "bytes": 4521, + "sha256": "b763d3a5d040ed75ab1034fa9b2a2c86503f719947d9bc57c800440ff9fb55b4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1024.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1024.png", + "bytes": 50960, + "sha256": "8771217ee4017d80a0d96770f8b6102ca307e466c9ce9bc892b162b00d43af5f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1024.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1440.before.html", + "bytes": 18235, + "sha256": "ff05f89650666f1a056ae7e94f9f5af7bed3077ea79ee74541717eee2d09c0c2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1440.html", + "bytes": 18235, + "sha256": "ff05f89650666f1a056ae7e94f9f5af7bed3077ea79ee74541717eee2d09c0c2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1440.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1440.json", + "bytes": 4528, + "sha256": "33ce1d3d8501c0c9bdf34e0f37ca1f9a3a2f39d0b5637f20594dff67c69b053f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1440.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1440.png", + "bytes": 53157, + "sha256": "0b0b4496efe9ccd09e844a4e75afb7ff74e37dc54ce08f64911ee322ed830d60", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1440.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1920.before.html", + "bytes": 18235, + "sha256": "7d4b324f47c6ae4f1a28be373c8f48bae4bddee948e7b02b5101f564988e5015", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1920.html", + "bytes": 18235, + "sha256": "7d4b324f47c6ae4f1a28be373c8f48bae4bddee948e7b02b5101f564988e5015", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1920.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1920.json", + "bytes": 4528, + "sha256": "2bc6cca0a819ca19908d7a4cc21e7803f649b224a1020f141090e8f703e4da75", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1920.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1920.png", + "bytes": 55209, + "sha256": "04ea13ef9f7347a8b3f69e0c6d8cbe277197c38ea5c31a4571154504696a7207", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1920.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-320.before.html", + "bytes": 18235, + "sha256": "8b29c5d26da3aeedb4ecee0b4b40a189d1a3470160fae0ac23af5c5c49d704c1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-320.html", + "bytes": 18235, + "sha256": "8b29c5d26da3aeedb4ecee0b4b40a189d1a3470160fae0ac23af5c5c49d704c1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-320.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-320.json", + "bytes": 4502, + "sha256": "acbd3eb3b7d0890f2c42ee7c2de5651a0e3b47a40719f0a65f953adbd372ddba", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-320.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-320.png", + "bytes": 27882, + "sha256": "914d34e5c4e3c77a75568bda1683fcad1e85d27ec995dd45cb9ab945c04b56b7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-320.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-390.before.html", + "bytes": 18235, + "sha256": "831bd2526f3ebdbd1795616642137818fc6f4df8fd64c06d989098c8bb667685", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-390.html", + "bytes": 18235, + "sha256": "831bd2526f3ebdbd1795616642137818fc6f4df8fd64c06d989098c8bb667685", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-390.png", + "bytes": 29688, + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-768.before.html", + "bytes": 18235, + "sha256": "bc1685eeb14ac6dde0ceb78f3bb834213d7b02ee5ce55204cc1825589165191b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-768.html", + "bytes": 18235, + "sha256": "bc1685eeb14ac6dde0ceb78f3bb834213d7b02ee5ce55204cc1825589165191b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-768.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-768.json", + "bytes": 4528, + "sha256": "629a509368163ec0675ab696b8317dd4d79c305a22ca9871b6874e4a3b9ec075", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-768.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-768.png", + "bytes": 49649, + "sha256": "7b29501873ba5b601f6bbb3ef55468f49a159347bf4839eeeb181e5d7bba9710", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-768.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1024.before.html", + "bytes": 18235, + "sha256": "1b70b093669a29e7c913b7fd5cd19aa3804f90d1c205e31b217003d6f701f9e1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1024.html", + "bytes": 18235, + "sha256": "1b70b093669a29e7c913b7fd5cd19aa3804f90d1c205e31b217003d6f701f9e1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1024.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1024.json", + "bytes": 4521, + "sha256": "b763d3a5d040ed75ab1034fa9b2a2c86503f719947d9bc57c800440ff9fb55b4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1024.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1024.png", + "bytes": 50971, + "sha256": "56f0f5a4352c57b7c56842dcd6da1f6c90d04dfb46cfae4995994a48995ec2e2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1024.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1440.before.html", + "bytes": 18235, + "sha256": "96661f580c686a2b16cecee3997a37c008cb26218824900b238512b4e52b80e9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1440.html", + "bytes": 18235, + "sha256": "96661f580c686a2b16cecee3997a37c008cb26218824900b238512b4e52b80e9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1440.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1440.json", + "bytes": 4524, + "sha256": "51378138438aa879575cff6711662990b1d2dcf1d417c4a9b85ba0a0c3c09421", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1440.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1440.png", + "bytes": 53122, + "sha256": "07765375ec1a2f2786cd335ef09b11e6daf43b5625483e646f3c722a6f5b291b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1440.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1920.before.html", + "bytes": 18235, + "sha256": "38f2d9548bd5544e0002105ed7bef8c6b1b25365855291c95f2cbb67dfe91045", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1920.html", + "bytes": 18235, + "sha256": "38f2d9548bd5544e0002105ed7bef8c6b1b25365855291c95f2cbb67dfe91045", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1920.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1920.json", + "bytes": 4528, + "sha256": "2bc6cca0a819ca19908d7a4cc21e7803f649b224a1020f141090e8f703e4da75", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1920.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1920.png", + "bytes": 55222, + "sha256": "8af7493a48bb6c6c5c98e4bcc94edf71d35ffe14af6a3db4b696e2923f5f123b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1920.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-320.before.html", + "bytes": 18235, + "sha256": "2a635423912976e0f7d6cc99e47ff9e669b8b355b542faa27b62924d68971a28", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-320.html", + "bytes": 18235, + "sha256": "2a635423912976e0f7d6cc99e47ff9e669b8b355b542faa27b62924d68971a28", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-320.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-320.json", + "bytes": 4498, + "sha256": "188c5498ec6159003e143423834a7aa6938d9f49a3ec7c85d742a2a4d453e52d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-320.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-320.png", + "bytes": 27824, + "sha256": "937c54b96421ca35ca308d9de0682e87350da227de26184abb7a3754220c5cd8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-320.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-390.before.html", + "bytes": 18235, + "sha256": "da528412b4f08c62c8ba769cd9b9dfc478a84976c339b57c9743fafd91e4ebac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-390.html", + "bytes": 18235, + "sha256": "da528412b4f08c62c8ba769cd9b9dfc478a84976c339b57c9743fafd91e4ebac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-390.png", + "bytes": 29700, + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-768.before.html", + "bytes": 18235, + "sha256": "332daa0d255caa5899f7aa121dfca63d9691a6ea22b08be21b36fe358125c200", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-768.html", + "bytes": 18235, + "sha256": "332daa0d255caa5899f7aa121dfca63d9691a6ea22b08be21b36fe358125c200", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-768.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-768.json", + "bytes": 4524, + "sha256": "dd95ca6fc9d1cd2bc995e8a97c30ae72c37bed8c09b38cf869c8263355556adc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-768.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-768.png", + "bytes": 49582, + "sha256": "b04709917a1a7c0571b29d18e84a1f98b2dbc9071ac2689281b8f7e2bde61968", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-768.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-text-200-390.before.html", + "bytes": 21083, + "sha256": "f3e85102aecc9303d5ff25eaffda807cf41d3444ed8bf1d6f72fce2f13565175", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-text-200-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-text-200-390.html", + "bytes": 21083, + "sha256": "f3e85102aecc9303d5ff25eaffda807cf41d3444ed8bf1d6f72fce2f13565175", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-text-200-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-text-200-390.json", + "bytes": 4506, + "sha256": "f623528e34fb1e7fccd23e840e1c9502f91966ba01d204592b1ecf7ad4a3aca3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-text-200-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-text-200-390.png", + "bytes": 49228, + "sha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-text-200-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1024.before.html", + "bytes": 19736, + "sha256": "9bce97b3f946570ac670b7ba0e5cbe0ec0dd2dc0cb3fd0159fe91a5f51dbe0c1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1024.html", + "bytes": 19736, + "sha256": "9bce97b3f946570ac670b7ba0e5cbe0ec0dd2dc0cb3fd0159fe91a5f51dbe0c1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1024.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1024.json", + "bytes": 4898, + "sha256": "09ed69e83dee153dcfcf86b3396f0a8bceb7b8513b51014c8a57262cf4b7e6d6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1024.json" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1024.png", + "bytes": 51830, + "sha256": "a0f976461b91b9595c61523d38a92ffeb29812b08ec7e43a9539782a8bbb1ad9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1024.png" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1440.before.html", + "bytes": 19736, + "sha256": "9cd399a50921668f33cde1ed70df59b680ac9282a44dcacaf7b479b9ea865cbe", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1440.html", + "bytes": 19736, + "sha256": "9cd399a50921668f33cde1ed70df59b680ac9282a44dcacaf7b479b9ea865cbe", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1440.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1440.json", + "bytes": 4900, + "sha256": "a113dd2bc8fce82da49447e11f2427ae3799c57e868e815d31a3cedc660b770e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1440.json" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1440.png", + "bytes": 54055, + "sha256": "a11ca95732178919c8ec6f957d8c8ce1e30376525fda5a4aace5b1870ac31dd2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1440.png" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1920.before.html", + "bytes": 19736, + "sha256": "14874ab71f36c95ca64bdcd3eb5f656f6c5a6f0fb72ff9f5f5adc57bd4a46e6b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1920.html", + "bytes": 19736, + "sha256": "14874ab71f36c95ca64bdcd3eb5f656f6c5a6f0fb72ff9f5f5adc57bd4a46e6b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1920.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1920.json", + "bytes": 4904, + "sha256": "f9784ce6975cbf0006b7e526e08a1fd7f67487354962cca52ac0163001f0db22", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1920.json" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1920.png", + "bytes": 56277, + "sha256": "ef4cc1b5a4d754bcc95061400b93152dc8aa9b536e221e8b9dec376b3623860d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1920.png" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-320.before.html", + "bytes": 19736, + "sha256": "f009a1ec5c5538c0c5bc1f078ce8070c810d3fa3709e6705ba2dfb4faee0042c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-320.html", + "bytes": 19736, + "sha256": "f009a1ec5c5538c0c5bc1f078ce8070c810d3fa3709e6705ba2dfb4faee0042c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-320.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-320.json", + "bytes": 4882, + "sha256": "eba49027b686d051cfec574abc3d529fb6e1738c01367c32f3cdc66485e1f7ba", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-320.json" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-320.png", + "bytes": 28623, + "sha256": "1ffeaf2cc5fcbb17e9fbc1dd7cfa1d46a42c460804fb45953b888760756df998", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-320.png" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-390.before.html", + "bytes": 19736, + "sha256": "b633586e65ea1710c3179a50fba99b6c286530fa0d2180104b4f43e54e7d46e0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-390.html", + "bytes": 19736, + "sha256": "b633586e65ea1710c3179a50fba99b6c286530fa0d2180104b4f43e54e7d46e0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-390.json", + "bytes": 4886, + "sha256": "919f9b1861ed7e8b243b04a43d3fb579c36cc962ff43b30fb6f562ee52fd4c5c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-390.png", + "bytes": 31565, + "sha256": "33ee4ebc7c01a3f826e4b66b873fa57610fce8cd9120df361172a40c3def033d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-768.before.html", + "bytes": 19736, + "sha256": "9f2c704770b4c42340d3598da93093bda55cf79ea910ad205ef68a8644db7532", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-768.html", + "bytes": 19736, + "sha256": "9f2c704770b4c42340d3598da93093bda55cf79ea910ad205ef68a8644db7532", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-768.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-768.json", + "bytes": 4871, + "sha256": "7e4b9963215262a407359174f1f42d59d60322a631832e1b86df469081dec80b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-768.json" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-768.png", + "bytes": 49385, + "sha256": "335650ac40dab0dbf9289b21fea9191ed2ed072bd43d63847810d026edb53f08", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-768.png" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1024.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1024.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1024.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1024.json", + "bytes": 1441, + "sha256": "bf71f827c6258d6850a61ffd3f44d5d49a579a8f50533c7e5b8995e599227732", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1024.json" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1024.png", + "bytes": 35614, + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1024.png" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1440.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1440.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1440.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1440.json", + "bytes": 1447, + "sha256": "ec64ee186c5090fb5b13eb0536c3d88caa2a51f55cf313b5321ef224d3ba7bf1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1440.json" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1440.png" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1920.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1920.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1920.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1920.json", + "bytes": 1447, + "sha256": "784b057efcc06117428ff64e758febd96fcead440f76cfd8bb1149a843077a42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1920.json" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1920.png", + "bytes": 38890, + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1920.png" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-320.before.html", + "bytes": 12162, + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-320.html", + "bytes": 12162, + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-320.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-320.json", + "bytes": 1429, + "sha256": "797209909becf655017daaaa1aa4c3561deb375c2cd86132540d874cdbc9a31d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-320.json" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-320.png", + "bytes": 27800, + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-320.png" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-390.before.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-390.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-390.json", + "bytes": 1429, + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-768.before.html", + "bytes": 12162, + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-768.html", + "bytes": 12162, + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-768.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-768.json", + "bytes": 1438, + "sha256": "c75f981b06d8509b77afe350c14ea252bc96e3ed341a3746f43eddc6746e6c33", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-768.json" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-768.png", + "bytes": 34212, + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-768.png" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1024.before.html", + "bytes": 14761, + "sha256": "6a2b277861fddc1c9b8d5d5c04608675e87cb1b0ff1dba099145b98805a064b7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1024.html", + "bytes": 14761, + "sha256": "6a2b277861fddc1c9b8d5d5c04608675e87cb1b0ff1dba099145b98805a064b7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1024.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1024.json", + "bytes": 2960, + "sha256": "5f0bf8dea5cd58549821744d98ac9f95da73d00b8f2f5217e60e13af57411751", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1024.json" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1024.png", + "bytes": 45309, + "sha256": "37d80b33fdd0769336860ba760072bca9682e6bef5d683e318a3f1752f3d6596", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1024.png" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1440.before.html", + "bytes": 14761, + "sha256": "f6a7d50b138436bd6d5ad5bcf72adb62568d19d43707a19193c7e3fa3070857f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1440.html", + "bytes": 14761, + "sha256": "f6a7d50b138436bd6d5ad5bcf72adb62568d19d43707a19193c7e3fa3070857f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1440.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1440.json", + "bytes": 2967, + "sha256": "a28da15d369adaad05e18e10240035df47bd14c334728dd0214a97b54b8d3b5e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1440.json" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1440.png", + "bytes": 47515, + "sha256": "83264c4288a5f0b7240a757a12571f7f292902ea890b426b9f4b5318dd3a85c7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1440.png" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1920.before.html", + "bytes": 14761, + "sha256": "f64f501220f8a0276d7a3bc5ab741d6c7a5c941a0cd77f2d75ccb7bc61131316", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1920.html", + "bytes": 14761, + "sha256": "f64f501220f8a0276d7a3bc5ab741d6c7a5c941a0cd77f2d75ccb7bc61131316", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1920.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1920.json", + "bytes": 2967, + "sha256": "5706a5988c38ce0d152a829c6e6f4dd7452998b3c4912bd0a8fe99e5194acc08", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1920.json" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1920.png", + "bytes": 49151, + "sha256": "c6e314e7866c16a0a9fb893ab53e708b69d01cf1dfc91e175171021ad1563339", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1920.png" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-320.before.html", + "bytes": 14761, + "sha256": "3fdff8dd2ec426a7eb057f3929eaa848287d708d6ef03d2056c72a6312eb5e81", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-320.html", + "bytes": 14761, + "sha256": "3fdff8dd2ec426a7eb057f3929eaa848287d708d6ef03d2056c72a6312eb5e81", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-320.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-320.json", + "bytes": 2958, + "sha256": "de17fa92bb7fb042e84db8d007b906105914069aa8eebc1c5fab248601a3b8e1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-320.json" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-320.png", + "bytes": 28849, + "sha256": "652934d39f0e3eb65357e59ab2312c57f16fe9c2c2c0e4791e407dc9303dc6ec", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-320.png" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-390.before.html", + "bytes": 14761, + "sha256": "9a6ae3a3b3ee5cfccf5b18dd2b430d95c8947deae9ed3f387c09e263b13d0cde", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-390.html", + "bytes": 14761, + "sha256": "9a6ae3a3b3ee5cfccf5b18dd2b430d95c8947deae9ed3f387c09e263b13d0cde", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-390.json", + "bytes": 2958, + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-390.png", + "bytes": 31695, + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-768.before.html", + "bytes": 14761, + "sha256": "c10e18c5db05e195233a32d1edf484a915bed44fce4e84742a91f9498c76833c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-768.html", + "bytes": 14761, + "sha256": "c10e18c5db05e195233a32d1edf484a915bed44fce4e84742a91f9498c76833c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-768.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-768.json", + "bytes": 2975, + "sha256": "608dcc480ad05aa2d6f509de3185c8b78a85123b58ffe0e7d509776dba1bdf41", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-768.json" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-768.png", + "bytes": 43950, + "sha256": "d2e9ff544a462e6031dbfed0f425caf9bf1472afdadc02b5bd94ef233e6bb442", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-768.png" + }, + { + "path": "operator/d3-final-browser-03/report.json", + "bytes": 577947, + "sha256": "76dd8ca1416225bd0f9abe0b524ced0299a86c975fb839cafa18551d04759f24", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\report.json" + }, + { + "path": "operator/d3-final-browser-03/source-accumulated-390.before.html", + "bytes": 86122, + "sha256": "cda586085a94bd048abe0d6a5d01f8ba4d47021806584558790352f4b67508b8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-accumulated-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-accumulated-390.html", + "bytes": 86122, + "sha256": "cda586085a94bd048abe0d6a5d01f8ba4d47021806584558790352f4b67508b8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-accumulated-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-accumulated-390.json", + "bytes": 28403, + "sha256": "8977d05241f0529107d785c5d2536e2896258bd583088176086cff623edc0365", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-accumulated-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-accumulated-390.png", + "bytes": 63085, + "sha256": "a98d959fb951441de714ee82308450b40628fdf83a422dba3ab14604d078d46f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-accumulated-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1024.before.html", + "bytes": 18277, + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1024.html", + "bytes": 18277, + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1024.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1024.json", + "bytes": 1709, + "sha256": "ede2876f19713dc531795df79fae94f1e4be1e6e59dde4c890d5a15c437dd3d5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1024.json" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1024.png", + "bytes": 76719, + "sha256": "1f1dcb02d9a8bc787a3c8f34284a37db509fe3c713c8cd2f1a0be280bec536bb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1024.png" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1440.before.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1440.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1440.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1440.json", + "bytes": 1715, + "sha256": "44f9802ac671da13c467ad5fd9e3283586cd10703eaa3cc653202c61ffe74a1f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1440.json" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1440.png", + "bytes": 84811, + "sha256": "d76544c99d3ac4bf70171cb55a4a984f5abb833b1b31ab3f17c971fb8ee13e3c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1440.png" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1920.before.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1920.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1920.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1920.json", + "bytes": 1717, + "sha256": "260c343e2494c57f66afb214a65220b03398ea2ca995d675370604361cb9632f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1920.json" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1920.png", + "bytes": 87564, + "sha256": "d15109fef507a1ff5c03ee7e219148e97c5d4cea7087eac04d48f8145a750aeb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1920.png" + }, + { + "path": "operator/d3-final-browser-03/source-empty-320.before.html", + "bytes": 18277, + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-320.html", + "bytes": 18277, + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-320.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-320.json", + "bytes": 1702, + "sha256": "8c49d01652d8a2b38a4b49aa70554305b1b5c5a5f9c8dffc59a28619cdee5568", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-320.json" + }, + { + "path": "operator/d3-final-browser-03/source-empty-320.png", + "bytes": 57493, + "sha256": "a62e4eb88af10918e0ad7ad40deb6f0c6e3e9482bada71e9a316054d12f14e44", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-320.png" + }, + { + "path": "operator/d3-final-browser-03/source-empty-390.before.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-390.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-390.json", + "bytes": 1702, + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-empty-390.png", + "bytes": 58620, + "sha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-empty-768.before.html", + "bytes": 18277, + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-768.html", + "bytes": 18277, + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-768.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-768.json", + "bytes": 1723, + "sha256": "727077405ce6cf0d1b2b56d4dc0b62cd2cf8f91a0c13ec45e7d14f912ac6a880", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-768.json" + }, + { + "path": "operator/d3-final-browser-03/source-empty-768.png", + "bytes": 77232, + "sha256": "0e831f09beeba076c2b20de1a4d87afd5e312efe5ad5a0c82f8b76842de7463b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-768.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-1024.before.html", + "bytes": 31169, + "sha256": "e553008bedfc8c779e1aca0aed9f21f0f71892bd41833c89af142313a4e45176", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-1024.html", + "bytes": 31169, + "sha256": "e553008bedfc8c779e1aca0aed9f21f0f71892bd41833c89af142313a4e45176", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1024.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-1024.json", + "bytes": 5908, + "sha256": "47f71ee461942f04a9f20ea9761d21911e447ed777780023eeb75627027b87ab", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1024.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-1024.png", + "bytes": 128884, + "sha256": "b381afd9f7491eacf6a037ceccdb12f2569d41517d332d0de8f32c54f0efc544", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1024.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-1440.before.html", + "bytes": 31169, + "sha256": "41fcbe79d81022e7a960a8bb9328923fc34cb7defdbdb84796d4fe76ecb53ac3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-1440.html", + "bytes": 31169, + "sha256": "41fcbe79d81022e7a960a8bb9328923fc34cb7defdbdb84796d4fe76ecb53ac3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1440.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-1440.json", + "bytes": 5922, + "sha256": "5ee19e2c30ca7a72425d05c7933872c423762cb05903081c441f9b5a296b7cd7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1440.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-1440.png", + "bytes": 144304, + "sha256": "7c4827c0c1db231e6bc77de6fad921d2a49e101088f96d5d9b15118b23a663cb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1440.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-1920.before.html", + "bytes": 31169, + "sha256": "cf319e2bddb9dd1617bfcda584096781a0c8ebe4531e20b4adcafd2e1bd25950", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-1920.html", + "bytes": 31169, + "sha256": "cf319e2bddb9dd1617bfcda584096781a0c8ebe4531e20b4adcafd2e1bd25950", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1920.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-1920.json", + "bytes": 5925, + "sha256": "3e3f387a51adf6b75f054e02682f15c9e69f67df0a20b1ac550cb7a208f501f5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1920.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-1920.png", + "bytes": 147532, + "sha256": "0dd49d3a3361769a55fd9b85464a8c162131053d49cc9dbd332fbe3354bfbe36", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1920.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-320.before.html", + "bytes": 31169, + "sha256": "6c386eb711883bbe758651a97d5cd1a34c7253abadc9702adaa845b70a6a75fc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-320.html", + "bytes": 31169, + "sha256": "6c386eb711883bbe758651a97d5cd1a34c7253abadc9702adaa845b70a6a75fc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-320.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-320.json", + "bytes": 5904, + "sha256": "a76329ce047c1f2b281868ea0ae4f4a44a8da8652f61da354c8a6b3bfe7e99c4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-320.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-320.png", + "bytes": 43791, + "sha256": "44c7e1467f62779beab1c0183ffe4514eb6fe13b34535663c9c38b6f1933a2f9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-320.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-390.before.html", + "bytes": 31169, + "sha256": "e41e344d41614a74f81c12b6048d07a41aa37dcb2cac3d496a6f04b4399a2958", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-390.html", + "bytes": 31169, + "sha256": "e41e344d41614a74f81c12b6048d07a41aa37dcb2cac3d496a6f04b4399a2958", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-390.json", + "bytes": 5899, + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-390.png", + "bytes": 58164, + "sha256": "4c0ec09af5cd6b81a74dc757af114d0b0af8298d7f1554eea6175132903036e8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-768.before.html", + "bytes": 31169, + "sha256": "3cea10bb8724cf16065e3590a9f84e673f06344cd2a01444221b56cad60372cd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-768.html", + "bytes": 31169, + "sha256": "3cea10bb8724cf16065e3590a9f84e673f06344cd2a01444221b56cad60372cd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-768.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-768.json", + "bytes": 5927, + "sha256": "913126dff6202cfe9571f31351c74fe36bd9243cc5ca45be239d4debb11f0448", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-768.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-768.png", + "bytes": 95358, + "sha256": "53662466a8e63ee63c22ef3048470ef87953482e9a26f76930cd0c8794b75328", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-768.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1024.before.html", + "bytes": 31169, + "sha256": "335a0b2107d52542902df88b616c64a58489fff420c320d3164bc0c7e4a31db1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1024.html", + "bytes": 31169, + "sha256": "335a0b2107d52542902df88b616c64a58489fff420c320d3164bc0c7e4a31db1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1024.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1024.json", + "bytes": 5908, + "sha256": "47f71ee461942f04a9f20ea9761d21911e447ed777780023eeb75627027b87ab", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1024.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1024.png", + "bytes": 128461, + "sha256": "97835197502d12bd65dd9a1fe6e859da8892a2251871bf263c1daae2808b3033", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1024.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1440.before.html", + "bytes": 31169, + "sha256": "677b47b9f59f62898a937fb9833211778e512d32468a25af7f8be58c3570bd51", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1440.html", + "bytes": 31169, + "sha256": "677b47b9f59f62898a937fb9833211778e512d32468a25af7f8be58c3570bd51", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1440.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1440.json", + "bytes": 5918, + "sha256": "ff0a36f9e62a3e0e18996d3645809fdbd0b7d38dc8b7352c737f930779c43375", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1440.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1440.png", + "bytes": 143678, + "sha256": "2d93b1676903b446f2e89ef6d62d674198ad1b5daf033ab2c0398ea48c348537", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1440.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1920.before.html", + "bytes": 31169, + "sha256": "5f6d472525009ad331ac226f5afb0595b46f7e8ae5abd33efc26dfb25dfa424a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1920.html", + "bytes": 31169, + "sha256": "5f6d472525009ad331ac226f5afb0595b46f7e8ae5abd33efc26dfb25dfa424a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1920.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1920.json", + "bytes": 5925, + "sha256": "3e3f387a51adf6b75f054e02682f15c9e69f67df0a20b1ac550cb7a208f501f5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1920.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1920.png", + "bytes": 148281, + "sha256": "fd6ec63d65548c8b6d3ca5558fe5f8758dc84134daa518e3aa7d31d74748f580", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1920.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-320.before.html", + "bytes": 31169, + "sha256": "fe4794d61ddb453b58bb3a0574c0a44a7fcc6be535f490c14c94049a960f92d0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-320.html", + "bytes": 31169, + "sha256": "fe4794d61ddb453b58bb3a0574c0a44a7fcc6be535f490c14c94049a960f92d0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-320.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-320.json", + "bytes": 5900, + "sha256": "82dfea2ac32f8f1fe1d03d22017e0f602fe1e0f94b8bd86153a9835acc6a61f3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-320.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-320.png", + "bytes": 44396, + "sha256": "1de10380e5438e19a7e0c6e19690cfdbb24cc1822a01dc28fd8dc411c937a2ca", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-320.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-390.before.html", + "bytes": 31169, + "sha256": "10c7b663d6011ac66410f6ebbce0e2f3ff147ba78a4f6edeedd162e17fad42cd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-390.html", + "bytes": 31169, + "sha256": "10c7b663d6011ac66410f6ebbce0e2f3ff147ba78a4f6edeedd162e17fad42cd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-390.json", + "bytes": 5899, + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-390.png", + "bytes": 58882, + "sha256": "1d8241a055cfaeb73eb0a25a1cc110e4ac50c9409e58035754c1896fb8bd1e8e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-768.before.html", + "bytes": 31169, + "sha256": "d892de46b7fbe83d7641f8318d7921ea185d885ea811a9a76fb268b6ffd8ba2b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-768.html", + "bytes": 31169, + "sha256": "d892de46b7fbe83d7641f8318d7921ea185d885ea811a9a76fb268b6ffd8ba2b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-768.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-768.json", + "bytes": 5923, + "sha256": "1ee677e15820c0634a102a07dd99781030db38f7dd86cfe815eaaf88053fc74f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-768.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-768.png", + "bytes": 95382, + "sha256": "0e9234dad7bd90d049e43078933c4d4e9caf3196d44c94f89b7409be6c6e7cac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-768.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-text-200-390.before.html", + "bytes": 34627, + "sha256": "635ad2633109d1b6c14560008a5610cb4140883b4f2e64b8aa8df364056e2370", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-text-200-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-text-200-390.html", + "bytes": 34627, + "sha256": "635ad2633109d1b6c14560008a5610cb4140883b4f2e64b8aa8df364056e2370", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-text-200-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-text-200-390.json", + "bytes": 5891, + "sha256": "9e7860273aad6cb70d41aa493f23df595335e8b9b7f32cfa74208bca04c4f0ab", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-text-200-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-text-200-390.png", + "bytes": 73249, + "sha256": "2d2c6213cf705762e21755eabebddcf2d20c07c01a2e505125107c95c0e77f4b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-text-200-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1024.before.html", + "bytes": 33646, + "sha256": "f02a4a6fccf701e01a35aa8c39e857ac0f832610164e934d66bbe3b0d60337a3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1024.html", + "bytes": 33646, + "sha256": "f02a4a6fccf701e01a35aa8c39e857ac0f832610164e934d66bbe3b0d60337a3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1024.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1024.json", + "bytes": 6720, + "sha256": "7fb180c6286013944831d8ddef09b36883ba273908b8f74ff1ae8a1f8da6eba7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1024.json" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1024.png", + "bytes": 135585, + "sha256": "92ccbdfce3e0995faf70ad1939d12f8d6f8ad2ecf9727ee11df9f51467879343", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1024.png" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1440.before.html", + "bytes": 33646, + "sha256": "154964016222b6c1a1e7aae1d5a39ac1c1b4bf5fc18d99a9e8c7bdaf164cc1fa", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1440.html", + "bytes": 33646, + "sha256": "154964016222b6c1a1e7aae1d5a39ac1c1b4bf5fc18d99a9e8c7bdaf164cc1fa", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1440.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1440.json", + "bytes": 6723, + "sha256": "06b0c8772672c8c540bdf19a9a6998610ec44597c062617bb734e19dea24c7cf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1440.json" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1440.png", + "bytes": 149978, + "sha256": "ccf4f2074df5b75ae9e53203f6683046d4a07119c0aa39cf40cd234ed1972516", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1440.png" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1920.before.html", + "bytes": 33646, + "sha256": "13230db9d544e4360191b568e56ea867b0bd65f60669a8947b55fd4c07696bdd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1920.html", + "bytes": 33646, + "sha256": "13230db9d544e4360191b568e56ea867b0bd65f60669a8947b55fd4c07696bdd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1920.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1920.json", + "bytes": 6729, + "sha256": "76e4f68e794708d8b4be5f8c4b1f2082272f5617e7276993b76b289c43bd2dcf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1920.json" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1920.png", + "bytes": 153852, + "sha256": "c54cc28181262b58434cc5ef9d1eedefa4b339d341e06a6659ce8ae1b20d64d0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1920.png" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-320.before.html", + "bytes": 33646, + "sha256": "de3c5a3ee1edb4fe3a58890088d96d9a37e86e1134cb3c577bdda5dd0b414a54", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-320.html", + "bytes": 33646, + "sha256": "de3c5a3ee1edb4fe3a58890088d96d9a37e86e1134cb3c577bdda5dd0b414a54", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-320.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-320.json", + "bytes": 6713, + "sha256": "107dd9fba874a78c5b9b2d70c0a016ebb76554ae2c5335a661626d8c7ed34bb7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-320.json" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-320.png", + "bytes": 47462, + "sha256": "f710fb7b3a81a6b996172ecad176745a6aca8fa6ed8cabfc1beed3553c6c3415", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-320.png" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-390.before.html", + "bytes": 33646, + "sha256": "4d08085c951fa3fa1f428eb8bcd6fdb9113fa8c027c8805fa8265644b88a6151", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-390.html", + "bytes": 33646, + "sha256": "4d08085c951fa3fa1f428eb8bcd6fdb9113fa8c027c8805fa8265644b88a6151", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-390.json", + "bytes": 6717, + "sha256": "2f228584dd5b101347fecb1ac11f22ce41b69b7e55636bcd677337c1e5b65aec", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-390.png", + "bytes": 62410, + "sha256": "3be1d4d87ab86cd042f7a2e2409df9521bcd3d0185e5490a9bdebdfc2322c589", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-768.before.html", + "bytes": 33646, + "sha256": "8cbb83779555a7a2883e88841c0fd2d1d8492c0786620cb122ae6b73fff148cc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-768.html", + "bytes": 33646, + "sha256": "8cbb83779555a7a2883e88841c0fd2d1d8492c0786620cb122ae6b73fff148cc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-768.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-768.json", + "bytes": 6725, + "sha256": "cf4917458a2da22f6713825f75bf94fb9638d0f0cfefd2a8bd356f3f5bb6b69a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-768.json" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-768.png", + "bytes": 102890, + "sha256": "d6426e2c8551db0ea54785c9752fd126c43dadc7c68a6639b7ae762cf9e2ded0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-768.png" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1024.before.html", + "bytes": 18277, + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1024.html", + "bytes": 18277, + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1024.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1024.json", + "bytes": 1709, + "sha256": "ede2876f19713dc531795df79fae94f1e4be1e6e59dde4c890d5a15c437dd3d5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1024.json" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1024.png", + "bytes": 76675, + "sha256": "28a5b8cbc04f9676ec6e93efc0abef0dc688bfc28e428e1f11dde8ad94a15047", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1024.png" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1440.before.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1440.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1440.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1440.json", + "bytes": 1715, + "sha256": "44f9802ac671da13c467ad5fd9e3283586cd10703eaa3cc653202c61ffe74a1f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1440.json" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1440.png", + "bytes": 84775, + "sha256": "af46f2737897dc01909a26e05dfcc40315a367b28e8cd459750e635793859608", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1440.png" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1920.before.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1920.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1920.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1920.json", + "bytes": 1717, + "sha256": "260c343e2494c57f66afb214a65220b03398ea2ca995d675370604361cb9632f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1920.json" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1920.png", + "bytes": 87561, + "sha256": "bbe8000a70f12ef30e269a508730b96a71569d75555526ae2c85cc1c29434a9b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1920.png" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-320.before.html", + "bytes": 18277, + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-320.html", + "bytes": 18277, + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-320.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-320.json", + "bytes": 1702, + "sha256": "8c49d01652d8a2b38a4b49aa70554305b1b5c5a5f9c8dffc59a28619cdee5568", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-320.json" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-320.png", + "bytes": 57478, + "sha256": "79fb416362b6d91c86f3287cf855f7c98c746abe4be85d9bfba3f7cd670956f2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-320.png" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-390.before.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-390.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-390.json", + "bytes": 1702, + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-390.png", + "bytes": 58601, + "sha256": "ff6103598e731b2f89b6f9eec44f4d3f1e901d905cb37c4b3139d4a30aa31de8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-768.before.html", + "bytes": 18277, + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-768.html", + "bytes": 18277, + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-768.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-768.json", + "bytes": 1723, + "sha256": "727077405ce6cf0d1b2b56d4dc0b62cd2cf8f91a0c13ec45e7d14f912ac6a880", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-768.json" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-768.png", + "bytes": 77201, + "sha256": "8ff8dc987409066bd07225af18517486c5b5c6f813cfdd5504cc76c2ad83942e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-768.png" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1024.before.html", + "bytes": 25903, + "sha256": "67ae30f361414c14a0e3370ac1374545310b84031cdf10867fbc07a27e9a535d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1024.html", + "bytes": 25903, + "sha256": "67ae30f361414c14a0e3370ac1374545310b84031cdf10867fbc07a27e9a535d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1024.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1024.json", + "bytes": 3794, + "sha256": "f856be09c38311c976f3fa8bced7e7e691c824bee145f46918deadd9b8d9b2e7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1024.json" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1024.png", + "bytes": 131813, + "sha256": "974cf22ed8518165144d257bc4eb9a4b179f7ec79baa5badb74038deb6ecd39f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1024.png" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1440.before.html", + "bytes": 25903, + "sha256": "e99e9e91522bd3e50baaf80dc8633bfb85aa7dfe53f8cbb2d52c593ba9b2c406", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1440.html", + "bytes": 25903, + "sha256": "e99e9e91522bd3e50baaf80dc8633bfb85aa7dfe53f8cbb2d52c593ba9b2c406", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1440.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1440.json", + "bytes": 3811, + "sha256": "d5b8ffa3745e3270bbbf6b26325c4cc6ec1c089a8367934ffbe3ae86ea6762ed", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1440.json" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1440.png", + "bytes": 142862, + "sha256": "e370868af0ecaaca436356008fc24545265e37c63ecb2e8b9fdfdd99fd1a8212", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1440.png" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1920.before.html", + "bytes": 25903, + "sha256": "adb8e6f298ffe081b6c79523af3996bb2e95ccbaf9c1dc31d2968862cc63895f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1920.html", + "bytes": 25903, + "sha256": "adb8e6f298ffe081b6c79523af3996bb2e95ccbaf9c1dc31d2968862cc63895f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1920.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1920.json", + "bytes": 3814, + "sha256": "0ae98020ee1f42f82bd2deb850ddb436256ac8777fb87e3ebdb94f462f6047d5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1920.json" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1920.png", + "bytes": 147287, + "sha256": "ce6b21480ba81a5c5b0d172dcd7b44b4fcaf999c4fcd7696fbc3b63305ca6dc3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1920.png" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-320.before.html", + "bytes": 25903, + "sha256": "4b4a1f56a824d930787f3288ee8ce29e1013d2ed61757a94ea68932c7e29af60", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-320.html", + "bytes": 25903, + "sha256": "4b4a1f56a824d930787f3288ee8ce29e1013d2ed61757a94ea68932c7e29af60", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-320.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-320.json", + "bytes": 3791, + "sha256": "a520606f96c1a0e08d83b3f0c1821bd1e74c514aa2bb5a85cddbc7d66165a077", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-320.json" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-320.png", + "bytes": 44734, + "sha256": "12ff4ab7c4bf5c9d15fa6cd71d5b5d43d2684f73b2ff6dc4d84e26ff711ea8a8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-320.png" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-390.before.html", + "bytes": 25903, + "sha256": "c3cef1789fbc8e9e327a86ffdea8e54bb90d062fb7813c5bc18caba4768fb6b6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-390.html", + "bytes": 25903, + "sha256": "c3cef1789fbc8e9e327a86ffdea8e54bb90d062fb7813c5bc18caba4768fb6b6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-390.json", + "bytes": 3790, + "sha256": "1aff41667b5c71a7a8837fd32990a1da65f759dd33eeb51427d048c26e2372d1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-390.png", + "bytes": 61815, + "sha256": "75dfacf045b4fb2ef8fb3e8aec88f3f5662bbfe513fed7cddfd1dfa2bd31a642", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-768.before.html", + "bytes": 25903, + "sha256": "7e37c2ab68fe793a202f44c3b6cbd5e04d8e3d07086a79e33c0b7dd2bb5a4c1a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-768.html", + "bytes": 25903, + "sha256": "7e37c2ab68fe793a202f44c3b6cbd5e04d8e3d07086a79e33c0b7dd2bb5a4c1a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-768.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-768.json", + "bytes": 3818, + "sha256": "5ea3551f00031a2024574e1cd3306b6889ab70d488ccd409f8d3210ed568f8a2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-768.json" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-768.png", + "bytes": 109462, + "sha256": "b2466d0ff97cf542a63593b904a50661332abb1189084f966d03a1152ad93396", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-768.png" + }, + { + "path": "operator/d3-final-build.stderr", + "bytes": 342, + "sha256": "aa9b7207d2d2d42fbf4e013331ee76fc39b9b042505b38551893c1f60f35b63a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-build.stderr" + }, + { + "path": "operator/d3-final-build.stdout", + "bytes": 604, + "sha256": "be9dc75957812cac470f8d40434ab7baf382dd612a5cd87ba1297ade132c181c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-build.stdout" + }, + { + "path": "operator/d3-final-commands.json", + "bytes": 3360, + "sha256": "c50027c7830d7e61e42fdd3c18cbd4dbb96e42793f187d2f05a5e1f79f554f69", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-commands.json" + }, + { + "path": "operator/d3-final-diff-check.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-diff-check.stderr" + }, + { + "path": "operator/d3-final-diff-check.stdout", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-diff-check.stdout" + }, + { + "path": "operator/d3-final-examples-guidance-smoke.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-examples-guidance-smoke.stderr" + }, + { + "path": "operator/d3-final-examples-guidance-smoke.stdout", + "bytes": 140, + "sha256": "a76988d0455da311e5797878cecd1be495ffe63b33e13660346e8e5c9e6d4145", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-examples-guidance-smoke.stdout" + }, + { + "path": "operator/d3-final-lf-normalization.json", + "bytes": 1911, + "sha256": "ad3946ae3f0820a256a0b839baa87ee13cbe90af699928eb835e1b4d23449a2f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-lf-normalization.json" + }, + { + "path": "operator/d3-final-metadata-checks.json", + "bytes": 352, + "sha256": "97bfce3ca8caf4426cbed16abd81411f11bc5e5c542128767a2edcd700e1a3fa", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-metadata-checks.json" + }, + { + "path": "operator/d3-final-prose.txt", + "bytes": 5982, + "sha256": "2f4a73aadbf1e87b479d202c9bf5e7a1cd936f159dc5292844f59c18048f91d0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-prose.txt" + }, + { + "path": "operator/d3-final-secret-scan.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-secret-scan.stderr" + }, + { + "path": "operator/d3-final-secret-scan.stdout", + "bytes": 141, + "sha256": "1574dfc9f9dc1c7175652ec851b5944d2d6b0ee97ad1afbcf989783f2090ce34", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-secret-scan.stdout" + }, + { + "path": "operator/d3-final-test.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-test.stderr" + }, + { + "path": "operator/d3-final-test.stdout", + "bytes": 1251, + "sha256": "415a30904771db5a1a8eaeea6001ef3d5022750dbef6055a0f08d881afc20279", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-test.stdout" + }, + { + "path": "operator/d3-final-tours-validate.stderr", + "bytes": 925, + "sha256": "578309586345b873d69f513fcf383357afb83fdbf8edc8fddbda8774c7ec7d8d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-tours-validate.stderr" + }, + { + "path": "operator/d3-final-tours-validate.stdout", + "bytes": 69, + "sha256": "dc8b18d469f3ea284dc0a307e769a6bb99d249514925c4d43c316425248704a9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-tours-validate.stdout" + }, + { + "path": "operator/d3-final-typecheck.command.json", + "bytes": 117, + "sha256": "9b888dae88823ee1d9e4938e3a961e5bd033289f3979451e04f40dda55541787", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-typecheck.command.json" + }, + { + "path": "operator/d3-final-typecheck.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-typecheck.stderr" + }, + { + "path": "operator/d3-final-typecheck.stdout", + "bytes": 45, + "sha256": "1611f2f8467e52eeae9fc30b4f851e7b429aec602524637ddd6f4a9a58d6ae5f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-typecheck.stdout" + }, + { + "path": "operator/d3-first-typecheck.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-first-typecheck.stderr" + }, + { + "path": "operator/d3-first-typecheck.stdout", + "bytes": 45, + "sha256": "1611f2f8467e52eeae9fc30b4f851e7b429aec602524637ddd6f4a9a58d6ae5f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-first-typecheck.stdout" + }, + { + "path": "operator/d3-focus-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "bytes": 5320, + "sha256": "8c3c452e944de438b6449be63f5cbc9b38102fa50dc7c5a8e50c2699914c552f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-focus-before\\examples\\apps\\chat-ui\\template\\src\\nodeagent-chat\\NodeAgentChatApp.jsx" + }, + { + "path": "operator/d3-focus-before/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "bytes": 4444, + "sha256": "04e64097b0c543254f59694d6a85e86f5892ba245ad308780af3013ef1284fb8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-focus-before\\src\\features\\node-agent\\components\\NodeAgentThread.tsx" + }, + { + "path": "operator/d3-generated-boundary-01.command.json", + "bytes": 52, + "sha256": "35d95e32b577ec1614b54f2a181df91e87f05eb2be066a165df2666d8ccdef56", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-boundary-01.command.json" + }, + { + "path": "operator/d3-generated-boundary-01.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-boundary-01.stderr" + }, + { + "path": "operator/d3-generated-boundary-01.stdout", + "bytes": 206, + "sha256": "d3207ae164ec553d27128337bafcf866847453c57306650b5584846eeeac432a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-boundary-01.stdout" + }, + { + "path": "operator/d3-generated-boundary-02.command.json", + "bytes": 52, + "sha256": "23a0c22580d00eaa8f0f616d4f1cb4c29c70eab2010a093bec6252b5cd5fa5fe", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-boundary-02.command.json" + }, + { + "path": "operator/d3-generated-boundary-02.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-boundary-02.stderr" + }, + { + "path": "operator/d3-generated-boundary-02.stdout", + "bytes": 206, + "sha256": "d3207ae164ec553d27128337bafcf866847453c57306650b5584846eeeac432a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-boundary-02.stdout" + }, + { + "path": "operator/d3-generated-matched-after-replay.command.json", + "bytes": 262, + "sha256": "dbf4e6f44970b71deb31420fd656478fa3771c0f2371a606f26ae0a0e34837d2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after-replay.command.json" + }, + { + "path": "operator/d3-generated-matched-after-replay.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after-replay.stderr" + }, + { + "path": "operator/d3-generated-matched-after-replay.stdout", + "bytes": 200, + "sha256": "81849c8fc4e0f312f9f700a75b64872b1c7ccc07f3603f3708e4af2a49e8f90a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after-replay.stdout" + }, + { + "path": "operator/d3-generated-matched-after.command.json", + "bytes": 264, + "sha256": "4965158868507ed28ce0c9713c0bbafb94297a53377f185f33ba5fc12effdaf1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after.command.json" + }, + { + "path": "operator/d3-generated-matched-after.stderr", + "bytes": 1621, + "sha256": "a6262f3bc18d1e059bbe7c260ae0dfa6f35ae37facac2d98ca69231ca4cb97e4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after.stderr" + }, + { + "path": "operator/d3-generated-matched-after.stdout", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after.stdout" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-1440.after.html", + "bytes": 14623, + "sha256": "93802404a4ff289806f9540d10a8841cec309d644c1021fadbd2db2133b97be7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-1440.after.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-1440.before.html", + "bytes": 14623, + "sha256": "93802404a4ff289806f9540d10a8841cec309d644c1021fadbd2db2133b97be7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-1440.before.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-1440.html", + "bytes": 14623, + "sha256": "93802404a4ff289806f9540d10a8841cec309d644c1021fadbd2db2133b97be7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-1440.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-1440.png", + "bytes": 47462, + "sha256": "5a572d368b6e666892fa186814393ec7db29a4801bf9a048fcb9a74b84391528", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-1440.png" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-390.after.html", + "bytes": 14623, + "sha256": "fc96fe9a6a8f6823aae8e6e2d51cd087c2f139e9cb71818f1e0a704ed81916fb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-390.after.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-390.before.html", + "bytes": 14623, + "sha256": "fc96fe9a6a8f6823aae8e6e2d51cd087c2f139e9cb71818f1e0a704ed81916fb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-390.before.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-390.html", + "bytes": 14623, + "sha256": "fc96fe9a6a8f6823aae8e6e2d51cd087c2f139e9cb71818f1e0a704ed81916fb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-390.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-390.png", + "bytes": 35598, + "sha256": "b36a7a967eef092af86ff1417cc142b8182bf05e335915027c18b31f530e95e2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-390.png" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-1440.after.html", + "bytes": 11429, + "sha256": "5c123d864606c7128fd6393efee5afc385ef6b19507e1f264507ac8e8ea43754", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-1440.after.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-1440.before.html", + "bytes": 11429, + "sha256": "5c123d864606c7128fd6393efee5afc385ef6b19507e1f264507ac8e8ea43754", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-1440.before.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-1440.html", + "bytes": 11429, + "sha256": "5c123d864606c7128fd6393efee5afc385ef6b19507e1f264507ac8e8ea43754", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-1440.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-1440.png", + "bytes": 28413, + "sha256": "4f9cb8fedbf3fb25f07292e9624c521a078c1cce713fe440b36d8479b8a409cc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-1440.png" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-390.after.html", + "bytes": 11429, + "sha256": "477a30d738a7db9e316dd46450d85ab47b260a34f3f561dbf0a352c7af29fb56", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-390.after.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-390.before.html", + "bytes": 11429, + "sha256": "477a30d738a7db9e316dd46450d85ab47b260a34f3f561dbf0a352c7af29fb56", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-390.before.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-390.html", + "bytes": 11429, + "sha256": "477a30d738a7db9e316dd46450d85ab47b260a34f3f561dbf0a352c7af29fb56", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-390.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-390.png", + "bytes": 23160, + "sha256": "c3c92b4a3907ad40dbc766b7d20ac8449228fcbeb6f47e1cacb1962b2330314e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-390.png" + }, + { + "path": "operator/d3-generated-matched-after/report.json", + "bytes": 67162, + "sha256": "0ac3c1b23adee9509c4af8d3bd38bda1299767760cfba8ca02d9bb4ff9dc328c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\report.json" + }, + { + "path": "operator/d3-handoff-packaged-before.md.txt", + "bytes": 3118, + "sha256": "17e983697edaf77f341bf588e4618e0cb53f46d6e04ef8e8f9f4914c3ab00d98", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-handoff-packaged-before.md.txt" + }, + { + "path": "operator/d3-host-install-02.stderr", + "bytes": 150, + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-host-install-02.stderr" + }, + { + "path": "operator/d3-host-install-02.stdout", + "bytes": 144, + "sha256": "9c0a23925ed0f61c116e515f3ac86f72484b07c39ca88f666e1308367904c430", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-host-install-02.stdout" + }, + { + "path": "operator/d3-host-install-03.stderr", + "bytes": 150, + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-host-install-03.stderr" + }, + { + "path": "operator/d3-host-install-03.stdout", + "bytes": 144, + "sha256": "f42cbf23e239333ad2c9df50f1b39047eb7f0135eaccd1f8890010b7afba7002", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-host-install-03.stdout" + }, + { + "path": "operator/d3-host-install.stderr", + "bytes": 150, + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-host-install.stderr" + }, + { + "path": "operator/d3-host-install.stdout", + "bytes": 144, + "sha256": "38d4a818c8f81e88f34d665cd8e9a9684dd2d78fabf44910dea82f70b3b52487", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-host-install.stdout" + }, + { + "path": "operator/d3-installed-consumer-02.json", + "bytes": 38387, + "sha256": "62b48f27af6329f3122d4d578a11dc654189edb5c87cc3b2650992ce93396912", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-consumer-02.json" + }, + { + "path": "operator/d3-installed-consumer-03.json", + "bytes": 38387, + "sha256": "1e04ecb75be184c4669c8d3fd3e8f3e1fb498e05366d4fbc43f970dcb7560200", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-consumer-03.json" + }, + { + "path": "operator/d3-installed-consumer.json", + "bytes": 38384, + "sha256": "fae10ad9b9215f01e61d6f54131a151c4bc6e954d0e445efdde0cae90ffb43fd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-consumer.json" + }, + { + "path": "operator/d3-installed-doctor-02.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-doctor-02.stderr" + }, + { + "path": "operator/d3-installed-doctor-02.stdout", + "bytes": 1118, + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-doctor-02.stdout" + }, + { + "path": "operator/d3-installed-doctor-03.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-doctor-03.stderr" + }, + { + "path": "operator/d3-installed-doctor-03.stdout", + "bytes": 1118, + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-doctor-03.stdout" + }, + { + "path": "operator/d3-installed-doctor.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-doctor.stderr" + }, + { + "path": "operator/d3-installed-doctor.stdout", + "bytes": 1118, + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-doctor.stdout" + }, + { + "path": "operator/d3-installed-scaffold-02.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-scaffold-02.stderr" + }, + { + "path": "operator/d3-installed-scaffold-02.stdout", + "bytes": 2049, + "sha256": "e6a0b0802dcae37f0871edbb9529c6de8c267fbdd76e7d25d778fdac29399465", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-scaffold-02.stdout" + }, + { + "path": "operator/d3-installed-scaffold-03.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-scaffold-03.stderr" + }, + { + "path": "operator/d3-installed-scaffold-03.stdout", + "bytes": 2049, + "sha256": "97ee1203b2491dd31963beb8a254e988303431bd1c7774216518701d2a29bdcb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-scaffold-03.stdout" + }, + { + "path": "operator/d3-installed-scaffold.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-scaffold.stderr" + }, + { + "path": "operator/d3-installed-scaffold.stdout", + "bytes": 2043, + "sha256": "d6c942e15a568d6f223322b485ad439264f825f12ae3ac6fda097d6e0fe1fe9b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-scaffold.stdout" + }, + { + "path": "operator/d3-keyboard-citation-relocation.json", + "bytes": 197, + "sha256": "245409157ef54aebccec0e58ffd6fcc482f9dd9335a8969daaaaa49193ff455a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-citation-relocation.json" + }, + { + "path": "operator/d3-keyboard-focus-before.tsx.txt", + "bytes": 5161, + "sha256": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-focus-before.tsx.txt" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01.command.json", + "bytes": 523, + "sha256": "36e5322b09a2fd127ece84b5c6962544670eb635df7414ff603b30db0d2a5a0e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01.command.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01.stderr", + "bytes": 957, + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01.stderr" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01.stdout", + "bytes": 484, + "sha256": "5192efce398ea8e42e0e5491510d7c15ed129e70bcb99c148c4f6506be061d81", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01.stdout" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/change-boundary.md.txt", + "bytes": 715, + "sha256": "d91dfa0a68b04f01cc66b0bcc67d7726e502616618789a8128a8bbe0ef966310", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\change-boundary.md" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/change-boundary.png", + "bytes": 76297, + "sha256": "8559c7727d6c0a1750d7ffe7e6dc4bb2f7ede81c6c0180dfa9c582dff95cdf38", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\change-boundary.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.before.html", + "bytes": 34627, + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\diagnostic-keyboard-recovery-region.before.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.html", + "bytes": 34627, + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\diagnostic-keyboard-recovery-region.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.json", + "bytes": 5891, + "sha256": "9e7860273aad6cb70d41aa493f23df595335e8b9b7f32cfa74208bca04c4f0ab", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\diagnostic-keyboard-recovery-region.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.png", + "bytes": 72889, + "sha256": "846136dc3a855a4191839ce33ca98e9d79dd476dca996256865edd6a140b6c36", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\diagnostic-keyboard-recovery-region.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/failure.html", + "bytes": 34627, + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\failure.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/failure.png", + "bytes": 72872, + "sha256": "544ccbfcb162c1441025eba9bb53f26b7de351a07c7704c135c886a782d658a7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\failure.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/keyboard-scroll-diagnosis.json", + "bytes": 1143, + "sha256": "55db54af6a77501aafffad8d4ae2acb9111e17a4c1817e2c322e990e37b82414", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\keyboard-scroll-diagnosis.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/report.json", + "bytes": 69620, + "sha256": "007dfcf15b7c2d539101b54b3bce3b1a6b75a6b6530f9bd2683d7976eed87118", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\report.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.before.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-empty-390.before.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-empty-390.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.json", + "bytes": 1702, + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-empty-390.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.png", + "bytes": 58620, + "sha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-empty-390.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-390.before.html", + "bytes": 31169, + "sha256": "1777b797c4ab6d7213fa74ec2f5e54382191bddd132644b81d6bdc5acf022151", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-390.before.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-390.html", + "bytes": 31169, + "sha256": "1777b797c4ab6d7213fa74ec2f5e54382191bddd132644b81d6bdc5acf022151", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-390.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-390.json", + "bytes": 5899, + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-390.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-390.png", + "bytes": 58202, + "sha256": "29a7493e6ac3a9eb3cba4804f8040d2827c465c2a5d05b2660e22c8857f63916", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-390.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.before.html", + "bytes": 31169, + "sha256": "aeb966646b5d6076442f56e8ed8b7830d2e701cd094036b90c5251a9e933b700", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-again-390.before.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.html", + "bytes": 31169, + "sha256": "aeb966646b5d6076442f56e8ed8b7830d2e701cd094036b90c5251a9e933b700", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-again-390.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.json", + "bytes": 5899, + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-again-390.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.png", + "bytes": 58905, + "sha256": "c481e005cee97d17a7f53d59ecc2a544369e32a6235277d4366ed43e19dc9707", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-again-390.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.before.html", + "bytes": 34627, + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-text-200-390.before.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.html", + "bytes": 34627, + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-text-200-390.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.json", + "bytes": 5898, + "sha256": "642561a152465d1c806c5fdcabc6f00a992ba7619cca8c90be7d25d5a633f9ab", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-text-200-390.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.png", + "bytes": 75771, + "sha256": "654cf0d4f6001314c345f1b0251b004983cf16ffb0cca46f13d5a444ffdc4873", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-text-200-390.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.before.html", + "bytes": 25903, + "sha256": "ed93ea49927d1848280dcb2f572f22e784e2c4d6cf48d999352530608ac460d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-stopped-390.before.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.html", + "bytes": 25903, + "sha256": "ed93ea49927d1848280dcb2f572f22e784e2c4d6cf48d999352530608ac460d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-stopped-390.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.json", + "bytes": 3790, + "sha256": "1aff41667b5c71a7a8837fd32990a1da65f759dd33eeb51427d048c26e2372d1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-stopped-390.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.png", + "bytes": 61699, + "sha256": "4f2e24a7795ce397f769657bf0374fc4dad5851cf2b0f37a83a9063fd25ef3b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-stopped-390.png" + }, + { + "path": "operator/d3-pack-02.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-pack-02.stderr" + }, + { + "path": "operator/d3-pack-02.stdout", + "bytes": 28782, + "sha256": "e11980e1856109a5a49eeed701d54fe2a86c74074a9801d83ccf42112f48dc32", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-pack-02.stdout" + }, + { + "path": "operator/d3-pack-03.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-pack-03.stderr" + }, + { + "path": "operator/d3-pack-03.stdout", + "bytes": 28782, + "sha256": "1555caaa51c0d682e37026c24fd650a1182cc4b94d8d6dc15d7f63454db5324c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-pack-03.stdout" + }, + { + "path": "operator/d3-pack.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-pack.stderr" + }, + { + "path": "operator/d3-pack.stdout", + "bytes": 28782, + "sha256": "9db89fc7edf9f219f4cdc0e43a08c601fe1aa98287b9add52f4dff1abe6d72f1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-pack.stdout" + }, + { + "path": "operator/d3-primary-preservation-readback.json", + "bytes": 829, + "sha256": "f9d8db5add97926c73e771e38192c5c36eaf51e86d45ff48428863b101012288", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-primary-preservation-readback.json" + }, + { + "path": "operator/d3-primary-preservation-verified.json", + "bytes": 630, + "sha256": "ac19b4efa8e540a184852d9c2c21f3dff15171ec8fc481b3e9c86ca51bcb77ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-primary-preservation-verified.json" + }, + { + "path": "operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "bytes": 4280, + "sha256": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-product-before-custody\\examples\\apps\\chat-ui\\template\\src\\nodeagent-chat\\NodeAgentChatApp.jsx" + }, + { + "path": "operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx.txt", + "bytes": 3350, + "sha256": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-product-before-custody\\examples\\apps\\chat-ui\\template\\src\\nodeagent-chat\\toolUIs.jsx" + }, + { + "path": "operator/d3-product-before-custody/examples/apps/chat-ui/template/src/styles.css", + "bytes": 6410, + "sha256": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-product-before-custody\\examples\\apps\\chat-ui\\template\\src\\styles.css" + }, + { + "path": "operator/d3-product-before-custody/src/app/styles.css", + "bytes": 13641, + "sha256": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-product-before-custody\\src\\app\\styles.css" + }, + { + "path": "operator/d3-product-before-custody/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "bytes": 3401, + "sha256": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-product-before-custody\\src\\features\\node-agent\\components\\NodeAgentThread.tsx" + }, + { + "path": "operator/d3-product-before-custody/src/features/node-agent/components/toolUIs.tsx.txt", + "bytes": 5635, + "sha256": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-product-before-custody\\src\\features\\node-agent\\components\\toolUIs.tsx" + }, + { + "path": "operator/d3-retry-guard-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "bytes": 5495, + "sha256": "1b13c028fb4db0bdf2a7ce91b2a3b9d185a2026b27c068492f3c122c0f1ad7e6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-retry-guard-before\\examples\\apps\\chat-ui\\template\\src\\nodeagent-chat\\NodeAgentChatApp.jsx" + }, + { + "path": "operator/d3-retry-guard-before/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "bytes": 4713, + "sha256": "2d2644ae39e93b598d8386807d18fb886d1635e68dd38f5903e3a7b5f8be06fb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-retry-guard-before\\src\\features\\node-agent\\components\\NodeAgentThread.tsx" + }, + { + "path": "operator/d3-runtime-state-guard-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "bytes": 5692, + "sha256": "737689cbaac3caae9670c023437877eefe34d611286947e8899e8e1ee6959efa", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-runtime-state-guard-before\\examples\\apps\\chat-ui\\template\\src\\nodeagent-chat\\NodeAgentChatApp.jsx" + }, + { + "path": "operator/d3-runtime-state-guard-before/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "bytes": 4941, + "sha256": "90c6194898c4330a140b84731928e1573141e96db88158173539d93fe4de12c4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-runtime-state-guard-before\\src\\features\\node-agent\\components\\NodeAgentThread.tsx" + }, + { + "path": "operator/d3-source-boundary-01.command.json", + "bytes": 53, + "sha256": "2bea3aefe25f049c940de1c8bebfb658d567b010717c6b156d69a669f4dfeecb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-01.command.json" + }, + { + "path": "operator/d3-source-boundary-01.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-01.stderr" + }, + { + "path": "operator/d3-source-boundary-01.stdout", + "bytes": 960, + "sha256": "63ea90dc4a68b1cd0a0595e10831a59565a4fbb4cefa849e31fad43232502b7c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-01.stdout" + }, + { + "path": "operator/d3-source-boundary-02.command.json", + "bytes": 53, + "sha256": "b6a94d61fceaf70c2198ff946038ab841f60b57616c1dfa638759686e338a26d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-02.command.json" + }, + { + "path": "operator/d3-source-boundary-02.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-02.stderr" + }, + { + "path": "operator/d3-source-boundary-02.stdout", + "bytes": 745, + "sha256": "e4f49b9ae665c31e6d5258505630bd35d85fe410861d66876acdbf66bfcdf1bf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-02.stdout" + }, + { + "path": "operator/d3-source-boundary-03.command.json", + "bytes": 53, + "sha256": "351f0aaa5dc66de62a8a176f5197da7d3731af51b661555d8e1db2ac71723a5f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-03.command.json" + }, + { + "path": "operator/d3-source-boundary-03.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-03.stderr" + }, + { + "path": "operator/d3-source-boundary-03.stdout", + "bytes": 206, + "sha256": "d3207ae164ec553d27128337bafcf866847453c57306650b5584846eeeac432a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-03.stdout" + }, + { + "path": "operator/d3-source-matched-after.command.json", + "bytes": 260, + "sha256": "32ca14e4c93bd39af98c01a748f3503483f2953cca1bd765183e601d8e69e8bf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after.command.json" + }, + { + "path": "operator/d3-source-matched-after.stderr", + "bytes": 957, + "sha256": "f51f78c20b8fd4d325f92d97e6cb3d8bde61a8db6be8bdc118cd8fa4323b5cf3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after.stderr" + }, + { + "path": "operator/d3-source-matched-after.stdout", + "bytes": 542, + "sha256": "eb71d02b08461475c2bf895acb53c4cad3cd072b7565bf00feb0fc57c6bbcc36", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after.stdout" + }, + { + "path": "operator/d3-source-matched-after/report.json", + "bytes": 113363, + "sha256": "891b91c24dc53ac23392dd45044c9d8d2aff7303fe02e679a31746686d80e5b1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\report.json" + }, + { + "path": "operator/d3-source-matched-after/source-error-1024.after.html", + "bytes": 25598, + "sha256": "648ef36168785001c975a10566f14a820596fabc1284ec6e0219bf9f15607126", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1024.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1024.before.html", + "bytes": 25598, + "sha256": "648ef36168785001c975a10566f14a820596fabc1284ec6e0219bf9f15607126", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1024.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1024.html", + "bytes": 25598, + "sha256": "648ef36168785001c975a10566f14a820596fabc1284ec6e0219bf9f15607126", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1024.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1024.png", + "bytes": 107187, + "sha256": "d6bffd8792afcf80f5ee707750829a0f9480757b2bc0ba4eb34c13eba3877a7c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1024.png" + }, + { + "path": "operator/d3-source-matched-after/source-error-1440.after.html", + "bytes": 25598, + "sha256": "c85ba3ce6249043c62be6bc73907d82f7f77c59fcefe8cde15fc18bc70d6c28e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1440.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1440.before.html", + "bytes": 25598, + "sha256": "c85ba3ce6249043c62be6bc73907d82f7f77c59fcefe8cde15fc18bc70d6c28e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1440.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1440.html", + "bytes": 25598, + "sha256": "c85ba3ce6249043c62be6bc73907d82f7f77c59fcefe8cde15fc18bc70d6c28e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1440.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1440.png", + "bytes": 115853, + "sha256": "dc646a03b5847107cabc0a8fbcc03df3860582d796ad05e246ea5e03afbb7f65", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1440.png" + }, + { + "path": "operator/d3-source-matched-after/source-error-1920.after.html", + "bytes": 25598, + "sha256": "cbbb396c37407962f115ddfe0b60b2677e0a4550ea578a5b965e6b47538fefd8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1920.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1920.before.html", + "bytes": 25598, + "sha256": "cbbb396c37407962f115ddfe0b60b2677e0a4550ea578a5b965e6b47538fefd8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1920.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1920.html", + "bytes": 25598, + "sha256": "cbbb396c37407962f115ddfe0b60b2677e0a4550ea578a5b965e6b47538fefd8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1920.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1920.png", + "bytes": 119769, + "sha256": "235215a40fb09444529bf04720c3357e3b2be192edb2ffbdb36679a24539d506", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1920.png" + }, + { + "path": "operator/d3-source-matched-after/source-error-320.after.html", + "bytes": 25598, + "sha256": "10bc6c6eccd613e5980e1d2dffe9f87fd4861fd5c0928be378e91c4f26bfe128", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-320.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-320.before.html", + "bytes": 25598, + "sha256": "10bc6c6eccd613e5980e1d2dffe9f87fd4861fd5c0928be378e91c4f26bfe128", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-320.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-320.html", + "bytes": 25598, + "sha256": "10bc6c6eccd613e5980e1d2dffe9f87fd4861fd5c0928be378e91c4f26bfe128", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-320.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-320.png", + "bytes": 51647, + "sha256": "1e25cfe2702214ae85b9e6b3f1a233102e3078b571d2daaab0bf82f7c5cdb08d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-320.png" + }, + { + "path": "operator/d3-source-matched-after/source-error-390.after.html", + "bytes": 25598, + "sha256": "38c0b973540ae1f394c613bf605e4c211d720277a237dfd2f2322e0df598f016", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-390.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-390.before.html", + "bytes": 25598, + "sha256": "38c0b973540ae1f394c613bf605e4c211d720277a237dfd2f2322e0df598f016", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-390.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-390.html", + "bytes": 25598, + "sha256": "38c0b973540ae1f394c613bf605e4c211d720277a237dfd2f2322e0df598f016", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-390.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-390.png", + "bytes": 67735, + "sha256": "133256ed2c9bfbfc6f02ef0da27411bb7c1a17e10edf1f8c401c9a451b15c63a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-390.png" + }, + { + "path": "operator/d3-source-matched-after/source-error-768.after.html", + "bytes": 25598, + "sha256": "5879f1e8cc5ef03922d81fea089b44cabf585c09c8ea927a525499fe582e593c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-768.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-768.before.html", + "bytes": 25598, + "sha256": "5879f1e8cc5ef03922d81fea089b44cabf585c09c8ea927a525499fe582e593c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-768.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-768.html", + "bytes": 25598, + "sha256": "5879f1e8cc5ef03922d81fea089b44cabf585c09c8ea927a525499fe582e593c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-768.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-768.png", + "bytes": 100489, + "sha256": "10024c8bf9b57877ffb6e0cc7089fb96ef843f48a39eeea96c2a84da1bb02f31", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-768.png" + }, + { + "path": "operator/d3-source-matched-after/source-running-1024.after.html", + "bytes": 18788, + "sha256": "270be4e7ec1b72ff3359a5956d42d56bf880f95843ab98af0298ec186857c4f1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1024.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1024.before.html", + "bytes": 18788, + "sha256": "270be4e7ec1b72ff3359a5956d42d56bf880f95843ab98af0298ec186857c4f1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1024.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1024.html", + "bytes": 18788, + "sha256": "270be4e7ec1b72ff3359a5956d42d56bf880f95843ab98af0298ec186857c4f1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1024.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1024.png", + "bytes": 46261, + "sha256": "b09b2b01f37a29dde76805aead4a0a07ea614a976f121738826c8f6a7df1b791", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1024.png" + }, + { + "path": "operator/d3-source-matched-after/source-running-1440.after.html", + "bytes": 18788, + "sha256": "4ae6563bb2417d9d81491586bb997d04da76ba24f2493d8313ef14987b43d57e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1440.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1440.before.html", + "bytes": 18788, + "sha256": "4ae6563bb2417d9d81491586bb997d04da76ba24f2493d8313ef14987b43d57e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1440.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1440.html", + "bytes": 18788, + "sha256": "4ae6563bb2417d9d81491586bb997d04da76ba24f2493d8313ef14987b43d57e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1440.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1440.png", + "bytes": 54475, + "sha256": "3e75fbcf907d074f0a3487b34487f77eb976214f5b69a3c09cbb634f224288f1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1440.png" + }, + { + "path": "operator/d3-source-matched-after/source-running-1920.after.html", + "bytes": 18788, + "sha256": "65e0d482bcd46b46a782ee086b2e4ccd9d75d4dc5359b3421fb6c8f9494767d6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1920.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1920.before.html", + "bytes": 18788, + "sha256": "65e0d482bcd46b46a782ee086b2e4ccd9d75d4dc5359b3421fb6c8f9494767d6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1920.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1920.html", + "bytes": 18788, + "sha256": "65e0d482bcd46b46a782ee086b2e4ccd9d75d4dc5359b3421fb6c8f9494767d6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1920.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1920.png", + "bytes": 57241, + "sha256": "009fdbd78f0e6af1c107ca20f7bdbedac63f4c4c69015ab4f826a9f002fd0251", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1920.png" + }, + { + "path": "operator/d3-source-matched-after/source-running-320.after.html", + "bytes": 18788, + "sha256": "172585daf2cf4be2cf72e1bb853d58f363057206998043228e0d41b1f51acfa7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-320.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-320.before.html", + "bytes": 18788, + "sha256": "172585daf2cf4be2cf72e1bb853d58f363057206998043228e0d41b1f51acfa7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-320.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-320.html", + "bytes": 18788, + "sha256": "172585daf2cf4be2cf72e1bb853d58f363057206998043228e0d41b1f51acfa7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-320.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-320.png", + "bytes": 35556, + "sha256": "c9f0a54175296caf8ec1dac28b7efdafc2a48ba7b834b8ac3e1c0c8cb8020df6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-320.png" + }, + { + "path": "operator/d3-source-matched-after/source-running-390.after.html", + "bytes": 18788, + "sha256": "03149366edbdd8514cdc62d9790e1f4cc6b26cb0fa8a2c802ecd557dd54ef8ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-390.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-390.before.html", + "bytes": 18788, + "sha256": "03149366edbdd8514cdc62d9790e1f4cc6b26cb0fa8a2c802ecd557dd54ef8ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-390.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-390.html", + "bytes": 18788, + "sha256": "03149366edbdd8514cdc62d9790e1f4cc6b26cb0fa8a2c802ecd557dd54ef8ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-390.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-390.png", + "bytes": 37795, + "sha256": "02f3cdccee3dc97499d21ac9fabfc93c4720847dbc6651cad2080a6f5eb20400", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-390.png" + }, + { + "path": "operator/d3-source-matched-after/source-running-768.after.html", + "bytes": 18788, + "sha256": "2d463254009e7853685c0152595578a51b4e8ea7f935fc91432056ffe5aef54c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-768.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-768.before.html", + "bytes": 18788, + "sha256": "2d463254009e7853685c0152595578a51b4e8ea7f935fc91432056ffe5aef54c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-768.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-768.html", + "bytes": 18788, + "sha256": "2d463254009e7853685c0152595578a51b4e8ea7f935fc91432056ffe5aef54c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-768.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-768.png", + "bytes": 49548, + "sha256": "60b103f5712b7d02a41c96e65a727243a8306a755d5af9f75a03e41b94108aee", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-768.png" + }, + { + "path": "operator/d3-source-smoke-01-harness.mjs.txt", + "bytes": 12958, + "sha256": "71d5cc86b7b7b6ed1334814a8c4c170ddf7fd354c1d42134bc98a36f48158ff7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01-harness.mjs.txt" + }, + { + "path": "operator/d3-source-smoke-01.command.json", + "bytes": 393, + "sha256": "4794c1786f09d2f2e348aa05d46beddb2a51dd9217191571cfa89a6227c818ca", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01.command.json" + }, + { + "path": "operator/d3-source-smoke-01.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01.stderr" + }, + { + "path": "operator/d3-source-smoke-01.stdout", + "bytes": 653, + "sha256": "b5a5efccf2dfb0707d1e8b1e35e025f0fa88f1d257512b3eedb6b8f2d6536402", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01.stdout" + }, + { + "path": "operator/d3-source-smoke-02-harness.mjs.txt", + "bytes": 13238, + "sha256": "ced9b544ccd3a5df3c45b55d3d48ce007da210a5583b055a2ef450f912fc443a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02-harness.mjs.txt" + }, + { + "path": "operator/d3-source-smoke-02.command.json", + "bytes": 394, + "sha256": "a4dcf8c89f09f6d22f1d28c3d924ddcd383616bd24d16fef763e3ae3d166e985", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02.command.json" + }, + { + "path": "operator/d3-source-smoke-02.stderr", + "bytes": 957, + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02.stderr" + }, + { + "path": "operator/d3-source-smoke-02.stdout", + "bytes": 668, + "sha256": "927d6c44fc14d5701f1fd566887d6bb6989ac6f69133c32f6e93380f9265018c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02.stdout" + }, + { + "path": "operator/d3-source-smoke-03.command.json", + "bytes": 394, + "sha256": "d4fb994f6a46cf8dc6b7619b963c1b3048e4fbca414f876dc084453e80969f18", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03.command.json" + }, + { + "path": "operator/d3-source-smoke-03.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03.stderr" + }, + { + "path": "operator/d3-source-smoke-03.stdout", + "bytes": 669, + "sha256": "dfcb82d49f334b0344810f1f0bcf2669473ad310508529e09bc7d7db56d42eb1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03.stdout" + }, + { + "path": "operator/d3-source-smoke-04.command.json", + "bytes": 393, + "sha256": "c239aa53ff6c43231d3d5db6cf247a15a3dc7dab2cc3053a8944742568b03cb5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04.command.json" + }, + { + "path": "operator/d3-source-smoke-04.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04.stderr" + }, + { + "path": "operator/d3-source-smoke-04.stdout", + "bytes": 669, + "sha256": "be0ce753748c33e06db528c96582a8fcd09b075090705a425ddbaad5ec924000", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04.stdout" + }, + { + "path": "operator/d3-source-smoke-05.command.json", + "bytes": 393, + "sha256": "86c8622f98a3ed9469e68094efb6a762ddf2d13373e1a19d4de1c32aa21bed97", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05.command.json" + }, + { + "path": "operator/d3-source-smoke-05.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05.stderr" + }, + { + "path": "operator/d3-source-smoke-05.stdout", + "bytes": 646, + "sha256": "912572a5393b15e106742684ef0295dcc9d98371ae730ec20738fe91898ed968", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05.stdout" + }, + { + "path": "operator/d3-source-smoke-06.command.json", + "bytes": 395, + "sha256": "b30472c4e21a9a85e126c0638a51e9692ba75ba5859276d7552166a4e79c719e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-06.command.json" + }, + { + "path": "operator/d3-source-smoke-06.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-06.stderr" + }, + { + "path": "operator/d3-source-smoke-06.stdout", + "bytes": 204, + "sha256": "1f009737630b0a9383f453690758f0ab523e395e921b163f711ee7c361a4e3c3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-06.stdout" + }, + { + "path": "operator/d3-unchanged-baseline-replay.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay.stderr" + }, + { + "path": "operator/d3-unchanged-baseline-replay.stdout", + "bytes": 215, + "sha256": "ae8b7e6b4aaeb7505f427d7ec2c6f147c6579e81dacf3779e936328c5a145cb3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay.stdout" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1024.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1024.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1024.json", + "bytes": 781, + "sha256": "fef437686da90fb30c1695bf24857511ab673fd3433fde6e2f9fc08b1945edde", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1024.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1024.png", + "bytes": 35614, + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1024.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1440.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1440.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1440.json", + "bytes": 781, + "sha256": "570231f3dcf9edb056c264107537aff3355767bbf55b03ce4a7746e27e4e191c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1440.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1440.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1920.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1920.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1920.json", + "bytes": 781, + "sha256": "d024eeecbb79068c08c972afdd4a8d3ddfe32dd74e4bddcadf0a3456b4c8d254", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1920.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1920.png", + "bytes": 38890, + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1920.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-320.html", + "bytes": 12162, + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-320.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-320.json", + "bytes": 771, + "sha256": "a25457e20907bfb6d736e476b94a79b57c4a319f09d74649179e9b81e6be2466", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-320.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-320.png", + "bytes": 27800, + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-320.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-390.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-390.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-390.json", + "bytes": 771, + "sha256": "2f08689787e6860b5d9423a2cd3e159db596db8834ae60d84b3db90084612fc9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-390.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-390.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-768.html", + "bytes": 12162, + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-768.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-768.json", + "bytes": 780, + "sha256": "be0f1a4a8e09376b3fdd294b0a71164fb4dc27ab75f71d7ad7f15d0d7b56278c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-768.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-768.png", + "bytes": 34212, + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-768.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1024.html", + "bytes": 13979, + "sha256": "08af8eabc5c206dc1df038ad7e626d2391afac007ff41095b01e20072db8013a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1024.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1024.json", + "bytes": 1677, + "sha256": "4611766c84391fb828b9b8dbfaa8d102afb105feb6d8f4763cf8eea3908c2227", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1024.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1024.png", + "bytes": 56598, + "sha256": "db5b14a2d4e77e3545d129ee6413f70874b349de7c7d67fe60ff75b23e824174", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1024.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1440.html", + "bytes": 13979, + "sha256": "793461c26c95da766166fdb577844fca1443237da6ada15fc94f2685e44f83a5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1440.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1440.json", + "bytes": 1677, + "sha256": "2111cab62fbf611ed9b809b45d2428acbeb22dae793b9fd4934e9f2a1330a093", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1440.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1440.png", + "bytes": 58800, + "sha256": "0bc2f3246755af576a03fd013a3f79acb377261ab1b0b7a2ae0be65d99110ffb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1440.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1920.html", + "bytes": 13979, + "sha256": "73dea16d9f1347b2a8789cd1bd94ccc8c18ac0df1f3dc2770a63020e691a9fba", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1920.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1920.json", + "bytes": 1677, + "sha256": "24c927e26722f21d7dbb66d43375b3fcf16df9ec580abc95af5bfff9fc183f96", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1920.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1920.png", + "bytes": 61278, + "sha256": "f35bc072e2f56b00950ad4a12abd14df26e1562deb707c54e460123d022714bc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1920.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-320.html", + "bytes": 13979, + "sha256": "c0a6b20980d2272a9b2fe2c39a84c9e0e608609c3046742015f801f74dd7034c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-320.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-320.json", + "bytes": 1667, + "sha256": "a0a233af0d13d1bfe6a59c721b97a19d33e0a9c884a8f675f90f78aedfcf7122", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-320.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-320.png", + "bytes": 29749, + "sha256": "62b1ec0fc69fb0c4b1c4caf0c3705c8d6f552402e50c611a8625aed21690b64c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-320.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-390.html", + "bytes": 13979, + "sha256": "4abbc70660c6b45b9453913d3483682d83810c7c29f35493e9a6434aa1eb5f1d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-390.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-390.json", + "bytes": 1667, + "sha256": "b1e150f695d7ada8904a8059483be051293418ce5079af34aa1e20c781ac02c6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-390.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-390.png", + "bytes": 31073, + "sha256": "382ec6f9a7846cc694a7ffb848dccb1ded561a8d64e2c2ff5c5e7834d499cc6f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-390.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-768.html", + "bytes": 13979, + "sha256": "ffa36bfdc179d8065687805be10642a1ab38553049691ec5cfa4b94056994fff", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-768.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-768.json", + "bytes": 1676, + "sha256": "4f908d7aad0b43c938864ab320afb5e90741607744de0675e078859eb22f39c5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-768.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-768.png", + "bytes": 53412, + "sha256": "8f39389bb97178ffa7148afde59ec70d87173744f8188295f37726a0250d7ee0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-768.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1024.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1024.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1024.json", + "bytes": 781, + "sha256": "fef437686da90fb30c1695bf24857511ab673fd3433fde6e2f9fc08b1945edde", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1024.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1024.png", + "bytes": 35614, + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1024.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1440.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1440.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1440.json", + "bytes": 781, + "sha256": "570231f3dcf9edb056c264107537aff3355767bbf55b03ce4a7746e27e4e191c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1440.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1440.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1920.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1920.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1920.json", + "bytes": 781, + "sha256": "d024eeecbb79068c08c972afdd4a8d3ddfe32dd74e4bddcadf0a3456b4c8d254", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1920.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1920.png", + "bytes": 38890, + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1920.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-320.html", + "bytes": 12162, + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-320.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-320.json", + "bytes": 771, + "sha256": "a25457e20907bfb6d736e476b94a79b57c4a319f09d74649179e9b81e6be2466", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-320.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-320.png", + "bytes": 27800, + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-320.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-390.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-390.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-390.json", + "bytes": 771, + "sha256": "2f08689787e6860b5d9423a2cd3e159db596db8834ae60d84b3db90084612fc9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-390.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-390.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-768.html", + "bytes": 12162, + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-768.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-768.json", + "bytes": 780, + "sha256": "be0f1a4a8e09376b3fdd294b0a71164fb4dc27ab75f71d7ad7f15d0d7b56278c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-768.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-768.png", + "bytes": 34212, + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-768.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1024.html", + "bytes": 11513, + "sha256": "279c5b5fec35dd8d4e46f4c362fa86b0cd6c690a31abaa02a9085312bc9fff07", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1024.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1024.json", + "bytes": 630, + "sha256": "a9b9aac93faf2f230f0af32b49d022f83748e2a1f5301ce0f33ae36896811d5f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1024.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1024.png", + "bytes": 30783, + "sha256": "9fc2d4e713fd9535791513e5091d0de8996203dc06e2b7fb09a1987088742f4d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1024.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1440.html", + "bytes": 11513, + "sha256": "a9826b49566c311d5a9ef2af25e6a21720d44f34d60b3bfa72d11ca9524bcd9e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1440.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1440.json", + "bytes": 630, + "sha256": "f2df5710790fd3c84c38228f5f3ab4306f08e07bdf3dca9ec6e2c8b9d345b082", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1440.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1440.png", + "bytes": 32109, + "sha256": "35af4cbe6bbec6c1162e77e788b645ed9f41d0d579e2f9a4e26cfaf1c113bdcf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1440.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1920.html", + "bytes": 11513, + "sha256": "c4ed8eb882cb0d9450fccb0727c65c55566d95305710b04acddc229e0926de41", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1920.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1920.json", + "bytes": 630, + "sha256": "1d687c735c43b60b405b61e1cc35fc6063fc95da089757727475f3af69c002aa", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1920.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1920.png", + "bytes": 33534, + "sha256": "8f132143a465e72aab76b3d538be286fd5086d5489eb4ec3cb86ed5caba9eabb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1920.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-320.html", + "bytes": 11513, + "sha256": "556f310301df656811f63f7a3c39381537a8271411a651045c52e65433006883", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-320.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-320.json", + "bytes": 620, + "sha256": "7a31d5b1bb58afcb24b781c84e97764284b877ce50aaa15f85762e9aa8954239", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-320.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-320.png", + "bytes": 25919, + "sha256": "2463b6b0dd814a68aa8a11add62698f312dc14965a58d3fd1e4cae25f0d95dce", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-320.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-390.html", + "bytes": 11513, + "sha256": "050cc89d76579291b5c5eb4f5e5a4ecd5b4eaeec9d028397b812f954a3220268", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-390.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-390.json", + "bytes": 620, + "sha256": "4dcee313bacf29c80513a6f8d9d889b17cc7b1606d701fe680499f1a788e3dc0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-390.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-390.png", + "bytes": 26556, + "sha256": "481085b6770cbd83d8ad02ff39cd2092363b987a419579ce37a6272b3c3828f9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-390.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-768.html", + "bytes": 11513, + "sha256": "1013ffce65391aa4031c6ba8b071b843e1288c903437f6b12246a6d16df3d5f0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-768.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-768.json", + "bytes": 629, + "sha256": "8294a7d40d6695029d36a14b021fdb16d349e1d5393b8b3011681f61d65e8f76", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-768.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-768.png", + "bytes": 30386, + "sha256": "e8dae771111a83055368058a7fd6e1fca1e8b7fdddec46e31e98bdd9ac2278f8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-768.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-sustained-390.html", + "bytes": 34380, + "sha256": "c0fbc071bf0bf60a14580f706be1c97037923078c664a117dc2fc2b203b06fbf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-sustained-390.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-sustained-390.json", + "bytes": 6513, + "sha256": "f5453e29c2451fba43df437a73399c3a7f896983fdd11f41ab866b4d0bb292a5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-sustained-390.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-sustained-390.png", + "bytes": 30267, + "sha256": "9edf791fc10d37996214708c197022e52134cae4af28e9b7b4d2d404946a763e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-sustained-390.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/report.json", + "bytes": 128638, + "sha256": "67e4a2f55c64c5cacb076009260b6db7ac85b291c4d36a2489d323d2888383fd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\report.json" + }, + { + "path": "operator/d3-worker-visual-inspection.json", + "bytes": 5548, + "sha256": "1bf7cf2bed41b89fe4e77b31b008e6421c51e0ef1274968c93c02646c719c476", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-worker-visual-inspection.json" + }, + { + "path": "operator/dependency-repair-freeze/HANDOFF.md.txt", + "bytes": 3118, + "sha256": "17e983697edaf77f341bf588e4618e0cb53f46d6e04ef8e8f9f4914c3ab00d98", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\dependency-repair-freeze\\HANDOFF.md" + }, + { + "path": "operator/dependency-repair-freeze/e2e/current-consumer-proof.mjs.txt", + "bytes": 9566, + "sha256": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\dependency-repair-freeze\\e2e\\current-consumer-proof.mjs" + }, + { + "path": "operator/dependency-repair-freeze/examples/apps/chat-ui/template/package-lock.json", + "bytes": 235233, + "sha256": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\dependency-repair-freeze\\examples\\apps\\chat-ui\\template\\package-lock.json" + }, + { + "path": "operator/diagnose-d3-enlargement-02.mjs.txt", + "bytes": 18412, + "sha256": "d927ddd3fcf0359e0df5be937aa35d084a6f06ad16c4f718337e596e72467e8a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\diagnose-d3-enlargement-02.mjs" + }, + { + "path": "operator/diagnose-d3-enlargement.mjs.txt", + "bytes": 18303, + "sha256": "222fc550f2c5f7db79bc9bc24383da74102da817355082341f04e9e7cc312094", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\diagnose-d3-enlargement.mjs" + }, + { + "path": "operator/diagnose-d3-keyboard-scroll.mjs.txt", + "bytes": 18648, + "sha256": "d19e7a45d98d37bf58a926f7c5d775011e550e5f3e4bb89f07441fe332f23511", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\diagnose-d3-keyboard-scroll.mjs" + }, + { + "path": "operator/diagnose-dependency-comparison.mjs.txt", + "bytes": 7149, + "sha256": "af193a6c3fdf45800eacad574a1d794390cad26a2a79758f1f44b64a398f5b26", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\diagnose-dependency-comparison.mjs" + }, + { + "path": "operator/diagnose-first-submit.mjs.txt", + "bytes": 6491, + "sha256": "31544790508aba81975972f1e7f1309156d9b289fea0cb80397413a882a948ea", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\diagnose-first-submit.mjs" + }, + { + "path": "operator/durable.json", + "bytes": 798, + "sha256": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\durable.json" + }, + { + "path": "operator/durable.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\durable.stderr" + }, + { + "path": "operator/durable.stdout", + "bytes": 119, + "sha256": "63c4aa3726029258df491bb45b000952202358eb18952fb55badccdfd25174ff", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\durable.stdout" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.html", + "bytes": 13614, + "sha256": "d894f372a4684549965b43175343fbc84cb9dd2f742528136fbaec13aaad958b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-1440\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.png", + "bytes": 48118, + "sha256": "dfe6dac19f02fa877e68d2f7b2ab9bd34b63e40672b97f03f1e10817643cdf76", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-1440\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.md.txt", + "bytes": 2287, + "sha256": "fd72dcc3e3aa36dba9cd7fb8b99c5cfe99dfc6c3ff80fc1472d12af2910f9fa0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-1440\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.png", + "bytes": 50055, + "sha256": "1f293044017241177f2d0309a4d38666354094aa0d89a795a391872a1f72313a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-1440\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.html", + "bytes": 13614, + "sha256": "c48d41aec4b70653d1332500c71ddb48206c00ebd0ee17b71e3725d0d485f98f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-390\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.png", + "bytes": 36326, + "sha256": "8b93816c80e6a031e5c3ef55f59908de5aabe94deb66a689f0c85aa33053be09", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-390\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.md.txt", + "bytes": 2286, + "sha256": "076356849f3dac9ed2bbdf468f204451a030d18f8cfdcea78185bf2979d70e2d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-390\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.png", + "bytes": 38148, + "sha256": "d67b6e1aa81d6ff5faa4145a7788a14b8df5fdacc00c5680c8ff5a31371262ea", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-390\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.html", + "bytes": 11046, + "sha256": "761fd28a3263db95a2a84d562098e5b4159d57b9ded1eb6ee19dafc84cc940c7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-1440\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.png", + "bytes": 28307, + "sha256": "eda7a7723d479187fb0619ca86cefed2f1d9823b58384b13791a3b2b3f9b5eff", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-1440\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.md.txt", + "bytes": 2289, + "sha256": "20ff3ba4e0960bec3ac05ba539ad1b56982aeaf8ff1dd2a5a3334fc61c668f29", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-1440\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.png", + "bytes": 30441, + "sha256": "ba11f02e651c2aed2d457cd399ca65e2cc47ffe9758968ced9704edef32e1fac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-1440\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.html", + "bytes": 11046, + "sha256": "18c21072f507296df813237d77664c79e2ca96af59888f36b60364872f44d9fb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-390\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.png", + "bytes": 22898, + "sha256": "f7572cfed5aac624f85da0982a77a257cb4ffb734e4a62f1f0f83df785b2d5a5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-390\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.md.txt", + "bytes": 2288, + "sha256": "c8319944cc77c6ea945680c9ad7bbfb5b82218e3c19a0554c5413e939d682e27", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-390\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.png", + "bytes": 24761, + "sha256": "3d2adb7dc5324fea59764955b7b5b880b36924fff4de9c20cc34ce70a54ce7e8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-390\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-1440/before.html", + "bytes": 24798, + "sha256": "9ccdedbb36c9831763cd818531941ced8aa40ef2bb383c2d9e4c62e1a22e881a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-1440\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-1440/before.png", + "bytes": 122472, + "sha256": "3d883b2f102989efad6aa4db4d01f6d6011686080a400fa011afc09af248ca20", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-1440\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.md.txt", + "bytes": 2197, + "sha256": "18e6d7be52d41e4456ffc908babd4fe09b5cc8041bf68dee6b7f4def573c86d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-1440\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.png", + "bytes": 123664, + "sha256": "835986f05145c79da8c42d8198702795cc83d4b0cfa382f9cb825e83268a2a36", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-1440\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-390/before.html", + "bytes": 24798, + "sha256": "c8ef7c6661e61f00522ffc8029d161a4f00c129aa76357ca459b2239bfb10854", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-390\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-390/before.png", + "bytes": 66921, + "sha256": "cb8f8708db77c224540ab29df4c5ccea80154c0c670a1913bd12332065c65e37", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-390\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.md.txt", + "bytes": 2196, + "sha256": "1afe921376e9e4241d61153ffa2903387f7d4e57423359e0a4b66a7cdea9715b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-390\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.png", + "bytes": 68240, + "sha256": "02217ecb45988088b5c8a329d439cf1edf36daff0c94485eaad75edbd58406ec", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-390\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-1440/before.html", + "bytes": 18200, + "sha256": "c1b66551d2d8e0cb2f23ab9f851daef0ffa3038a339c371bbce1b51094f47136", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-1440\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-1440/before.png", + "bytes": 53671, + "sha256": "5b01100cf1f778ff6d40bab901e78c1eb8fa9e66a639d6347a2b7b9a4d594c37", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-1440\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.md.txt", + "bytes": 2199, + "sha256": "3a3d36d5efe8398f1d2590e2cffe21bf6a83caa2826b228043da203238bcdb97", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-1440\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.png", + "bytes": 55404, + "sha256": "f5e8fbf4b550ddf1270bb4b1dd2ba01677aae3b586cde19143a55651b8d08ef4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-1440\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-390/before.html", + "bytes": 18200, + "sha256": "d85ebdfe201f4b84132465fecd094e047aaf63d8eb79d72d9e67dcf023b50998", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-390\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-390/before.png", + "bytes": 37104, + "sha256": "5a9c04c5e13b4d0fd042195ad1b085e9983dc4c64ceea89b16f98ee074d2f51f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-390\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.md.txt", + "bytes": 2198, + "sha256": "0188548c94d2f20e5457ddb1618a24ba6e220c1553b6d1f64900fb22937a6507", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-390\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.png", + "bytes": 38466, + "sha256": "0e61aa353c714c586a86f780e6edee68d43e5d4a26b68b8b98ae0d4ebfaea873", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-390\\change-boundary.png" + }, + { + "path": "operator/existing-target-refusal.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\existing-target-refusal.stderr" + }, + { + "path": "operator/existing-target-refusal.stdout", + "bytes": 510, + "sha256": "c86fbc0b75aaf748e98f15c1d9164a987178241b6305db389b148321d418c998", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\existing-target-refusal.stdout" + }, + { + "path": "operator/first-submit-dependency-comparison-01.command.json", + "bytes": 53, + "sha256": "6d1af5393673ee710d1cc3548719ac70b009c8b70fbd41d03b3ff703e675d995", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-dependency-comparison-01.command.json" + }, + { + "path": "operator/first-submit-dependency-comparison-01.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-dependency-comparison-01.stderr" + }, + { + "path": "operator/first-submit-dependency-comparison-01.stdout", + "bytes": 254, + "sha256": "288ec9e5389b4a42284451223ed0c055f40e3ff50f439d2755c5e210c4325851", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-dependency-comparison-01.stdout" + }, + { + "path": "operator/first-submit-diagnosis-01.command.json", + "bytes": 53, + "sha256": "7249780c8f8ce5e6657a1dfcab481617c22124482f1b0077bc19faad316f71d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-diagnosis-01.command.json" + }, + { + "path": "operator/first-submit-diagnosis-01.stderr", + "bytes": 957, + "sha256": "0f0101da9e13b0b9ff730a51a7fc8f97a48df7578a0446eafb8608a6649cb606", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-diagnosis-01.stderr" + }, + { + "path": "operator/first-submit-diagnosis-01.stdout", + "bytes": 627, + "sha256": "cab47cf593ac8b76b0895c10b2defc9d94d131c6f3a783cf1b1a9c28e3326362", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-diagnosis-01.stdout" + }, + { + "path": "operator/frame.json", + "bytes": 513, + "sha256": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\frame.json" + }, + { + "path": "operator/frame.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\frame.stderr" + }, + { + "path": "operator/frame.stdout", + "bytes": 92, + "sha256": "3930a6e7a06514d750370d57d4c847d207e7e65ad7cb37ec7e6a427a57102137", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\frame.stdout" + }, + { + "path": "operator/host-install.stderr", + "bytes": 150, + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\host-install.stderr" + }, + { + "path": "operator/host-install.stdout", + "bytes": 144, + "sha256": "9c0a23925ed0f61c116e515f3ac86f72484b07c39ca88f666e1308367904c430", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\host-install.stdout" + }, + { + "path": "operator/install-consumer-commands.json", + "bytes": 3987, + "sha256": "efdddba96f40774206af664cc1b000d44c5542aca22a4eec7665d6f469e6a8b8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\install-consumer-commands.json" + }, + { + "path": "operator/installed-apps.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-apps.stderr" + }, + { + "path": "operator/installed-apps.stdout", + "bytes": 453, + "sha256": "8e1a0749d92500e1c135eca70a6d0de1d72cfa69a1bbb2616c7d156a9fb9f7dd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-apps.stdout" + }, + { + "path": "operator/installed-consumer.json", + "bytes": 667, + "sha256": "2c8795ab4e1631cb87b71a470b6a665cc9c22c6e94cbf3b2bd95cdc48a6ff481", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-consumer.json" + }, + { + "path": "operator/installed-doctor.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-doctor.stderr" + }, + { + "path": "operator/installed-doctor.stdout", + "bytes": 1118, + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-doctor.stdout" + }, + { + "path": "operator/installed-scaffold.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-scaffold.stderr" + }, + { + "path": "operator/installed-scaffold.stdout", + "bytes": 2028, + "sha256": "fa6d77785236eab1b2afc92aa364673c47c9ca6c8f3d80790e50016f2b48ac24", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-scaffold.stdout" + }, + { + "path": "operator/locked-browser-01-harness.mjs.txt", + "bytes": 14004, + "sha256": "16497d628f5bec3dfae29f522f2702c9966bbcb4cbbbb78204db1dcd969662ef", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01-harness.mjs.txt" + }, + { + "path": "operator/locked-browser-01.command.json", + "bytes": 386, + "sha256": "888a86630c4ba453cbf632af6e36de5787e5a3b4c0a2a35f970e0600e2132703", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01.command.json" + }, + { + "path": "operator/locked-browser-01.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01.stderr" + }, + { + "path": "operator/locked-browser-01.stdout", + "bytes": 601, + "sha256": "b297de53b8051524a0e517517205efa1ea56a9c840059ac2683956042d5afcc1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01.stdout" + }, + { + "path": "operator/locked-browser-02.command.json", + "bytes": 361, + "sha256": "9dc13fab78e72c70dafeea9ff0f435054fe5bdf3fea090e5b68bd533685ad4d6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02.command.json" + }, + { + "path": "operator/locked-browser-02.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02.stderr" + }, + { + "path": "operator/locked-browser-02.stdout", + "bytes": 204, + "sha256": "9d32b1bff4d343703e17fac68be10081276fd299dc23b7a377d6647129c633fc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02.stdout" + }, + { + "path": "operator/locked-browser-02/generated-empty-1024.html", + "bytes": 11395, + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1024.html" + }, + { + "path": "operator/locked-browser-02/generated-empty-1024.json", + "bytes": 781, + "sha256": "20472708b8e160864ed2c59112089c060a39d29536f9883cc4c66fdbd2bbb3a1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1024.json" + }, + { + "path": "operator/locked-browser-02/generated-empty-1024.png", + "bytes": 35614, + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1024.png" + }, + { + "path": "operator/locked-browser-02/generated-empty-1440.html", + "bytes": 11395, + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1440.html" + }, + { + "path": "operator/locked-browser-02/generated-empty-1440.json", + "bytes": 781, + "sha256": "7ef87274b0a92f189bbe41a853b0c9a7036b4e165efeedf976812f01fb15b014", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1440.json" + }, + { + "path": "operator/locked-browser-02/generated-empty-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1440.png" + }, + { + "path": "operator/locked-browser-02/generated-empty-1920.html", + "bytes": 11395, + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1920.html" + }, + { + "path": "operator/locked-browser-02/generated-empty-1920.json", + "bytes": 781, + "sha256": "1a29b3e2698a1ca8e44b68769bc0d4e820520eee04991f58af82e9381c1fab91", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1920.json" + }, + { + "path": "operator/locked-browser-02/generated-empty-1920.png", + "bytes": 38890, + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1920.png" + }, + { + "path": "operator/locked-browser-02/generated-empty-320.html", + "bytes": 11395, + "sha256": "ea0f8421cb234cdbf7828496ee341b0cd90f56d91b9e91e016a14df74b871e69", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-320.html" + }, + { + "path": "operator/locked-browser-02/generated-empty-320.json", + "bytes": 771, + "sha256": "13772bc5a2d076ba18c595eac522a49fbd6e82c6e08ad376f3080d2e116ddbf9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-320.json" + }, + { + "path": "operator/locked-browser-02/generated-empty-320.png", + "bytes": 27800, + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-320.png" + }, + { + "path": "operator/locked-browser-02/generated-empty-390.html", + "bytes": 11395, + "sha256": "0c376ea4fa6e3709fffb76aaf77e5d7938ae941f74e64e0182bcfd282bbc8e42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-390.html" + }, + { + "path": "operator/locked-browser-02/generated-empty-390.json", + "bytes": 771, + "sha256": "5e88f45ae5a4624760dd89f10284284574699bf6a0f67b72fd4b6fd0a04a8fc2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-390.json" + }, + { + "path": "operator/locked-browser-02/generated-empty-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-390.png" + }, + { + "path": "operator/locked-browser-02/generated-empty-768.html", + "bytes": 11395, + "sha256": "116ece6fc1a4651fcf5c94a5cb818d3032c335e7a63bc52f10cc88875cf0a680", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-768.html" + }, + { + "path": "operator/locked-browser-02/generated-empty-768.json", + "bytes": 780, + "sha256": "dcc42f10b4d8b7581db9ad2b758750b17a3119c783d3d56917145561f3de4f8b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-768.json" + }, + { + "path": "operator/locked-browser-02/generated-empty-768.png", + "bytes": 34212, + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-768.png" + }, + { + "path": "operator/locked-browser-02/generated-populated-1024.html", + "bytes": 13112, + "sha256": "932bd9519c8d38b5e35b503c172f80035e2509992d351c246c2d1ca4d2bb219e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1024.html" + }, + { + "path": "operator/locked-browser-02/generated-populated-1024.json", + "bytes": 1677, + "sha256": "51686d3ac465d75e318db0c05a56c67c54601b88a07bb0974a3ac85a9133ea30", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1024.json" + }, + { + "path": "operator/locked-browser-02/generated-populated-1024.png", + "bytes": 56598, + "sha256": "db5b14a2d4e77e3545d129ee6413f70874b349de7c7d67fe60ff75b23e824174", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1024.png" + }, + { + "path": "operator/locked-browser-02/generated-populated-1440.html", + "bytes": 13112, + "sha256": "5ef2d07b3f7f9e9291ad25f265cbd7a67384e07e43fabc946601a9fad1cf392c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1440.html" + }, + { + "path": "operator/locked-browser-02/generated-populated-1440.json", + "bytes": 1677, + "sha256": "fdba9ca269ec34af9d0202f2c7e81cc3294bcae2e02cfc35b6123154c3b8f15e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1440.json" + }, + { + "path": "operator/locked-browser-02/generated-populated-1440.png", + "bytes": 58800, + "sha256": "0bc2f3246755af576a03fd013a3f79acb377261ab1b0b7a2ae0be65d99110ffb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1440.png" + }, + { + "path": "operator/locked-browser-02/generated-populated-1920.html", + "bytes": 13112, + "sha256": "58ae7362a88ce6b6dc5de1999ae6295bb566b6c0622322a8ee6ed81eb528d2c4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1920.html" + }, + { + "path": "operator/locked-browser-02/generated-populated-1920.json", + "bytes": 1677, + "sha256": "28f2a28b81229dd3c15189ce62e73b2c8bedcabfad22e5cb88ae81f95e1ff70b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1920.json" + }, + { + "path": "operator/locked-browser-02/generated-populated-1920.png", + "bytes": 61278, + "sha256": "f35bc072e2f56b00950ad4a12abd14df26e1562deb707c54e460123d022714bc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1920.png" + }, + { + "path": "operator/locked-browser-02/generated-populated-320.html", + "bytes": 13112, + "sha256": "1c7cfa5ffc46f66c135f85cc2d431a7678fd8e79d4a644e56f6d50dbb4e3f40e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-320.html" + }, + { + "path": "operator/locked-browser-02/generated-populated-320.json", + "bytes": 1667, + "sha256": "ab3020b59a546744f990f4f0e95a4e5267fdd9eb513e2a3b7cb263bdb06bd8be", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-320.json" + }, + { + "path": "operator/locked-browser-02/generated-populated-320.png", + "bytes": 29749, + "sha256": "62b1ec0fc69fb0c4b1c4caf0c3705c8d6f552402e50c611a8625aed21690b64c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-320.png" + }, + { + "path": "operator/locked-browser-02/generated-populated-390.html", + "bytes": 13112, + "sha256": "d549ad323a9802ff3f4ab4857270de8129c79026d7e21d449f0c33b0d11cc669", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-390.html" + }, + { + "path": "operator/locked-browser-02/generated-populated-390.json", + "bytes": 1667, + "sha256": "6a00ae537c6e45fddb576f7cf5480ee2772df51bff88b7a244344d3bd081d51e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-390.json" + }, + { + "path": "operator/locked-browser-02/generated-populated-390.png", + "bytes": 31073, + "sha256": "382ec6f9a7846cc694a7ffb848dccb1ded561a8d64e2c2ff5c5e7834d499cc6f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-390.png" + }, + { + "path": "operator/locked-browser-02/generated-populated-768.html", + "bytes": 13112, + "sha256": "b796ffb3289eab304678df257bd62a87d970bfd644b56a852dd315719356d614", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-768.html" + }, + { + "path": "operator/locked-browser-02/generated-populated-768.json", + "bytes": 1676, + "sha256": "ad6672150db00d25b65209a6b261788739e14a664fdd62a567be945466b46302", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-768.json" + }, + { + "path": "operator/locked-browser-02/generated-populated-768.png", + "bytes": 53412, + "sha256": "8f39389bb97178ffa7148afde59ec70d87173744f8188295f37726a0250d7ee0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-768.png" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1024.html", + "bytes": 11395, + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1024.html" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1024.json", + "bytes": 781, + "sha256": "20472708b8e160864ed2c59112089c060a39d29536f9883cc4c66fdbd2bbb3a1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1024.json" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1024.png", + "bytes": 35614, + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1024.png" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1440.html", + "bytes": 11395, + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1440.html" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1440.json", + "bytes": 781, + "sha256": "7ef87274b0a92f189bbe41a853b0c9a7036b4e165efeedf976812f01fb15b014", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1440.json" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1440.png" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1920.html", + "bytes": 11395, + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1920.html" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1920.json", + "bytes": 781, + "sha256": "1a29b3e2698a1ca8e44b68769bc0d4e820520eee04991f58af82e9381c1fab91", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1920.json" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1920.png", + "bytes": 38890, + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1920.png" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-320.html", + "bytes": 11395, + "sha256": "ea0f8421cb234cdbf7828496ee341b0cd90f56d91b9e91e016a14df74b871e69", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-320.html" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-320.json", + "bytes": 771, + "sha256": "13772bc5a2d076ba18c595eac522a49fbd6e82c6e08ad376f3080d2e116ddbf9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-320.json" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-320.png", + "bytes": 27800, + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-320.png" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-390.html", + "bytes": 11395, + "sha256": "0c376ea4fa6e3709fffb76aaf77e5d7938ae941f74e64e0182bcfd282bbc8e42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-390.html" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-390.json", + "bytes": 771, + "sha256": "5e88f45ae5a4624760dd89f10284284574699bf6a0f67b72fd4b6fd0a04a8fc2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-390.json" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-390.png" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-768.html", + "bytes": 11395, + "sha256": "116ece6fc1a4651fcf5c94a5cb818d3032c335e7a63bc52f10cc88875cf0a680", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-768.html" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-768.json", + "bytes": 780, + "sha256": "dcc42f10b4d8b7581db9ad2b758750b17a3119c783d3d56917145561f3de4f8b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-768.json" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-768.png", + "bytes": 34212, + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-768.png" + }, + { + "path": "operator/locked-browser-02/generated-running-1024.html", + "bytes": 11130, + "sha256": "b45ac31b9a71c27b8459a4952bf4263ce3d17b7e4fc05b6563729ab95643b010", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1024.html" + }, + { + "path": "operator/locked-browser-02/generated-running-1024.json", + "bytes": 612, + "sha256": "c6f4b04eea6f95f4562cf06d405516509407b1cbc1077dfd42bafb63051bd115", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1024.json" + }, + { + "path": "operator/locked-browser-02/generated-running-1024.png", + "bytes": 30690, + "sha256": "062ef6da15f30947243870a7bffe86fe8ecb4db036898c06ff489858bbb5f129", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1024.png" + }, + { + "path": "operator/locked-browser-02/generated-running-1440.html", + "bytes": 11130, + "sha256": "69bff0e4026d05d159febe1d52f6f954e7392150eb61b192891491390889d5de", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1440.html" + }, + { + "path": "operator/locked-browser-02/generated-running-1440.json", + "bytes": 612, + "sha256": "310acac4a182958f95a8300c8aa74529401e50177bc430e313ca58c2579ee483", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1440.json" + }, + { + "path": "operator/locked-browser-02/generated-running-1440.png", + "bytes": 32015, + "sha256": "94f72a9e74a6f3d21a53afa9bafabd4880c43eb995a6808dd7a2256b37b4abba", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1440.png" + }, + { + "path": "operator/locked-browser-02/generated-running-1920.html", + "bytes": 11130, + "sha256": "9733aaaed09782f87b7a0d5c8a81ecb2b57d8a379f527f884810201e767e25ba", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1920.html" + }, + { + "path": "operator/locked-browser-02/generated-running-1920.json", + "bytes": 612, + "sha256": "42446b64ce987f10520c142cbda41a6bc072879513aef5f1650d4dc06a2f8f5f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1920.json" + }, + { + "path": "operator/locked-browser-02/generated-running-1920.png", + "bytes": 33425, + "sha256": "9026f07501136fdfe942540c9dd4fed895f234a2c4ed0bc9ab9c2850663a68ca", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1920.png" + }, + { + "path": "operator/locked-browser-02/generated-running-320.html", + "bytes": 11130, + "sha256": "0861ae69d373f933470a3f35d7350aee4988e58f109a044e686c8d9067c2211c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-320.html" + }, + { + "path": "operator/locked-browser-02/generated-running-320.json", + "bytes": 602, + "sha256": "c0a4e79d899225de037ebbb1937067ae893f044925957d42d5c4f8cac8f2f969", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-320.json" + }, + { + "path": "operator/locked-browser-02/generated-running-320.png", + "bytes": 25672, + "sha256": "df3e7ffedf6384aa56ca2e0fbabd285f2210fcbb98f3a0832038cd8cfb946abe", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-320.png" + }, + { + "path": "operator/locked-browser-02/generated-running-390.html", + "bytes": 11130, + "sha256": "3c6b033744a6c35b2c8e1a207b0d4922527c31f6ad531bb7961ded8cccf7c21f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-390.html" + }, + { + "path": "operator/locked-browser-02/generated-running-390.json", + "bytes": 602, + "sha256": "b094f41ffa57289a109747745e57f00a915d894877bc6d2f8291bbca404d2785", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-390.json" + }, + { + "path": "operator/locked-browser-02/generated-running-390.png", + "bytes": 26301, + "sha256": "fe40295325c3942cd1bfcf179d9fd626f7699c7dc65c84da7c4ad5a2a8f38e01", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-390.png" + }, + { + "path": "operator/locked-browser-02/generated-running-768.html", + "bytes": 11130, + "sha256": "ebfa0b72d027cd6fcbed5aecd18eb9f97bb8f38ac903f40bd173b1d18514f4e1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-768.html" + }, + { + "path": "operator/locked-browser-02/generated-running-768.json", + "bytes": 611, + "sha256": "6c3f4b899b288288c21b74ef518e0cf682919927e7c94c68edf51db97904af3f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-768.json" + }, + { + "path": "operator/locked-browser-02/generated-running-768.png", + "bytes": 30274, + "sha256": "582683ea8ece2702fb4a096498cc00861998dcbc02f2a77a7f81523d397eb17a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-768.png" + }, + { + "path": "operator/locked-browser-02/generated-sustained-390.html", + "bytes": 32813, + "sha256": "71681a8101483faea00e02990f3b69edb972d43e2f2bf24f0b0319c996689a9a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-sustained-390.html" + }, + { + "path": "operator/locked-browser-02/generated-sustained-390.json", + "bytes": 6513, + "sha256": "dd7cc235cbe5dd263e284bbf24c4f6c624157d6bf0ac5e12c1340979a4c9c011", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-sustained-390.json" + }, + { + "path": "operator/locked-browser-02/generated-sustained-390.png", + "bytes": 30267, + "sha256": "9edf791fc10d37996214708c197022e52134cae4af28e9b7b4d2d404946a763e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-sustained-390.png" + }, + { + "path": "operator/locked-browser-02/report.json", + "bytes": 128704, + "sha256": "0679d7de20d2694aa81c760a6be7637c3307591c81ec18638a47a0d70ab1b71e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\report.json" + }, + { + "path": "operator/locked-consumer-commands.json", + "bytes": 2271, + "sha256": "dba7894afaf603c3ff3b04bc6b2c11023eab9d1faf5d96f707fd776ee01a13b2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-consumer-commands.json" + }, + { + "path": "operator/locked-existing-target-refusal.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-existing-target-refusal.stderr" + }, + { + "path": "operator/locked-existing-target-refusal.stdout", + "bytes": 507, + "sha256": "46ba9c6dec43dd03241dfb1f296e335cd1ed7fb940809642c7284c151b4fc954", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-existing-target-refusal.stdout" + }, + { + "path": "operator/locked-final-checks.json", + "bytes": 855, + "sha256": "c603d7a3138079428ef76de92aa2299084d415a2a5cff6ede9d63d3b6349391a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-final-checks.json" + }, + { + "path": "operator/locked-generated-audit.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-generated-audit.stderr" + }, + { + "path": "operator/locked-generated-audit.stdout", + "bytes": 5325, + "sha256": "4d1456a71597d6eeb8573095e09bb2f7368c85626a769ef5a3e2dac782b8ab47", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-generated-audit.stdout" + }, + { + "path": "operator/locked-generated-production-audit.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-generated-production-audit.stderr" + }, + { + "path": "operator/locked-generated-production-audit.stdout", + "bytes": 366, + "sha256": "75206656b5cfd245d6c7e6cd2f4f579d10db9fa0b708b19c6bbc29263526b379", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-generated-production-audit.stdout" + }, + { + "path": "operator/locked-host-install.stderr", + "bytes": 150, + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-host-install.stderr" + }, + { + "path": "operator/locked-host-install.stdout", + "bytes": 144, + "sha256": "b64e473f55f7adaafacfdcd0ce0ba844fd7496be03de1add6c2675ade86bf52a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-host-install.stdout" + }, + { + "path": "operator/locked-installed-consumer.json", + "bytes": 40428, + "sha256": "e555920ab2721acffc061072fe60240033b0210473e3ddc2243b91601a2316d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-installed-consumer.json" + }, + { + "path": "operator/locked-installed-doctor.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-installed-doctor.stderr" + }, + { + "path": "operator/locked-installed-doctor.stdout", + "bytes": 1118, + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-installed-doctor.stdout" + }, + { + "path": "operator/locked-installed-scaffold.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-installed-scaffold.stderr" + }, + { + "path": "operator/locked-installed-scaffold.stdout", + "bytes": 2021, + "sha256": "4e0549fd844a62d3c3686d0014f3f41cc70adb95ebdc0eb2fd61e7babca21674", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-installed-scaffold.stdout" + }, + { + "path": "operator/locked-source-pack.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-source-pack.stderr" + }, + { + "path": "operator/locked-source-pack.stdout", + "bytes": 28575, + "sha256": "6bec63aa0aada6cc4036f4031a8b9c2df6e1e44a12e245f0c5e0fadbbd1d675c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-source-pack.stdout" + }, + { + "path": "operator/locked-source-test.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-source-test.stderr" + }, + { + "path": "operator/locked-source-test.stdout", + "bytes": 1251, + "sha256": "7f8f2b93171f9c40c250c321864b7a5ab9a3b2d72b00f0b0db7e24a7fddf4418", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-source-test.stdout" + }, + { + "path": "operator/package-installed-bindings.json", + "bytes": 60840, + "sha256": "29e64cdfa39615640cbef7cc0eb8eb25ca04c7a6c29b8d00001d22c3e41f00d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\package-installed-bindings.json" + }, + { + "path": "operator/primary-head.after", + "bytes": 41, + "sha256": "60f857286c031a8172d111c183c1c2424aea72ad167f65a7eb0f13343712efce", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-head.after" + }, + { + "path": "operator/primary-index-nul.after", + "bytes": 13245, + "sha256": "76673f16be2d2376a07251eb459f191fa9d254c54e7ad9fe0e88eb5f9b812ed3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-index-nul.after" + }, + { + "path": "operator/primary-index.after", + "bytes": 13245, + "sha256": "0d7c23b38f63ed4c17a9fd7a2b93fc797a2062bfb4e5090214ad277fa5f171ea", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-index.after" + }, + { + "path": "operator/primary-index.before", + "bytes": 13245, + "sha256": "76673f16be2d2376a07251eb459f191fa9d254c54e7ad9fe0e88eb5f9b812ed3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-index.before" + }, + { + "path": "operator/primary-refs.after", + "bytes": 576, + "sha256": "66c33b755dd5ab353501b08720e282584bbfc643331375bb49b45e09fdb45007", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-refs.after" + }, + { + "path": "operator/primary-refs.before", + "bytes": 482, + "sha256": "b9d66cb9cc694da245d342b96cd63a5ba0055c54eeda5706be40549cdc5a1407", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-refs.before" + }, + { + "path": "operator/primary-status.after", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-status.after" + }, + { + "path": "operator/primary-status.before", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-status.before" + }, + { + "path": "operator/primary-worktrees.after", + "bytes": 398, + "sha256": "960d0ec942afbfd80194e5e9c9febf8a0ae9fa7cd1e588817df50df4e8352c8a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-worktrees.after" + }, + { + "path": "operator/primary-worktrees.before", + "bytes": 171, + "sha256": "bfac049f183713aa28c3cf8dd6c85ab47f38276cd87a4c6bac3810a029e1787b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-worktrees.before" + }, + { + "path": "operator/source-audit.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-audit.stderr" + }, + { + "path": "operator/source-audit.stdout", + "bytes": 11986, + "sha256": "0507abc50afeaaf68af460c5d475d106c4749a1fdda75812c327823c36cf59ab", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-audit.stdout" + }, + { + "path": "operator/source-custody.json", + "bytes": 638, + "sha256": "98d925bb27fd407671c82302d9f143ae2099fac70cd0a751bc3f700e26b53c85", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-custody.json" + }, + { + "path": "operator/source-npm-ci.json", + "bytes": 706, + "sha256": "3b37194d316b953f547f7878e040c132b881e0368f43b2fc59f252c267e05bf9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-npm-ci.json" + }, + { + "path": "operator/source-npm-ci.stderr", + "bytes": 358, + "sha256": "da370bd608ea0f37ee2141f76cc040fe073f2665c7130ec0d3eb441b3a077804", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-npm-ci.stderr" + }, + { + "path": "operator/source-npm-ci.stdout", + "bytes": 354, + "sha256": "a7cc1fc56bd4557bcba245d99a30bcbf76f7fc2f8347c9af41826f3d2c8d5624", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-npm-ci.stdout" + }, + { + "path": "operator/source-pack.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-pack.stderr" + }, + { + "path": "operator/source-pack.stdout", + "bytes": 28336, + "sha256": "d2d9f05091633befdb449cb5d572c882d710855117ce7acd3045c33b0dda2a59", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-pack.stdout" + }, + { + "path": "operator/sqlite-reopen.json", + "bytes": 967, + "sha256": "46e8a29bc91f337c1aa4e7de5e913675be6d6f2409df3594ba1edb9e0e0c622d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\sqlite-reopen.json" + }, + { + "path": "operator/sqlite-reopen.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\sqlite-reopen.stderr" + }, + { + "path": "operator/sqlite-reopen.stdout", + "bytes": 124, + "sha256": "a6c95f2898e8b8f6d9aef94111b98fbe47a16d152b03a83d6b8dca54c0915a24", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\sqlite-reopen.stdout" + }, + { + "path": "operator/template-lock-construction.command.json", + "bytes": 177, + "sha256": "75a028c63d52564c8e08ad181ea3add979943b77ec8a5edb21012e71e5576bd0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\template-lock-construction.command.json" + }, + { + "path": "operator/template-lock-construction.result.json", + "bytes": 824, + "sha256": "7cd1f55ba3bace5b4a6c454b8f09016f4a661c24f72c4cbc1a4edf9c22718048", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\template-lock-construction.result.json" + }, + { + "path": "operator/template-lock-construction.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\template-lock-construction.stderr" + }, + { + "path": "operator/template-lock-construction.stdout", + "bytes": 134, + "sha256": "22a980973d787e806a54ff17f2a351e2f7a8bbf4c7165a85eaf428ddee087ab6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\template-lock-construction.stdout" + }, + { + "path": "operator/template-lock-seed.json", + "bytes": 327367, + "sha256": "a708387eded0f5da3fe57d97750d8f79ed563e4fb1e12c1837ef233544d79268", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\template-lock-seed.json" + }, + { + "path": "operator/worktree-create.stderr", + "bytes": 76, + "sha256": "412d092f7f9a8341ab1e36010ff5f6f355174dfde58b060c221af47cee0fdcc0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\worktree-create.stderr" + }, + { + "path": "operator/worktree-create.stdout", + "bytes": 97, + "sha256": "1ad1748a5ad6b4de45732f83b76313c42e8568c93ff2d91f97c0d804ed6216a4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\worktree-create.stdout" + }, + { + "path": "plans/E6e_NODEAGENT_CURRENT_CONSUMER_PLAN.md.txt", + "bytes": 3852, + "sha256": "2b446c2d9af46eacae1a800e7ebfc8096426023d7af804562fda7f8868716f14", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_CURRENT_CONSUMER_PLAN.md" + }, + { + "path": "plans/E6e_NODEAGENT_D3_REPAIR_PLAN.json", + "bytes": 5218, + "sha256": "b06c4479e59945c68dec77488d48690b0155063e8c831f51f6468663d3284120", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_D3_REPAIR_PLAN.json" + }, + { + "path": "plans/E6e_NODEAGENT_D3_REPAIR_PLAN.md.txt", + "bytes": 4157, + "sha256": "f128cea4b359b583e2df85a3d3faa253ef96d87166034d52f8edbcd732f3821c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_D3_REPAIR_PLAN.md" + }, + { + "path": "plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.json", + "bytes": 3665, + "sha256": "e6ceec482df252cb28f6bed66f643da10c39618ff5cd2c4706f5679004096220", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.json" + }, + { + "path": "plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.md.txt", + "bytes": 3138, + "sha256": "a72f6e4ddc3885a992cd606d7e56b92f63a1639b5938078d374cb5d9de9caae5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.md" + }, + { + "path": "plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.json", + "bytes": 3433, + "sha256": "85c6640a3b4cbd95c428c0a2658a138751573ecaf42267316672b3a1a074a30a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.json" + }, + { + "path": "plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.md.txt", + "bytes": 1740, + "sha256": "c4dd4d688b37e8046782e349b293db0d37b2e8564b5e1472f555297f10e95229", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.md" + }, + { + "path": "plans/E6e_NODEAGENT_ENLARGEMENT_ADDENDUM.json", + "bytes": 1067, + "sha256": "012658e5de2e590f7be123d41f8613afe7df5ef860eaaa73267c5a917ac6c86f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_ENLARGEMENT_ADDENDUM.json" + }, + { + "path": "plans/E6e_NODEAGENT_KEYBOARD_VISIBILITY_ADDENDUM.json", + "bytes": 1332, + "sha256": "3ee3473b4bfb7fb22039b59e6e44844189f53c1ce274455021c0c62d44d59873", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_KEYBOARD_VISIBILITY_ADDENDUM.json" + } + ], + "grade": null +} diff --git a/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/worker-receipt.json b/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/worker-receipt.json new file mode 100644 index 0000000..b7404ea --- /dev/null +++ b/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/worker-receipt.json @@ -0,0 +1,336 @@ +{ + "status": "IMPLEMENTATION_FROZEN_FOR_INDEPENDENT_REVIEW", + "request": "Recover each repository for developer/user handoff, including real visual/responsive/interaction proof, using planner, single worker and fresh judge.", + "sourceRoot": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "head": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "branch": "codex/nodeagent-current-consumer-20260905", + "frozenAt": "2026-09-05T09:15:59.419651+00:00", + "authoredPaths": { + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + "HANDOFF.md": "03513bef1b7e6ef34c285472e7701b959f18352241f3e5fe87ac790020eb50be", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e" + }, + "authoredPathCount": 12, + "authoredDigest": "fe828a524641e727499e575836929cfc38130bcf873693a061173c68485b5e10", + "digestSerialization": "SHA256 of UTF-8 JSON object with keys sorted in Unicode codepoint order and compact comma/colon separators; values are lowercase SHA256 strings.", + "sourceProofBindings": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "sourceProofDigest": "a913d12a999e90e4017dca957b69ad7a6d6a5ea671c2ab562b8ce5b3f46939b9", + "trackedDiffSha256": "92355f04a1f6abd742cd40db6b849e62dd29a4a185e478c955bd2ae834e14a3e", + "trackedDiffPath": "E6e-nodeagent-current-consumer/d3-final-tracked.txt", + "indexSha256": "32423ff3a8a3cd745ac285ce51730b139a2344c14a40a67b43ace4dfbc271a51", + "indexSerialization": "git ls-files --stage -z", + "stagedPaths": [], + "portableRoot": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905\\evidence\\current-consumer-20260905", + "portableManifestSha256": "c3601b7021e3d7d5a1b233b620f6952422b98828de791492de393e4776dc8210", + "portableArtifactCountExcludingManifest": 938, + "portableBytesExcludingManifest": 21279473, + "reports": [ + { + "path": "E6e-nodeagent-current-consumer/d3-final-browser-03/report.json", + "sha256": "76dd8ca1416225bd0f9abe0b524ced0299a86c975fb839cafa18551d04759f24", + "passed": true, + "checks": 289, + "captures": 76 + }, + { + "path": "E6e-nodeagent-current-consumer/d3-unchanged-baseline-replay/report.json", + "sha256": "67e4a2f55c64c5cacb076009260b6db7ac85b291c4d36a2489d323d2888383fd", + "passed": true, + "checks": 59, + "captures": 25 + }, + { + "path": "E6e-nodeagent-current-consumer/d3-source-matched-after/report.json", + "sha256": "891b91c24dc53ac23392dd45044c9d8d2aff7303fe02e679a31746686d80e5b1", + "passed": true, + "checks": null, + "captures": 12 + }, + { + "path": "E6e-nodeagent-current-consumer/d3-generated-matched-after/report.json", + "sha256": "0ac3c1b23adee9509c4af8d3bd38bda1299767760cfba8ca02d9bb4ff9dc328c", + "passed": true, + "checks": null, + "captures": 4 + } + ], + "package": { + "path": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery package 03\\nodeagent-0.1.0.tgz", + "sha256": "1a6e980a684f433fcdc80021eb5569fa5c4b94e09a71e8a2adbe5d821e654c69", + "sourceTarInstalledFiles": 242, + "postPackageChangedPaths": [ + "HANDOFF.md" + ], + "laterAddedMetadata": "HANDOFF and portable evidence only. Runtime/UI/scenario/lock bytes unchanged. Not a committed or published release certificate." + }, + "normalChecks": [ + "41 existing tests PASS", + "Typecheck and Vite build PASS", + "3 tours /36 steps /11 citations PASS", + "Example guidance smoke PASS", + "Normal packed installed doctor/scaffold --auto install/demo/smoke/build PASS", + "Existing frame/durable/SQLite close/reopen retained PASS, separate from browser", + "Final metadata secret scan and git diff --check PASS" + ], + "custody": [ + "Original Pi HEAD/index/existing refs/registered primary block preserved; only authorized new branch/worktree added.", + "Five retained consumers compare their 9 core input files with capture-time hashes.", + "All raw intermediate directories retained; selected decisive artifacts are portable.", + "No staging, commit, push, deployment, provider call or host activation.", + "Ignored dependency/build caches retained; this slice does not authorize worktree retirement." + ], + "limits": [ + "All complete UI/accessibility/performance/visual grades remain null.", + "Source header has 21px overflow at390 with original computed text doubled; recovery/composer fit and remain visibly keyboard reachable.", + "Source graph crowded/clipped labels remain a separate visual assessment.", + "Source full audit:9 development findings including1 critical; generated full audit:4 development findings(3 high/1 low); recorded production-only audits zero.", + "No React render-error boundary or New Thread control. Browser reload resets conversation; durable SQLite proof is separate.", + "Stop ends response display updates; it cannot undo computed, durable, graph or external work. Local duplicate guard is not external idempotency.", + "No provider/Convex/host/deploy/production longevity certification." + ], + "review": "Fresh judge must inspect raw source/diff/artifacts and replay current source before commit/push." +} diff --git a/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/worker-receipt.md.txt b/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/worker-receipt.md.txt new file mode 100644 index 0000000..d7120c5 --- /dev/null +++ b/evidence/current-consumer-20260905/historical/publication-before-raw-attributes/worker-receipt.md.txt @@ -0,0 +1,19 @@ +# NodeAgent current consumer and response recovery receipt + +Builder. **Implementation frozen for independent review.** + +**Re your request:** make each repository usable for developer/user handoff, including visual, responsive and interaction standards through planner, one worker and fresh judge. This slice repairs the real fresh-package dependency failure and the current Stop/error/Retry interface. It preserves the separate Pi draft and earlier consumers. It does not claim complete repository readiness. + +The candidate remains on `codex/nodeagent-current-consumer-20260905`, HEAD `4e525fd0`, with exactly 12 authored paths plus the portable packet, all unstaged. The JSON lists every authored hash, 234 source proof bindings, index serialization and raw tracked diff. Authored digest: `fe828a524641e727499e575836929cfc38130bcf873693a061173c68485b5e10`. Portable manifest SHA-256: `c3601b7021e3d7d5a1b233b620f6952422b98828de791492de393e4776dc8210`. It binds 938 artifacts excluding itself. No commit or push occurred. + +The final response-recovery proof passed 289 checks with 76 captures and 12 cells covering 320/390/768/1024/1440/1920 for source and the normally installed generated app. The unchanged baseline separately passed 59 checks with 25 captures. Supplemental matched fixtures provide 16 captures at 960px height, including source running controls at all six widths and exact original source/generated 390/1440 before fixtures. The main matrix uses 844px mobile height separately. Screenshot-only iterator holds do not certify Stop; ordinary unheld Stop passed in the recovery matrix. + +The actual sequence is prior completed work, ordinary Stop, explicit retry, partial failure, explicit retry, another failure, explicit retry and recovery. Each failed/recovered response has a distinct actual SDK ID and the same user-parent ID; exactly three attempts occurred, with no automatic retry. Immediate double activation starts once; pointer down/up rectangles remain equal. Earlier cards and the source graph snapshot remain unchanged after Stop. At enlarged text, both failure explanation and keyboard-focused Retry paint unobstructed. Twelve additional turns yielded 15 responses/60 cards in 21.182 seconds generated and 29.482 seconds source. This is bounded accumulation, not production longevity. + +The existing 41 tests, typecheck/build, three tours/36 steps/11 citations and example guidance pass. Final secret scan and diff check pass. Normal third package/install/installed doctor/scaffold auto pass; 242 source/tar/installed files compare exactly. Tar SHA-256: `1a6e980a684f433fcdc80021eb5569fa5c4b94e09a71e8a2adbe5d821e654c69`. Final handoff/portable metadata was written afterward, separate from the package implementation identity. Frame/durable/SQLite reopen and lease/fencing proofs retain their earlier raw evidence and are not browser persistence. + +Failures remain inspectable: unlocked dependency mismatch, premature completion probe, Stop focus loss, double Retry starts, ineffective isRunning-only guard, compounded-font fixture, generated intrinsic-width overflow, source sticky-footer occlusion and a supplemental capture-helper parse error. Fixes stay in six existing UI owners plus the compatible template lock; two onboarding files correct moved anchors and now-false no-cancel/no-recovery wording. No adapter, backend, graph, provider, dependency range or historical promotion claim was rewritten. The UTF-8 prose diff was inspected for these intended changes. + +Remaining limits: source-header 21px overflow at 390 with doubled computed text, source graph readability, no React render-error boundary/New Thread, browser reload reset, nine source and four generated development advisories. Recorded production-only audit zero is a narrower claim. Full grades remain null. Original Pi checkout and existing refs/index are intact; ignored caches and custody holds prevent automatic retirement. No deployment, provider request or host activation occurred. + +Start with the candidate HANDOFF.md and evidence/current-consumer-20260905/README.md. Raw commands and failures remain in E6e-nodeagent-current-consumer; the JSON names the exact selected reports and manifest. Fresh independent judgment is the next gate. diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-custody.py b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-custody.py new file mode 100644 index 0000000..1e3bfe0 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-custody.py @@ -0,0 +1,89 @@ +from pathlib import Path +import datetime, hashlib, json, subprocess, sys, tarfile + +P = Path(__file__).resolve().parent +E = P / 'E6e-nodeagent-current-consumer' +R = json.loads((P / 'E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.json').read_text(encoding='utf-8-sig')) +S = Path(R['sourceRoot']) +D = Path(R['portableRoot']) +O = P / 'E6e-nodeagent-independent-review' +O.mkdir(exist_ok=True) +phase = sys.argv[1] +assert phase in ['before', 'after'] +sha = lambda b: hashlib.sha256(b).hexdigest() +load = lambda p: json.loads(p.read_text(encoding='utf-8-sig')) +git = lambda *args, data=None: subprocess.check_output(['git', '--no-optional-locks', '-C', str(S), *args], input=data) +state = {'head': git('rev-parse', 'HEAD').decode().strip(), 'index': sha(git('ls-files', '--stage', '-z')), 'refs': sha(git('show-ref')), 'status': sha(git('status', '--porcelain=v1', '--untracked-files=all', '-z'))} +assert state['head'] == R['head'] and state['index'] == R['indexSha256'] +assert git('diff', '--cached', '--name-only') == b'' +assert git('diff', '--check') == b'' +assert sha(git('diff', '--text')) == R['trackedDiffSha256'] +for group in ['authoredPaths', 'sourceProofBindings']: + actual = {name: sha((S / name).read_bytes()) for name in R[group]} + assert actual == R[group], group + digest = sha(json.dumps(actual, sort_keys=True, separators=(',', ':')).encode()) + assert digest == R['authoredDigest' if group == 'authoredPaths' else 'sourceProofDigest'] +manifest = load(D / 'manifest.json') +assert sha((D / 'manifest.json').read_bytes()) == R['portableManifestSha256'] +assert len(manifest['artifacts']) == R['portableArtifactCountExcludingManifest'] == 938 +assert manifest['sourceBindings'] == R['sourceProofBindings'] +portable = {} +copies = 0 +for row in manifest['artifacts']: + path = D / row['path'] + assert path.resolve().is_relative_to(D.resolve()) + data = path.read_bytes() + assert sha(data) == row['sha256'] and len(data) == row['bytes'], row['path'] + portable[str(path.relative_to(S)).replace('\\', '/')] = {'sha256': sha(data), 'bytes': len(data)} + origin = row['operatorSource'] + if Path(origin).is_absolute(): + assert data == Path(origin).read_bytes(), origin + copies += 1 +assert sum(row['bytes'] for row in manifest['artifacts']) == R['portableBytesExcludingManifest'] +portable[str((D / 'manifest.json').relative_to(S)).replace('\\', '/')] = {'sha256': sha((D / 'manifest.json').read_bytes()), 'bytes': (D / 'manifest.json').stat().st_size} +assert set(portable) == {str(f.relative_to(S)).replace('\\', '/') for f in D.rglob('*') if f.is_file()} +paths = sorted(set(portable) | set(R['authoredPaths'])) +filtered_hashes = git('hash-object', '--stdin-paths', data=(''.join(json.dumps(name, ensure_ascii=False) + '\n' for name in paths)).encode()).decode().splitlines() +assert len(filtered_hashes) == len(paths) +normalization = [] +for name, filtered in zip(paths, filtered_hashes): + data = (S / name).read_bytes() + raw = hashlib.sha1(b'blob ' + str(len(data)).encode() + b'\0' + data).hexdigest() + if raw != filtered: + normalization.append({'path': name, 'rawBlob': raw, 'futureFilteredBlob': filtered, 'crlfCount': data.count(b'\r\n')}) +package_receipt = load(E / 'd3-installed-consumer-03.json') +tarball = Path(package_receipt['tarball']) +assert sha(tarball.read_bytes()) == package_receipt['tarballSha256'] == R['package']['sha256'] +commands = load(E / 'd3-final-03-commands.json') +host = Path(next(row['cwd'] for row in commands if row['name'] == 'd3-host-install-03')) +installed = host / 'node_modules/nodeagent' +source_drift = [] +package_bindings = package_receipt['sourceTarInstalledBindings'] +assert len(package_bindings) == 242 +with tarfile.open(tarball, 'r:gz') as archive: + file_names = {item.name.removeprefix('package/') for item in archive.getmembers() if item.isfile()} + assert file_names == {row['path'] for row in package_bindings} + for row in package_bindings: + name, digest = row['path'], row['sha256'] + data = archive.extractfile('package/' + name).read() + assert sha(data) == digest and (installed / name).read_bytes() == data, name + if (S / name).read_bytes() != data: source_drift.append(name) +assert source_drift == ['HANDOFF.md'], source_drift +consumers = [] +for item in load(E / 'd3-consumer-preservation.json'): + root = tarball.parent.parent / item['consumer'] + for name, digest in item['hashes'].items(): assert sha((root / name).read_bytes()) == digest + consumers.append({'root': str(root), 'hashes': item['hashes']}) +consumer = Path(package_receipt['generatedApp']) +browser = load(E / 'd3-final-browser-03/report.json') +for name, digest in browser['consumerBefore'].items(): + assert sha((consumer / name).read_bytes()) == digest + assert (consumer / name).read_bytes() == (S / 'examples/apps/chat-ui/template' / name).read_bytes() +assert browser['consumerBefore'] == browser['consumerAfter'] +report = {'at': datetime.datetime.now(datetime.timezone.utc).isoformat(), 'phase': phase, 'state': state, 'receiptSha256': sha((P / 'E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.json').read_bytes()), 'authoredDigest': R['authoredDigest'], 'sourceProofDigest': R['sourceProofDigest'], 'authoredPaths': R['authoredPaths'], 'portableManifestSha256': R['portableManifestSha256'], 'portableBindings': portable, 'rawCopiesExact': copies, 'portableArtifactsExcludingManifest': 938, 'portableBytesExcludingManifest': R['portableBytesExcludingManifest'], 'futureFilteredBlobMismatches': normalization, 'sourceTarInstalled': {'files': 242, 'tarSha256': sha(tarball.read_bytes()), 'installedRoot': str(installed), 'currentSourceDifferences': source_drift, 'scope': 'HANDOFF only changed after package capture; all 242 tar/installed bytes exact, 241 current source bytes exact.'}, 'retainedConsumers': consumers, 'currentGeneratedInputsExactSourceTemplate': browser['consumerBefore'], 'candidatePaths': paths, 'noMutations': True} +if phase == 'after': + before = load(O / 'custody-before.json') + for key in ['state', 'receiptSha256', 'authoredDigest', 'sourceProofDigest', 'portableManifestSha256', 'portableBindings', 'sourceTarInstalled', 'retainedConsumers', 'currentGeneratedInputsExactSourceTemplate', 'candidatePaths']: + assert before[key] == report[key], key +(O / ('custody-' + phase + '.json')).write_text(json.dumps(report, indent=2) + '\n', encoding='utf-8', newline='\n') +print(json.dumps({'phase': phase, 'authored': len(R['authoredPaths']), 'sourceBindings': len(R['sourceProofBindings']), 'portable': 938, 'exactCopies': copies, 'futureFilteredMismatches': len(normalization), 'packageFiles': 242, 'postPackageSourceDifferences': source_drift, 'consumers': len(consumers), 'sourcePreserved': True}, indent=2)) diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-late-stop.mjs b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-late-stop.mjs new file mode 100644 index 0000000..7fce614 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-late-stop.mjs @@ -0,0 +1,180 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import { createServer as portProbe } from 'node:net'; +import path from 'node:path'; +import { createRequire } from 'node:module'; +import { pathToFileURL } from 'node:url'; + +const source = 'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'; +const require=createRequire(path.join(source,'package.json')); +const {chromium}=require('playwright'); +const {createServer}=await import(pathToFileURL(path.join(source,'node_modules/vite/dist/node/index.js')).href); +const consumer = path.resolve(process.argv[2] ?? ''); +const output = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide a real installed generated app and NEW output directory'); +await mkdir(output, { recursive: false }); +const sha = bytes => createHash('sha256').update(bytes).digest('hex'); +const sourceFiles = execFileSync('git', ['ls-files', '-z'], { cwd: source, env: { ...process.env, GIT_OPTIONAL_LOCKS: '0' } }).toString().split('\0').filter(f => f && !path.basename(f).startsWith('.env')); +sourceFiles.push('e2e/current-consumer-proof.mjs', 'e2e/current-consumer-recovery-proof.mjs', 'examples/apps/chat-ui/template/package-lock.json'); +const consumerFiles = ['package.json', 'package-lock.json', 'index.html', 'vite.config.mjs', 'src/main.jsx', 'src/styles.css', 'src/nodeagent-chat/NodeAgentChatApp.jsx', 'src/nodeagent-chat/nodeAgentLocalAdapter.js', 'src/nodeagent-chat/toolUIs.jsx']; +const hashFiles = async (root, files) => Object.fromEntries(await Promise.all(files.map(async f => [f, sha(await readFile(path.join(root, f)))]))); +const report = { reviewerScope:'Bounded late-Stop supplement: source and normal generated consumer at390; wait for first actual completed tool and second running tool, native Stop, preserve current completed tool and prior response/graph, explicit Retry.', namedProof: 'NODEAGENT-INDEPENDENT-LATE-STOP-01', startedAt: new Date().toISOString(), sourceBefore: await hashFiles(source, sourceFiles), consumerBefore: await hashFiles(consumer, consumerFiles), passed: false, checks: [], cells: [], captures: [], requests: [], grade: null }; +const check = (value, name) => { report.checks.push({ name, passed: Boolean(value) }); assert.ok(value, name); }; +let browser, server, page; +let kind, tool, bubble, composer; +const surfaces = process.argv[4] === '--source-only' ? ['source'] : ['generated', 'source']; +async function start(root) { + const probe = portProbe(); await new Promise(resolve => probe.listen(0, '127.0.0.1', resolve)); const port = probe.address().port; await new Promise(resolve => probe.close(resolve)); + server = await createServer({ root, envDir: false, server: { host: '127.0.0.1', port, strictPort: true, open: false } }); await server.listen(); return 'http://127.0.0.1:' + port; +} +async function snapshot(name, target = composer) { + if (target) await page.locator(target).scrollIntoViewIfNeeded(); + let prior = await page.content(); + for (let i = 0; i < 16; i++) { await page.waitForTimeout(200); const current = await page.content(); if (current === prior) break; prior = current; } + await page.evaluate(() => new Promise(resolve => requestAnimationFrame(() => requestAnimationFrame(resolve)))); + const html = await page.content(); + await writeFile(path.join(output, name + '.before.html'), html); + await page.screenshot({ path: path.join(output, name + '.png'), caret: 'initial' }); + const after = await page.content(); await writeFile(path.join(output, name + '.html'), after); + check(after === html, name + ' exact DOM during settled screenshot'); + const state = await page.evaluate(() => ({ layout: [...document.querySelectorAll('.na-recovery,.naRecovery,.na-footer,.naFooter,.na-viewport,.naViewport')].map(e=>({class:e.className,scrollTop:e.scrollTop,scrollHeight:e.scrollHeight,clientHeight:e.clientHeight,box:JSON.parse(JSON.stringify(e.getBoundingClientRect()))})), viewport: { width: innerWidth, height: innerHeight }, scroll: { x: scrollX, y: scrollY }, text: document.body.innerText, overflow: document.documentElement.scrollWidth - innerWidth, focus: { tag: document.activeElement?.tagName, label: document.activeElement?.getAttribute('aria-label') }, buttons: [...document.querySelectorAll('button')].map(b => ({ label: b.getAttribute('aria-label') || b.textContent, disabled: b.disabled })) })); + await writeFile(path.join(output, name + '.json'), JSON.stringify(state, null, 2) + '\n'); + report.captures.push({ name, pngSha256: sha(await readFile(path.join(output, name + '.png'))), state }); return state; +} +async function send(question) { + await page.locator('textarea[name="input"]').fill(question); + await page.getByRole('button', { name: 'Send', exact: true }).waitFor(); + await page.waitForFunction(() => document.querySelector('button[aria-label="Send"]')?.disabled === false); + await page.locator('textarea[name="input"]').press('Enter'); +} +async function idleWithCards(count) { + await page.waitForFunction(({ tool, count }) => document.querySelectorAll(tool).length === count && !document.querySelector('button[aria-label="Stop response"]'), { tool, count }); +} +async function activateRetry(retry, keyboard, cell, phase) { + if (keyboard) { await retry.focus(); await page.keyboard.press('Enter'); await page.keyboard.press('Enter'); (cell.keyboardActivations ??= []).push({phase, key:'Enter', count:2, method:'Two native key activations; the first may move focus to the existing empty composer.'}); return; } + await retry.evaluate(e => { + window.proofPointerMotion = {}; + const rect = () => { const r = e.getBoundingClientRect(); return { x: r.x, y: r.y, width: r.width, height: r.height }; }; + e.addEventListener('mousedown', () => window.proofPointerMotion.down = rect(), { once: true }); + document.addEventListener('mouseup', () => window.proofPointerMotion.up = rect(), { once: true, capture: true }); + }); + await retry.dblclick(); + const motion = await page.evaluate(() => window.proofPointerMotion); + (cell.pointerActivations ??= []).push({ phase, ...motion }); + check(Boolean(motion.down && motion.up) && JSON.stringify(motion.down) === JSON.stringify(motion.up), kind + ' pointer Retry stays in place before activation ' + phase + ' ' + cell.width); +} +async function graph() { + if (kind === 'generated') return null; + return page.evaluate(async () => { const m = await import('/src/features/node-agent/graph/agentGraphSession.ts'); return m.graphSession.getSnapshot(); }); +} +async function installPartialFailure() { + await page.evaluate(async ({ modulePath, key }) => { + const module = await import(modulePath), original = module[key].run; + window.proofAttempts = []; + module[key].run = async function* (args) { + if (window.proofAttempts.length >= 64) throw new Error('PROOF FIXTURE: attempt bound exceeded'); + const attempt = { id: args.unstable_assistantMessageId, parentId: args.unstable_parentId, injectedFailure: window.proofAttempts.length < 2 }; + window.proofAttempts.push(attempt); + window.proofCurrentMessage = args.unstable_getMessage; + for await (const frame of original(args)) { + yield frame; + const tools = frame.content.filter(p => p.type === 'tool-call'); + if (attempt.injectedFailure && tools.some(p => p.result) && tools.some(p => !p.result)) throw new Error('PROOF FIXTURE: second tool failed after the first actual result.'); + } + }; + }, { modulePath: kind === 'generated' ? '/src/nodeagent-chat/nodeAgentLocalAdapter.js' : '/src/features/node-agent/runtime/nodeAgentChatAdapter.ts', key: kind === 'generated' ? 'nodeAgentLocalAdapter' : 'nodeAgentChatAdapter' }); +} +try { + browser = await chromium.launch({ headless: true }); report.browser = browser.version(); report.node = process.version; + for (kind of surfaces) { + const base = await start(kind === 'generated' ? consumer : source); + tool = kind === 'generated' ? '.naTool' : '.na-tool'; bubble = kind === 'generated' ? '.naMsgAssistant .naBubble' : '.na-msg-assistant .na-bubble'; composer = kind === 'generated' ? '.naComposer' : '.na-composer'; + for (const width of [390]) { + const ctx = await browser.newContext({ viewport: { width, height: width <= 390 ? 844 : 960 }, colorScheme: 'dark' }); + await ctx.route('**/*', route => { const request = route.request(), url = new URL(request.url()); if (report.requests.length < 2000) report.requests.push({ origin: url.origin, path: url.pathname, method: request.method() }); return url.origin === base || ['fonts.googleapis.com', 'fonts.gstatic.com'].includes(url.hostname) ? route.continue() : route.abort(); }); + page = await ctx.newPage(); page.setDefaultTimeout(16000); + const cell = { kind, width, errors: [], checksStart: report.checks.length, capturesStart: report.captures.length }; report.cells.push(cell); page.on('pageerror', error => cell.errors.push(error.message)); + cell.console=[];cell.failedRequests=[];page.on('console', message=>{if(cell.console.length<200&&['error','warning'].includes(message.type()))cell.console.push({type:message.type(),text:message.text(),location:message.location()});});page.on('requestfailed',request=>{if(cell.failedRequests.length<200)cell.failedRequests.push({url:request.url(),failure:request.failure()});}); + await page.goto(base, { waitUntil: 'domcontentloaded', timeout: 45000 }); await page.locator('textarea[name="input"]').waitFor(); + const question = kind === 'generated' ? 'Does the local NodeAgent wedge hold for an MVP?' : 'Does our wedge hold versus Acme, and does the runway model survive 18 months?'; + await snapshot(kind + '-empty-' + width); + await send(question); await idleWithCards(4); await page.waitForTimeout(700); + const earlier = await page.locator(bubble).first().innerText(); const graphBefore = await graph(); + await send(question); await page.waitForFunction(({tool})=>document.querySelectorAll(tool).length===6 && document.querySelectorAll(tool)[4].getAttribute('data-running')==='false' && document.querySelectorAll(tool)[5].getAttribute('data-running')==='true',{tool}); + const partialBefore=await page.locator(tool).nth(4).innerText();const graphBeforeStop=await graph(); + const stop = page.getByRole('button', { name: 'Stop response', exact: true }); const began = Date.now(); + if ([390, 1024, 1920].includes(width)) { await stop.focus(); await page.keyboard.press('Enter'); cell.stopInput = 'keyboard'; } else { await stop.click(); cell.stopInput = 'pointer'; } + await page.getByText('Stopped this response. Completed work is kept.', { exact: true }).waitFor(); cell.stopLatencyMs = Date.now() - began; + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('stopped')), kind + ' native incomplete tool shows stopped ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' Stop preserves earlier completed response ' + width); + const stoppedText = await page.locator(bubble).last().innerText(), stoppedGraph = await graph(); + check(!stoppedText.includes('Done.'), kind + ' stopped response has no fake Done ' + width); + await page.waitForTimeout(750); check(await page.locator(bubble).last().innerText() === stoppedText, kind + ' stopped response remains stable ' + width); assert.deepEqual(await graph(), stoppedGraph); assert.deepEqual(stoppedGraph, graphBeforeStop); + check(await page.locator(tool).nth(4).innerText()===partialBefore,kind+' Stop preserves the current response first completed tool result');check(await page.locator(tool).nth(4).getAttribute('data-interrupted')==='false',kind+' completed tool does not acquire stopped status'); + await snapshot(kind + '-stopped-' + width); + check(await page.locator('textarea[name="input"]').evaluate(e => e === document.activeElement), kind + ' Stop retains keyboard continuation focus ' + width); + await page.getByRole('button', { name: 'Retry response', exact: true }).click(); await idleWithCards(8); check(await page.locator(bubble).count() === 2, kind + ' stopped Retry replaces only current response ' + width); + check(await page.locator(bubble).first().innerText()===earlier,kind+' late-Stop retry preserves earlier response');await snapshot(kind+'-late-stop-recovered-'+width);await ctx.close();continue; + await installPartialFailure(); await send(question); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('failed')), kind + ' partial failure names failed tool ' + width); + await page.waitForTimeout(750); check(await page.evaluate(() => window.proofAttempts.length === 1), kind + ' failed response does not retry automatically ' + width); + await snapshot(kind + '-error-' + width); + const retry = page.getByRole('button', { name: 'Retry response', exact: true }); + await activateRetry(retry, [390, 1024, 1920].includes(width), cell, 'fail-again'); + await page.waitForFunction(() => window.proofAttempts.length >= 2 && window.proofCurrentMessage().status?.type === 'incomplete'); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + await page.waitForTimeout(750); + check(await page.evaluate(() => window.proofAttempts.length === 2), kind + ' first explicit Retry fails once with no automatic or duplicate retry ' + width); + await snapshot(kind + '-error-again-' + width); + if (width === 390) { + cell.enlargement = await page.evaluate(() => { + const targets = [...document.querySelectorAll('*')].filter(e => e.matches('textarea,input,button') || [...e.childNodes].some(n => n.nodeType === 3 && n.textContent.trim())); + const originals = targets.map(e => ({ e, style: e.getAttribute('style'), size: parseFloat(getComputedStyle(e).fontSize) })); + window.proofRestoreText = () => originals.forEach(({ e, style }) => style === null ? e.removeAttribute('style') : e.setAttribute('style', style)); + originals.forEach(({ e, size }) => e.style.fontSize = size * 2 + 'px'); + return { method: 'Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.', elements: originals.length }; + }); + await page.locator('textarea[name="input"]').focus(); + await page.keyboard.press('Shift+Tab'); + check(await retry.evaluate(e => e === document.activeElement), kind + ' enlarged Retry reachable from composer by keyboard ' + width); + const enlarged = await snapshot(kind + '-error-text-200-' + width, null); + cell.enlargement.documentOverflow = enlarged.overflow; + const changedBounds = await page.locator('.na-recovery,.naRecovery,' + composer).evaluateAll(es => es.map(e => ({ class: e.className, left: e.getBoundingClientRect().left, right: e.getBoundingClientRect().right, overflow: e.scrollWidth - e.clientWidth }))); + cell.enlargement.changedBounds = changedBounds; + check(changedBounds.every(b => b.left >= -1 && b.right <= width + 1 && b.overflow <= 1), kind + ' enlarged recovery and composer fit ' + width); + check(await retry.evaluate(e => { const r = e.getBoundingClientRect(); const hit = document.elementFromPoint(r.x + r.width / 2, r.y + r.height / 2); return r.y >= 0 && r.bottom <= innerHeight && (hit === e || e.contains(hit)); }), kind + ' enlarged Retry paints visibly without overlay obstruction ' + width); + check(await page.getByRole('alert').evaluate(e => { const r = e.getBoundingClientRect(); const hit = document.elementFromPoint(r.x + r.width / 2, r.y + r.height / 2); return r.y >= 0 && r.bottom <= innerHeight && (hit === e || e.contains(hit)); }), kind + ' enlarged failure explanation remains visible with Retry ' + width); + await page.evaluate(() => window.proofRestoreText()); + } + await activateRetry(retry, [390, 1024, 1920].includes(width), cell, 'recover'); + await idleWithCards(12); cell.attempts = await page.evaluate(() => window.proofAttempts); + check(cell.attempts.length === 3, kind + ' second explicit Retry recovers once despite repeated activation ' + width); + check(cell.attempts.every(a => typeof a.id === 'string' && a.id.length > 0) && new Set(cell.attempts.map(a => a.id)).size === 3, kind + ' SDK creates a fresh response identity for both retries ' + width); + check(new Set(cell.attempts.map(a => a.parentId)).size === 1, kind + ' retries retain the same user parent ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' recovery retains earlier evidence ' + width); + check(await page.getByRole('alert').count() === 0, kind + ' recovered response removes failure notice ' + width); + await snapshot(kind + '-recovered-' + width); + if (width === 390) { + const begin = Date.now(); for (let i = 0; i < 12; i++) { await send(question); await idleWithCards(4 * (4 + i)); } + cell.accumulation = { additionalTurns: 12, totalResponses: 15, toolCards: 60, elapsedMs: Date.now() - begin }; + await snapshot(kind + '-accumulated-' + width); + } + await page.reload({ waitUntil: 'domcontentloaded' }); await page.locator('textarea[name="input"]').waitFor(); check(await page.locator(tool).count() === 0, kind + ' reload resets browser session honestly ' + width); + await snapshot(kind + '-reloaded-' + width); + check(cell.errors.every(e => e.includes('PROOF FIXTURE: second tool failed')), kind + ' only the intentional adapter fault reaches page errors ' + width); + cell.checksEnd = report.checks.length; cell.capturesEnd = report.captures.length; await ctx.close(); + } + await server.close(); server = null; + } + check(report.requests.every(r => r.method === 'GET'), 'no browser writes or provider requests'); + report.sourceAfter = await hashFiles(source, sourceFiles); report.consumerAfter = await hashFiles(consumer, consumerFiles); assert.deepEqual(report.sourceAfter, report.sourceBefore); assert.deepEqual(report.consumerAfter, report.consumerBefore); + report.passed = true; +} catch (error) { + report.error = String(error.stack ?? error); process.exitCode = 1; + if (page && !page.isClosed()) { await writeFile(path.join(output, 'failure.html'), await page.content()); await page.screenshot({ path: path.join(output, 'failure.png'), caret: 'initial' }).catch(() => {}); } +} finally { + await browser?.close(); await server?.close(); report.finishedAt = new Date().toISOString(); await writeFile(path.join(output, 'report.json'), JSON.stringify(report, null, 2) + '\n'); console.log(JSON.stringify({ output, passed: report.passed, checks: report.checks.length, captures: report.captures.length, error: report.error })); +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-recovery.mjs b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-recovery.mjs new file mode 100644 index 0000000..7bd9f55 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-recovery.mjs @@ -0,0 +1,177 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import { createServer as portProbe } from 'node:net'; +import path from 'node:path'; +import { createRequire } from 'node:module'; +import { pathToFileURL } from 'node:url'; + +const source = 'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'; +const require=createRequire(path.join(source,'package.json')); +const {chromium}=require('playwright'); +const {createServer}=await import(pathToFileURL(path.join(source,'node_modules/vite/dist/node/index.js')).href); +const consumer = path.resolve(process.argv[2] ?? ''); +const output = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide a real installed generated app and NEW output directory'); +await mkdir(output, { recursive: false }); +const sha = bytes => createHash('sha256').update(bytes).digest('hex'); +const sourceFiles = execFileSync('git', ['ls-files', '-z'], { cwd: source, env: { ...process.env, GIT_OPTIONAL_LOCKS: '0' } }).toString().split('\0').filter(f => f && !path.basename(f).startsWith('.env')); +sourceFiles.push('e2e/current-consumer-proof.mjs', 'e2e/current-consumer-recovery-proof.mjs', 'examples/apps/chat-ui/template/package-lock.json'); +const consumerFiles = ['package.json', 'package-lock.json', 'index.html', 'vite.config.mjs', 'src/main.jsx', 'src/styles.css', 'src/nodeagent-chat/NodeAgentChatApp.jsx', 'src/nodeagent-chat/nodeAgentLocalAdapter.js', 'src/nodeagent-chat/toolUIs.jsx']; +const hashFiles = async (root, files) => Object.fromEntries(await Promise.all(files.map(async f => [f, sha(await readFile(path.join(root, f)))]))); +const report = { reviewerScope:'Independent four-cell actual source/normal installed consumer replay; ordinary Stop, two real incomplete IDs, repeated native keyboard and pointer Retry; original worker scenario retained separately.', namedProof: 'NODEAGENT-INDEPENDENT-RESPONSE-RECOVERY-01', startedAt: new Date().toISOString(), sourceBefore: await hashFiles(source, sourceFiles), consumerBefore: await hashFiles(consumer, consumerFiles), passed: false, checks: [], cells: [], captures: [], requests: [], grade: null }; +const check = (value, name) => { report.checks.push({ name, passed: Boolean(value) }); assert.ok(value, name); }; +let browser, server, page; +let kind, tool, bubble, composer; +const surfaces = process.argv[4] === '--source-only' ? ['source'] : ['generated', 'source']; +async function start(root) { + const probe = portProbe(); await new Promise(resolve => probe.listen(0, '127.0.0.1', resolve)); const port = probe.address().port; await new Promise(resolve => probe.close(resolve)); + server = await createServer({ root, envDir: false, server: { host: '127.0.0.1', port, strictPort: true, open: false } }); await server.listen(); return 'http://127.0.0.1:' + port; +} +async function snapshot(name, target = composer) { + if (target) await page.locator(target).scrollIntoViewIfNeeded(); + let prior = await page.content(); + for (let i = 0; i < 16; i++) { await page.waitForTimeout(200); const current = await page.content(); if (current === prior) break; prior = current; } + await page.evaluate(() => new Promise(resolve => requestAnimationFrame(() => requestAnimationFrame(resolve)))); + const html = await page.content(); + await writeFile(path.join(output, name + '.before.html'), html); + await page.screenshot({ path: path.join(output, name + '.png'), caret: 'initial' }); + const after = await page.content(); await writeFile(path.join(output, name + '.html'), after); + check(after === html, name + ' exact DOM during settled screenshot'); + const state = await page.evaluate(() => ({ layout: [...document.querySelectorAll('.na-recovery,.naRecovery,.na-footer,.naFooter,.na-viewport,.naViewport')].map(e=>({class:e.className,scrollTop:e.scrollTop,scrollHeight:e.scrollHeight,clientHeight:e.clientHeight,box:JSON.parse(JSON.stringify(e.getBoundingClientRect()))})), viewport: { width: innerWidth, height: innerHeight }, scroll: { x: scrollX, y: scrollY }, text: document.body.innerText, overflow: document.documentElement.scrollWidth - innerWidth, focus: { tag: document.activeElement?.tagName, label: document.activeElement?.getAttribute('aria-label') }, buttons: [...document.querySelectorAll('button')].map(b => ({ label: b.getAttribute('aria-label') || b.textContent, disabled: b.disabled })) })); + await writeFile(path.join(output, name + '.json'), JSON.stringify(state, null, 2) + '\n'); + report.captures.push({ name, pngSha256: sha(await readFile(path.join(output, name + '.png'))), state }); return state; +} +async function send(question) { + await page.locator('textarea[name="input"]').fill(question); + await page.getByRole('button', { name: 'Send', exact: true }).waitFor(); + await page.waitForFunction(() => document.querySelector('button[aria-label="Send"]')?.disabled === false); + await page.locator('textarea[name="input"]').press('Enter'); +} +async function idleWithCards(count) { + await page.waitForFunction(({ tool, count }) => document.querySelectorAll(tool).length === count && !document.querySelector('button[aria-label="Stop response"]'), { tool, count }); +} +async function activateRetry(retry, keyboard, cell, phase) { + if (keyboard) { await retry.focus(); await page.keyboard.press('Enter'); await page.keyboard.press('Enter'); (cell.keyboardActivations ??= []).push({phase, key:'Enter', count:2, method:'Two native key activations; the first may move focus to the existing empty composer.'}); return; } + await retry.evaluate(e => { + window.proofPointerMotion = {}; + const rect = () => { const r = e.getBoundingClientRect(); return { x: r.x, y: r.y, width: r.width, height: r.height }; }; + e.addEventListener('mousedown', () => window.proofPointerMotion.down = rect(), { once: true }); + document.addEventListener('mouseup', () => window.proofPointerMotion.up = rect(), { once: true, capture: true }); + }); + await retry.dblclick(); + const motion = await page.evaluate(() => window.proofPointerMotion); + (cell.pointerActivations ??= []).push({ phase, ...motion }); + check(Boolean(motion.down && motion.up) && JSON.stringify(motion.down) === JSON.stringify(motion.up), kind + ' pointer Retry stays in place before activation ' + phase + ' ' + cell.width); +} +async function graph() { + if (kind === 'generated') return null; + return page.evaluate(async () => { const m = await import('/src/features/node-agent/graph/agentGraphSession.ts'); return m.graphSession.getSnapshot(); }); +} +async function installPartialFailure() { + await page.evaluate(async ({ modulePath, key }) => { + const module = await import(modulePath), original = module[key].run; + window.proofAttempts = []; + module[key].run = async function* (args) { + if (window.proofAttempts.length >= 64) throw new Error('PROOF FIXTURE: attempt bound exceeded'); + const attempt = { id: args.unstable_assistantMessageId, parentId: args.unstable_parentId, injectedFailure: window.proofAttempts.length < 2 }; + window.proofAttempts.push(attempt); + window.proofCurrentMessage = args.unstable_getMessage; + for await (const frame of original(args)) { + yield frame; + const tools = frame.content.filter(p => p.type === 'tool-call'); + if (attempt.injectedFailure && tools.some(p => p.result) && tools.some(p => !p.result)) throw new Error('PROOF FIXTURE: second tool failed after the first actual result.'); + } + }; + }, { modulePath: kind === 'generated' ? '/src/nodeagent-chat/nodeAgentLocalAdapter.js' : '/src/features/node-agent/runtime/nodeAgentChatAdapter.ts', key: kind === 'generated' ? 'nodeAgentLocalAdapter' : 'nodeAgentChatAdapter' }); +} +try { + browser = await chromium.launch({ headless: true }); report.browser = browser.version(); report.node = process.version; + for (kind of surfaces) { + const base = await start(kind === 'generated' ? consumer : source); + tool = kind === 'generated' ? '.naTool' : '.na-tool'; bubble = kind === 'generated' ? '.naMsgAssistant .naBubble' : '.na-msg-assistant .na-bubble'; composer = kind === 'generated' ? '.naComposer' : '.na-composer'; + for (const width of [390, 1440]) { + const ctx = await browser.newContext({ viewport: { width, height: width <= 390 ? 844 : 960 }, colorScheme: 'dark' }); + await ctx.route('**/*', route => { const request = route.request(), url = new URL(request.url()); if (report.requests.length < 2000) report.requests.push({ origin: url.origin, path: url.pathname, method: request.method() }); return url.origin === base || ['fonts.googleapis.com', 'fonts.gstatic.com'].includes(url.hostname) ? route.continue() : route.abort(); }); + page = await ctx.newPage(); page.setDefaultTimeout(16000); + const cell = { kind, width, errors: [], checksStart: report.checks.length, capturesStart: report.captures.length }; report.cells.push(cell); page.on('pageerror', error => cell.errors.push(error.message)); + cell.console=[];cell.failedRequests=[];page.on('console', message=>{if(cell.console.length<200&&['error','warning'].includes(message.type()))cell.console.push({type:message.type(),text:message.text(),location:message.location()});});page.on('requestfailed',request=>{if(cell.failedRequests.length<200)cell.failedRequests.push({url:request.url(),failure:request.failure()});}); + await page.goto(base, { waitUntil: 'domcontentloaded', timeout: 45000 }); await page.locator('textarea[name="input"]').waitFor(); + const question = kind === 'generated' ? 'Does the local NodeAgent wedge hold for an MVP?' : 'Does our wedge hold versus Acme, and does the runway model survive 18 months?'; + await snapshot(kind + '-empty-' + width); + await send(question); await idleWithCards(4); await page.waitForTimeout(700); + const earlier = await page.locator(bubble).first().innerText(); const graphBefore = await graph(); + await send(question); await page.locator(tool + '[data-running="true"]').first().waitFor(); + const stop = page.getByRole('button', { name: 'Stop response', exact: true }); const began = Date.now(); + if ([390, 1024, 1920].includes(width)) { await stop.focus(); await page.keyboard.press('Enter'); cell.stopInput = 'keyboard'; } else { await stop.click(); cell.stopInput = 'pointer'; } + await page.getByText('Stopped this response. Completed work is kept.', { exact: true }).waitFor(); cell.stopLatencyMs = Date.now() - began; + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('stopped')), kind + ' native incomplete tool shows stopped ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' Stop preserves earlier completed response ' + width); + const stoppedText = await page.locator(bubble).last().innerText(), stoppedGraph = await graph(); + check(!stoppedText.includes('Done.'), kind + ' stopped response has no fake Done ' + width); + await page.waitForTimeout(750); check(await page.locator(bubble).last().innerText() === stoppedText, kind + ' stopped response remains stable ' + width); assert.deepEqual(await graph(), stoppedGraph); assert.deepEqual(stoppedGraph, graphBefore); + await snapshot(kind + '-stopped-' + width); + check(await page.locator('textarea[name="input"]').evaluate(e => e === document.activeElement), kind + ' Stop retains keyboard continuation focus ' + width); + await page.getByRole('button', { name: 'Retry response', exact: true }).click(); await idleWithCards(8); check(await page.locator(bubble).count() === 2, kind + ' stopped Retry replaces only current response ' + width); + await installPartialFailure(); await send(question); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('failed')), kind + ' partial failure names failed tool ' + width); + await page.waitForTimeout(750); check(await page.evaluate(() => window.proofAttempts.length === 1), kind + ' failed response does not retry automatically ' + width); + await snapshot(kind + '-error-' + width); + const retry = page.getByRole('button', { name: 'Retry response', exact: true }); + await activateRetry(retry, [390, 1024, 1920].includes(width), cell, 'fail-again'); + await page.waitForFunction(() => window.proofAttempts.length >= 2 && window.proofCurrentMessage().status?.type === 'incomplete'); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + await page.waitForTimeout(750); + check(await page.evaluate(() => window.proofAttempts.length === 2), kind + ' first explicit Retry fails once with no automatic or duplicate retry ' + width); + await snapshot(kind + '-error-again-' + width); + if (width === 390) { + cell.enlargement = await page.evaluate(() => { + const targets = [...document.querySelectorAll('*')].filter(e => e.matches('textarea,input,button') || [...e.childNodes].some(n => n.nodeType === 3 && n.textContent.trim())); + const originals = targets.map(e => ({ e, style: e.getAttribute('style'), size: parseFloat(getComputedStyle(e).fontSize) })); + window.proofRestoreText = () => originals.forEach(({ e, style }) => style === null ? e.removeAttribute('style') : e.setAttribute('style', style)); + originals.forEach(({ e, size }) => e.style.fontSize = size * 2 + 'px'); + return { method: 'Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.', elements: originals.length }; + }); + await page.locator('textarea[name="input"]').focus(); + await page.keyboard.press('Shift+Tab'); + check(await retry.evaluate(e => e === document.activeElement), kind + ' enlarged Retry reachable from composer by keyboard ' + width); + const enlarged = await snapshot(kind + '-error-text-200-' + width, null); + cell.enlargement.documentOverflow = enlarged.overflow; + const changedBounds = await page.locator('.na-recovery,.naRecovery,' + composer).evaluateAll(es => es.map(e => ({ class: e.className, left: e.getBoundingClientRect().left, right: e.getBoundingClientRect().right, overflow: e.scrollWidth - e.clientWidth }))); + cell.enlargement.changedBounds = changedBounds; + check(changedBounds.every(b => b.left >= -1 && b.right <= width + 1 && b.overflow <= 1), kind + ' enlarged recovery and composer fit ' + width); + check(await retry.evaluate(e => { const r = e.getBoundingClientRect(); const hit = document.elementFromPoint(r.x + r.width / 2, r.y + r.height / 2); return r.y >= 0 && r.bottom <= innerHeight && (hit === e || e.contains(hit)); }), kind + ' enlarged Retry paints visibly without overlay obstruction ' + width); + check(await page.getByRole('alert').evaluate(e => { const r = e.getBoundingClientRect(); const hit = document.elementFromPoint(r.x + r.width / 2, r.y + r.height / 2); return r.y >= 0 && r.bottom <= innerHeight && (hit === e || e.contains(hit)); }), kind + ' enlarged failure explanation remains visible with Retry ' + width); + await page.evaluate(() => window.proofRestoreText()); + } + await activateRetry(retry, [390, 1024, 1920].includes(width), cell, 'recover'); + await idleWithCards(12); cell.attempts = await page.evaluate(() => window.proofAttempts); + check(cell.attempts.length === 3, kind + ' second explicit Retry recovers once despite repeated activation ' + width); + check(cell.attempts.every(a => typeof a.id === 'string' && a.id.length > 0) && new Set(cell.attempts.map(a => a.id)).size === 3, kind + ' SDK creates a fresh response identity for both retries ' + width); + check(new Set(cell.attempts.map(a => a.parentId)).size === 1, kind + ' retries retain the same user parent ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' recovery retains earlier evidence ' + width); + check(await page.getByRole('alert').count() === 0, kind + ' recovered response removes failure notice ' + width); + await snapshot(kind + '-recovered-' + width); + if (width === 390) { + const begin = Date.now(); for (let i = 0; i < 12; i++) { await send(question); await idleWithCards(4 * (4 + i)); } + cell.accumulation = { additionalTurns: 12, totalResponses: 15, toolCards: 60, elapsedMs: Date.now() - begin }; + await snapshot(kind + '-accumulated-' + width); + } + await page.reload({ waitUntil: 'domcontentloaded' }); await page.locator('textarea[name="input"]').waitFor(); check(await page.locator(tool).count() === 0, kind + ' reload resets browser session honestly ' + width); + await snapshot(kind + '-reloaded-' + width); + check(cell.errors.every(e => e.includes('PROOF FIXTURE: second tool failed')), kind + ' only the intentional adapter fault reaches page errors ' + width); + cell.checksEnd = report.checks.length; cell.capturesEnd = report.captures.length; await ctx.close(); + } + await server.close(); server = null; + } + check(report.requests.every(r => r.method === 'GET'), 'no browser writes or provider requests'); + report.sourceAfter = await hashFiles(source, sourceFiles); report.consumerAfter = await hashFiles(consumer, consumerFiles); assert.deepEqual(report.sourceAfter, report.sourceBefore); assert.deepEqual(report.consumerAfter, report.consumerBefore); + report.passed = true; +} catch (error) { + report.error = String(error.stack ?? error); process.exitCode = 1; + if (page && !page.isClosed()) { await writeFile(path.join(output, 'failure.html'), await page.content()); await page.screenshot({ path: path.join(output, 'failure.png'), caret: 'initial' }).catch(() => {}); } +} finally { + await browser?.close(); await server?.close(); report.finishedAt = new Date().toISOString(); await writeFile(path.join(output, 'report.json'), JSON.stringify(report, null, 2) + '\n'); console.log(JSON.stringify({ output, passed: report.passed, checks: report.checks.length, captures: report.captures.length, error: report.error })); +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.before.html new file mode 100644 index 0000000..75876f5 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.html new file mode 100644 index 0000000..75876f5 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.json new file mode 100644 index 0000000..5c36ef5 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.json @@ -0,0 +1,56 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 29134, + "clientHeight": 29134, + "box": { + "x": 0, + "y": -28290, + "width": 390, + "height": 29133.890625, + "top": -28290, + "right": 390, + "bottom": 843.890625, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 707.890625, + "width": 366, + "height": 128, + "top": 707.890625, + "right": 378, + "bottom": 835.890625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 28354 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.png new file mode 100644 index 0000000..fa7f463 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.before.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.json new file mode 100644 index 0000000..c858f36 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 260, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1180, + "bottom": 960, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1162, + "bottom": 952, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.png new file mode 100644 index 0000000..ec06403 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.before.html new file mode 100644 index 0000000..b885889 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.html new file mode 100644 index 0000000..b885889 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.json new file mode 100644 index 0000000..8ca4c58 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.png new file mode 100644 index 0000000..3c0088c Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.before.html new file mode 100644 index 0000000..fd71d80 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.html new file mode 100644 index 0000000..fd71d80 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.json new file mode 100644 index 0000000..595ee33 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 260, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1180, + "bottom": 959.515625, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1063, + "bottom": 808.515625, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1162, + "bottom": 951.515625, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.png new file mode 100644 index 0000000..5d59c35 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.before.html new file mode 100644 index 0000000..ffe67b6 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.html new file mode 100644 index 0000000..ffe67b6 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.json new file mode 100644 index 0000000..61fd78b --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.png new file mode 100644 index 0000000..812bf3a Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.before.html new file mode 100644 index 0000000..8d7b06c --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.html new file mode 100644 index 0000000..8d7b06c --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.json new file mode 100644 index 0000000..78ce122 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 260, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1180, + "bottom": 959.515625, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1063, + "bottom": 808.515625, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1162, + "bottom": 951.515625, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.png new file mode 100644 index 0000000..de356ba Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.before.html new file mode 100644 index 0000000..579eed1 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.html new file mode 100644 index 0000000..579eed1 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.json new file mode 100644 index 0000000..61fd78b --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.png new file mode 100644 index 0000000..81b515f Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.before.html new file mode 100644 index 0000000..a2e2c11 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.html new file mode 100644 index 0000000..a2e2c11 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.json new file mode 100644 index 0000000..896bf93 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 11658, + "clientHeight": 11658, + "box": { + "x": 0, + "y": -10814, + "width": 390, + "height": 11658.4375, + "top": -10814, + "right": 390, + "bottom": 844.4375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 234, + "clientHeight": 234, + "box": { + "x": 67, + "y": 378.84375, + "width": 296, + "height": 234.59375, + "top": 378.84375, + "right": 363, + "bottom": 613.4375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 192, + "clientHeight": 192, + "box": { + "x": 12, + "y": 644.4375, + "width": 366, + "height": 192, + "top": 644.4375, + "right": 378, + "bottom": 836.4375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 10878 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.png new file mode 100644 index 0000000..806ad4d Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.before.html new file mode 100644 index 0000000..a821c32 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.html new file mode 100644 index 0000000..a821c32 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.json new file mode 100644 index 0000000..ae74cfb --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.json @@ -0,0 +1,56 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3844, + "clientHeight": 3844, + "box": { + "x": 260, + "y": -2884, + "width": 920, + "height": 3843.859375, + "top": -2884, + "right": 1180, + "bottom": 959.859375, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.859375, + "width": 884, + "height": 112, + "top": 839.859375, + "right": 1162, + "bottom": 951.859375, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2948 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.png new file mode 100644 index 0000000..be02aad Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.before.html new file mode 100644 index 0000000..13bc802 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.html new file mode 100644 index 0000000..13bc802 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.json new file mode 100644 index 0000000..1c92a18 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.json @@ -0,0 +1,56 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 5952, + "clientHeight": 5952, + "box": { + "x": 0, + "y": -5108, + "width": 390, + "height": 5951.578125, + "top": -5108, + "right": 390, + "bottom": 843.578125, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 707.578125, + "width": 366, + "height": 128, + "top": 707.578125, + "right": 378, + "bottom": 835.578125, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 5172 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.png new file mode 100644 index 0000000..79a24c1 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.before.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.json new file mode 100644 index 0000000..c858f36 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 260, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1180, + "bottom": 960, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1162, + "bottom": 952, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.png new file mode 100644 index 0000000..ec06403 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.before.html new file mode 100644 index 0000000..b885889 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.html new file mode 100644 index 0000000..b885889 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.json new file mode 100644 index 0000000..8ca4c58 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.png new file mode 100644 index 0000000..3c0088c Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.before.html new file mode 100644 index 0000000..b0d51ab --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.html new file mode 100644 index 0000000..b0d51ab --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.json new file mode 100644 index 0000000..b5f4a7d --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1731, + "clientHeight": 1731, + "box": { + "x": 260, + "y": -723, + "width": 920, + "height": 1731.34375, + "top": -723, + "right": 1180, + "bottom": 1008.34375, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 766.34375, + "width": 730, + "height": 91, + "top": 766.34375, + "right": 1063, + "bottom": 857.34375, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 888.34375, + "width": 884, + "height": 112, + "top": 888.34375, + "right": 1162, + "bottom": 1000.34375, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 787 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.png new file mode 100644 index 0000000..ffd123e Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.before.html new file mode 100644 index 0000000..bf4c4c0 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.html new file mode 100644 index 0000000..bf4c4c0 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.json new file mode 100644 index 0000000..44a0291 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2538, + "clientHeight": 2538, + "box": { + "x": 0, + "y": -1626, + "width": 390, + "height": 2537.640625, + "top": -1626, + "right": 390, + "bottom": 911.640625, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.640625, + "width": 296, + "height": 115, + "top": 629.640625, + "right": 363, + "bottom": 744.640625, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.640625, + "width": 366, + "height": 128, + "top": 775.640625, + "right": 378, + "bottom": 903.640625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1690 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.png new file mode 100644 index 0000000..a4def08 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/report.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/report.json new file mode 100644 index 0000000..55cfc27 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/report.json @@ -0,0 +1,4555 @@ +{ + "reviewerScope": "Independent four-cell actual source/normal installed consumer replay; ordinary Stop, two real incomplete IDs, repeated native keyboard and pointer Retry; original worker scenario retained separately.", + "namedProof": "NODEAGENT-INDEPENDENT-RESPONSE-RECOVERY-01", + "startedAt": "2026-09-05T09:26:44.000Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "passed": true, + "checks": [ + { + "name": "generated-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 390", + "passed": true + }, + { + "name": "generated stopped response remains stable 390", + "passed": true + }, + { + "name": "generated-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "generated partial failure names failed tool 390", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 390", + "passed": true + }, + { + "name": "generated-error-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 390", + "passed": true + }, + { + "name": "generated-error-again-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated enlarged Retry reachable from composer by keyboard 390", + "passed": true + }, + { + "name": "generated-error-text-200-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated enlarged recovery and composer fit 390", + "passed": true + }, + { + "name": "generated enlarged Retry paints visibly without overlay obstruction 390", + "passed": true + }, + { + "name": "generated enlarged failure explanation remains visible with Retry 390", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 390", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 390", + "passed": true + }, + { + "name": "generated retries retain the same user parent 390", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 390", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 390", + "passed": true + }, + { + "name": "generated-recovered-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated-accumulated-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 390", + "passed": true + }, + { + "name": "generated-reloaded-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 390", + "passed": true + }, + { + "name": "generated-empty-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 1440", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 1440", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 1440", + "passed": true + }, + { + "name": "generated stopped response remains stable 1440", + "passed": true + }, + { + "name": "generated-stopped-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 1440", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 1440", + "passed": true + }, + { + "name": "generated partial failure names failed tool 1440", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 1440", + "passed": true + }, + { + "name": "generated-error-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated pointer Retry stays in place before activation fail-again 1440", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 1440", + "passed": true + }, + { + "name": "generated-error-again-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated pointer Retry stays in place before activation recover 1440", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 1440", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 1440", + "passed": true + }, + { + "name": "generated retries retain the same user parent 1440", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 1440", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 1440", + "passed": true + }, + { + "name": "generated-recovered-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 1440", + "passed": true + }, + { + "name": "generated-reloaded-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 1440", + "passed": true + }, + { + "name": "source-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "source stopped response has no fake Done 390", + "passed": true + }, + { + "name": "source stopped response remains stable 390", + "passed": true + }, + { + "name": "source-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "source partial failure names failed tool 390", + "passed": true + }, + { + "name": "source failed response does not retry automatically 390", + "passed": true + }, + { + "name": "source-error-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 390", + "passed": true + }, + { + "name": "source-error-again-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source enlarged Retry reachable from composer by keyboard 390", + "passed": true + }, + { + "name": "source-error-text-200-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source enlarged recovery and composer fit 390", + "passed": true + }, + { + "name": "source enlarged Retry paints visibly without overlay obstruction 390", + "passed": true + }, + { + "name": "source enlarged failure explanation remains visible with Retry 390", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 390", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 390", + "passed": true + }, + { + "name": "source retries retain the same user parent 390", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 390", + "passed": true + }, + { + "name": "source recovered response removes failure notice 390", + "passed": true + }, + { + "name": "source-recovered-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source-accumulated-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 390", + "passed": true + }, + { + "name": "source-reloaded-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 390", + "passed": true + }, + { + "name": "source-empty-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 1440", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 1440", + "passed": true + }, + { + "name": "source stopped response has no fake Done 1440", + "passed": true + }, + { + "name": "source stopped response remains stable 1440", + "passed": true + }, + { + "name": "source-stopped-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 1440", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 1440", + "passed": true + }, + { + "name": "source partial failure names failed tool 1440", + "passed": true + }, + { + "name": "source failed response does not retry automatically 1440", + "passed": true + }, + { + "name": "source-error-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source pointer Retry stays in place before activation fail-again 1440", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 1440", + "passed": true + }, + { + "name": "source-error-again-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source pointer Retry stays in place before activation recover 1440", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 1440", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 1440", + "passed": true + }, + { + "name": "source retries retain the same user parent 1440", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 1440", + "passed": true + }, + { + "name": "source recovered response removes failure notice 1440", + "passed": true + }, + { + "name": "source-recovered-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 1440", + "passed": true + }, + { + "name": "source-reloaded-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 1440", + "passed": true + }, + { + "name": "no browser writes or provider requests", + "passed": true + } + ], + "cells": [ + { + "kind": "generated", + "width": 390, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 0, + "capturesStart": 0, + "console": [], + "failedRequests": [], + "stopInput": "keyboard", + "stopLatencyMs": 320, + "keyboardActivations": [ + { + "phase": "fail-again", + "key": "Enter", + "count": 2, + "method": "Two native key activations; the first may move focus to the existing empty composer." + }, + { + "phase": "recover", + "key": "Enter", + "count": 2, + "method": "Two native key activations; the first may move focus to the existing empty composer." + } + ], + "enlargement": { + "method": "Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.", + "elements": 115, + "documentOverflow": 0, + "changedBounds": [ + { + "class": "naRecovery", + "left": 67, + "right": 363, + "overflow": 0 + }, + { + "class": "naComposer", + "left": 30, + "right": 360, + "overflow": 0 + } + ] + }, + "attempts": [ + { + "id": "N5YdQQm", + "parentId": "z56WHCW", + "injectedFailure": true + }, + { + "id": "WfwBadG", + "parentId": "z56WHCW", + "injectedFailure": true + }, + { + "id": "VMn2btR", + "parentId": "z56WHCW", + "injectedFailure": false + } + ], + "accumulation": { + "additionalTurns": 12, + "totalResponses": 15, + "toolCards": 60, + "elapsedMs": 21123 + }, + "checksEnd": 28, + "capturesEnd": 8 + }, + { + "kind": "generated", + "width": 1440, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 28, + "capturesStart": 8, + "console": [], + "failedRequests": [], + "stopInput": "pointer", + "stopLatencyMs": 252, + "pointerActivations": [ + { + "phase": "fail-again", + "down": { + "x": 333, + "y": 764.515625, + "width": 130.296875, + "height": 44 + }, + "up": { + "x": 333, + "y": 764.515625, + "width": 130.296875, + "height": 44 + } + }, + { + "phase": "recover", + "down": { + "x": 333, + "y": 764.515625, + "width": 130.296875, + "height": 44 + }, + "up": { + "x": 333, + "y": 764.515625, + "width": 130.296875, + "height": 44 + } + } + ], + "attempts": [ + { + "id": "uloluNu", + "parentId": "K0u0KWd", + "injectedFailure": true + }, + { + "id": "DgU4g24", + "parentId": "K0u0KWd", + "injectedFailure": true + }, + { + "id": "kaPHhre", + "parentId": "K0u0KWd", + "injectedFailure": false + } + ], + "checksEnd": 52, + "capturesEnd": 14 + }, + { + "kind": "source", + "width": 390, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 52, + "capturesStart": 14, + "console": [ + { + "type": "warning", + "text": "[.WebGL-0x5e54024a4800]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels", + "location": { + "url": "http://127.0.0.1:55794/", + "line": 0, + "column": 0, + "lineNumber": 0, + "columnNumber": 0 + } + }, + { + "type": "warning", + "text": "[.WebGL-0x5e54001bc200]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels", + "location": { + "url": "http://127.0.0.1:55794/", + "line": 0, + "column": 0, + "lineNumber": 0, + "columnNumber": 0 + } + }, + { + "type": "warning", + "text": "[.WebGL-0x5e54001bbc00]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels", + "location": { + "url": "http://127.0.0.1:55794/", + "line": 0, + "column": 0, + "lineNumber": 0, + "columnNumber": 0 + } + }, + { + "type": "warning", + "text": "[.WebGL-0x5e54024a4800]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels (this message will no longer repeat)", + "location": { + "url": "http://127.0.0.1:55794/", + "line": 0, + "column": 0, + "lineNumber": 0, + "columnNumber": 0 + } + } + ], + "failedRequests": [], + "stopInput": "keyboard", + "stopLatencyMs": 825, + "keyboardActivations": [ + { + "phase": "fail-again", + "key": "Enter", + "count": 2, + "method": "Two native key activations; the first may move focus to the existing empty composer." + }, + { + "phase": "recover", + "key": "Enter", + "count": 2, + "method": "Two native key activations; the first may move focus to the existing empty composer." + } + ], + "enlargement": { + "method": "Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.", + "elements": 143, + "documentOverflow": 21, + "changedBounds": [ + { + "class": "na-recovery", + "left": 63, + "right": 363, + "overflow": 0 + }, + { + "class": "na-composer", + "left": 12, + "right": 378, + "overflow": 0 + } + ] + }, + "attempts": [ + { + "id": "41m1rCu", + "parentId": "SXgKNe1", + "injectedFailure": true + }, + { + "id": "jNbZXFk", + "parentId": "SXgKNe1", + "injectedFailure": true + }, + { + "id": "HJCvzSI", + "parentId": "SXgKNe1", + "injectedFailure": false + } + ], + "accumulation": { + "additionalTurns": 12, + "totalResponses": 15, + "toolCards": 60, + "elapsedMs": 29525 + }, + "checksEnd": 80, + "capturesEnd": 22 + }, + { + "kind": "source", + "width": 1440, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 80, + "capturesStart": 22, + "console": [], + "failedRequests": [], + "stopInput": "pointer", + "stopLatencyMs": 355, + "pointerActivations": [ + { + "phase": "fail-again", + "down": { + "x": 199, + "y": 774.984375, + "width": 119.90625, + "height": 44 + }, + "up": { + "x": 199, + "y": 774.984375, + "width": 119.90625, + "height": 44 + } + }, + { + "phase": "recover", + "down": { + "x": 199, + "y": 774.984375, + "width": 119.90625, + "height": 44 + }, + "up": { + "x": 199, + "y": 774.984375, + "width": 119.90625, + "height": 44 + } + } + ], + "attempts": [ + { + "id": "pXjOfpd", + "parentId": "VpRVGil", + "injectedFailure": true + }, + { + "id": "bQbDHDQ", + "parentId": "VpRVGil", + "injectedFailure": true + }, + { + "id": "yepnJAz", + "parentId": "VpRVGil", + "injectedFailure": false + } + ], + "checksEnd": 104, + "capturesEnd": 28 + } + ], + "captures": [ + { + "name": "generated-empty-390", + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-390", + "pngSha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2538, + "clientHeight": 2538, + "box": { + "x": 0, + "y": -1626, + "width": 390, + "height": 2537.640625, + "top": -1626, + "right": 390, + "bottom": 911.640625, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.640625, + "width": 296, + "height": 115, + "top": 629.640625, + "right": 363, + "bottom": 744.640625, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.640625, + "width": 366, + "height": 128, + "top": 775.640625, + "right": 378, + "bottom": 903.640625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1690 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-390", + "pngSha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-390", + "pngSha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-text-200-390", + "pngSha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 11658, + "clientHeight": 11658, + "box": { + "x": 0, + "y": -10814, + "width": 390, + "height": 11658.4375, + "top": -10814, + "right": 390, + "bottom": 844.4375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 234, + "clientHeight": 234, + "box": { + "x": 67, + "y": 378.84375, + "width": 296, + "height": 234.59375, + "top": 378.84375, + "right": 363, + "bottom": 613.4375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 192, + "clientHeight": 192, + "box": { + "x": 12, + "y": 644.4375, + "width": 366, + "height": 192, + "top": 644.4375, + "right": 378, + "bottom": 836.4375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 10878 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-390", + "pngSha256": "33ee4ebc7c01a3f826e4b66b873fa57610fce8cd9120df361172a40c3def033d", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 5952, + "clientHeight": 5952, + "box": { + "x": 0, + "y": -5108, + "width": 390, + "height": 5951.578125, + "top": -5108, + "right": 390, + "bottom": 843.578125, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 707.578125, + "width": 366, + "height": 128, + "top": 707.578125, + "right": 378, + "bottom": 835.578125, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 5172 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-accumulated-390", + "pngSha256": "58ba9e90d8ee08e3e4de36315520230539a85f7a6f7aa00c00d551d1faeca633", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 29134, + "clientHeight": 29134, + "box": { + "x": 0, + "y": -28290, + "width": 390, + "height": 29133.890625, + "top": -28290, + "right": 390, + "bottom": 843.890625, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 707.890625, + "width": 366, + "height": 128, + "top": 707.890625, + "right": 378, + "bottom": 835.890625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 28354 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-390", + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-1440", + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 260, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1180, + "bottom": 960, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1162, + "bottom": 952, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-1440", + "pngSha256": "83264c4288a5f0b7240a757a12571f7f292902ea890b426b9f4b5318dd3a85c7", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1731, + "clientHeight": 1731, + "box": { + "x": 260, + "y": -723, + "width": 920, + "height": 1731.34375, + "top": -723, + "right": 1180, + "bottom": 1008.34375, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 766.34375, + "width": 730, + "height": 91, + "top": 766.34375, + "right": 1063, + "bottom": 857.34375, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 888.34375, + "width": 884, + "height": 112, + "top": 888.34375, + "right": 1162, + "bottom": 1000.34375, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 787 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-1440", + "pngSha256": "0b0b4496efe9ccd09e844a4e75afb7ff74e37dc54ce08f64911ee322ed830d60", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 260, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1180, + "bottom": 959.515625, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1063, + "bottom": 808.515625, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1162, + "bottom": 951.515625, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-1440", + "pngSha256": "07765375ec1a2f2786cd335ef09b11e6daf43b5625483e646f3c722a6f5b291b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 260, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1180, + "bottom": 959.515625, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1063, + "bottom": 808.515625, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1162, + "bottom": 951.515625, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-1440", + "pngSha256": "a11ca95732178919c8ec6f957d8c8ce1e30376525fda5a4aace5b1870ac31dd2", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3844, + "clientHeight": 3844, + "box": { + "x": 260, + "y": -2884, + "width": 920, + "height": 3843.859375, + "top": -2884, + "right": 1180, + "bottom": 959.859375, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.859375, + "width": 884, + "height": 112, + "top": 839.859375, + "right": 1162, + "bottom": 951.859375, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2948 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-1440", + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 260, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1180, + "bottom": 960, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1162, + "bottom": 952, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-390", + "pngSha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-390", + "pngSha256": "13807fdd6b2fa5cbe04e46312872828cc78170fea83e1487ca4c9240544b486e", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1675, + "scrollHeight": 2077, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.59375, + "width": 300, + "height": 111.78125, + "top": 178.59375, + "right": 363, + "bottom": 290.375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-390", + "pngSha256": "5a3f4eff6c72d24b380e02db272ed7e151f21a5f4abc16034641e5d16dc05e6c", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-390", + "pngSha256": "a3b5e06697c6cfaac7980233f8bd581d2613c4cc1a397c39917428cb0ba52c9d", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-text-200-390", + "pngSha256": "87ca877089da73e5ff062bff0cfce8b1d68ed1cb3dc929449977781059c9555f", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 8764, + "scrollHeight": 9166, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 166, + "clientHeight": 166, + "box": { + "x": 63, + "y": 54.75, + "width": 300, + "height": 166.59375, + "top": 54.75, + "right": 363, + "bottom": 221.34375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 196, + "clientHeight": 196, + "box": { + "x": 12, + "y": 251.34375, + "width": 366, + "height": 196.28125, + "top": 251.34375, + "right": 378, + "bottom": 447.625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 21, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-390", + "pngSha256": "15f0d2f858fc3afba0b0b9b1767d1f9d60b4ce86dc47b589c16b24b34e58717a", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 4273, + "scrollHeight": 4675, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-accumulated-390", + "pngSha256": "e58ba2d0b8b367e1dc324bd007529c624f97d26804cbc9e6cd9788c543352e6f", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 22365, + "scrollHeight": 22767, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.609375, + "width": 366, + "height": 128.09375, + "top": 319.609375, + "right": 378, + "bottom": 447.703125, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-390", + "pngSha256": "299c36560e79eeaadea88eb6c5d512f2e8e3f38f89bd6e991606fe6f8e2a1d19", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-1440", + "pngSha256": "a6c2b56f63f22462a80c912197c44667a82ed86b39441d288576277765e809d8", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-1440", + "pngSha256": "832a7ab40c6f832eec9611ce6cfb38e3cd6a22be4e38630fb7e4a5b886aad3ad", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 738, + "scrollHeight": 1644, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.296875, + "width": 659.90625, + "height": 89.390625, + "top": 729.296875, + "right": 858.90625, + "bottom": 818.6875, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.6875, + "width": 784, + "height": 103.046875, + "top": 848.6875, + "right": 932, + "bottom": 951.734375, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-1440", + "pngSha256": "3cb9414cd86a76b35ca1908bd64ac61013bbf4557aab662dfe7faa57426a79a2", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 858.90625, + "bottom": 818.984375, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-1440", + "pngSha256": "a53b50f14bb3384a630ae6119994336a55949d1432011fd1b81b608775218e22", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 858.90625, + "bottom": 818.984375, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-1440", + "pngSha256": "7eb2085accc67019da7b5693afe4907c008454289880ffb8ecac250834aad101", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2771, + "scrollHeight": 3677, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.546875, + "width": 784, + "height": 103.046875, + "top": 848.546875, + "right": 932, + "bottom": 951.59375, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-1440", + "pngSha256": "af46f2737897dc01909a26e05dfcc40315a367b28e8cd459750e635793859608", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:58796", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58796", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55794", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "sourceAfter": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerAfter": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "finishedAt": "2026-09-05T09:28:37.485Z" +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.before.html new file mode 100644 index 0000000..6097065 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.html new file mode 100644 index 0000000..6097065 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.json new file mode 100644 index 0000000..78981d3 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.json @@ -0,0 +1,60 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 22365, + "scrollHeight": 22767, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.609375, + "width": 366, + "height": 128.09375, + "top": 319.609375, + "right": 378, + "bottom": 447.703125, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.png new file mode 100644 index 0000000..467f5ea Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.before.html new file mode 100644 index 0000000..f426fc4 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.html new file mode 100644 index 0000000..f426fc4 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.json new file mode 100644 index 0000000..8c9b559 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.png new file mode 100644 index 0000000..d8cfef3 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.before.html new file mode 100644 index 0000000..e8fe833 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.html new file mode 100644 index 0000000..e8fe833 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.json new file mode 100644 index 0000000..e6697fb --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.png new file mode 100644 index 0000000..f02e77c Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.before.html new file mode 100644 index 0000000..f44cbb0 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.html new file mode 100644 index 0000000..f44cbb0 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.json new file mode 100644 index 0000000..f97cfce --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 858.90625, + "bottom": 818.984375, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.png new file mode 100644 index 0000000..e7be2ca Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-390.before.html new file mode 100644 index 0000000..72911b6 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-390.html new file mode 100644 index 0000000..72911b6 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-390.json new file mode 100644 index 0000000..c27b26c --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-390.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-390.png new file mode 100644 index 0000000..d6deea3 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.before.html new file mode 100644 index 0000000..0f95b54 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.html new file mode 100644 index 0000000..0f95b54 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.json new file mode 100644 index 0000000..48cb579 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 858.90625, + "bottom": 818.984375, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.png new file mode 100644 index 0000000..f070d28 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.before.html new file mode 100644 index 0000000..3295c23 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.html new file mode 100644 index 0000000..3295c23 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.json new file mode 100644 index 0000000..c27b26c --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.png new file mode 100644 index 0000000..325f511 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.before.html new file mode 100644 index 0000000..b7c5854 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.html new file mode 100644 index 0000000..b7c5854 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.json new file mode 100644 index 0000000..feb58b5 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 8764, + "scrollHeight": 9166, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 166, + "clientHeight": 166, + "box": { + "x": 63, + "y": 54.75, + "width": 300, + "height": 166.59375, + "top": 54.75, + "right": 363, + "bottom": 221.34375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 196, + "clientHeight": 196, + "box": { + "x": 12, + "y": 251.34375, + "width": 366, + "height": 196.28125, + "top": 251.34375, + "right": 378, + "bottom": 447.625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 21, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.png new file mode 100644 index 0000000..4c7b549 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.before.html new file mode 100644 index 0000000..6503ecc --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.html new file mode 100644 index 0000000..6503ecc --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.json new file mode 100644 index 0000000..0def90a --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.json @@ -0,0 +1,60 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2771, + "scrollHeight": 3677, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.546875, + "width": 784, + "height": 103.046875, + "top": 848.546875, + "right": 932, + "bottom": 951.59375, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.png new file mode 100644 index 0000000..7ee7c73 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.before.html new file mode 100644 index 0000000..d32ee13 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.html new file mode 100644 index 0000000..d32ee13 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.json new file mode 100644 index 0000000..e7c3748 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.json @@ -0,0 +1,60 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 4273, + "scrollHeight": 4675, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.png new file mode 100644 index 0000000..33a363b Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.before.html new file mode 100644 index 0000000..f426fc4 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.html new file mode 100644 index 0000000..f426fc4 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.json new file mode 100644 index 0000000..8c9b559 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.png new file mode 100644 index 0000000..6044d0f Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.before.html new file mode 100644 index 0000000..e8fe833 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.html new file mode 100644 index 0000000..e8fe833 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.json new file mode 100644 index 0000000..e6697fb --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.png new file mode 100644 index 0000000..e9886d0 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.before.html new file mode 100644 index 0000000..0290bbd --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.html new file mode 100644 index 0000000..0290bbd --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.json new file mode 100644 index 0000000..10b3470 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 738, + "scrollHeight": 1644, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.296875, + "width": 659.90625, + "height": 89.390625, + "top": 729.296875, + "right": 858.90625, + "bottom": 818.6875, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.6875, + "width": 784, + "height": 103.046875, + "top": 848.6875, + "right": 932, + "bottom": 951.734375, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.png new file mode 100644 index 0000000..49e2bdb Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.before.html new file mode 100644 index 0000000..0eab69c --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.html new file mode 100644 index 0000000..0eab69c --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.json new file mode 100644 index 0000000..f1f8621 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1675, + "scrollHeight": 2077, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.59375, + "width": 300, + "height": 111.78125, + "top": 178.59375, + "right": 363, + "bottom": 290.375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.png new file mode 100644 index 0000000..5810a06 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/capture-binding-check-before-explicit-utf8.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/capture-binding-check-before-explicit-utf8.json new file mode 100644 index 0000000..8f99191 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/capture-binding-check-before-explicit-utf8.json @@ -0,0 +1,1199 @@ +{ + "reports": [ + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "reportSha256": "76dd8ca1416225bd0f9abe0b524ced0299a86c975fb839cafa18551d04759f24", + "checks": 289, + "captures": 76, + "sourceConsumerBeforeAfterExact": true + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "reportSha256": "f52dbcec03ade588cf9c315a5ca94af7866b9426af39670afea0e3021889a36d", + "checks": 105, + "captures": 28, + "sourceConsumerBeforeAfterExact": true + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01", + "reportSha256": "aad45e4f95205692f1c0e65f335d4c3d0ffbe5d3e2ff53153c239618dc0d9423", + "checks": 25, + "captures": 6, + "sourceConsumerBeforeAfterExact": true + } + ], + "failures": [ + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-empty-320", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 320, + 844 + ], + "viewport": { + "width": 320, + "height": 844 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-stopped-320", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 320, + 844 + ], + "viewport": { + "width": 320, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-error-320", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 320, + 844 + ], + "viewport": { + "width": 320, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-error-again-320", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 320, + 844 + ], + "viewport": { + "width": 320, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-recovered-320", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 320, + 844 + ], + "viewport": { + "width": 320, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-reloaded-320", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 320, + 844 + ], + "viewport": { + "width": 320, + "height": 844 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-empty-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-stopped-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-error-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-error-again-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-error-text-200-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-recovered-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-accumulated-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-reloaded-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-empty-768", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 768, + 960 + ], + "viewport": { + "width": 768, + "height": 960 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-stopped-768", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 768, + 960 + ], + "viewport": { + "width": 768, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-error-768", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 768, + 960 + ], + "viewport": { + "width": 768, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-error-again-768", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 768, + 960 + ], + "viewport": { + "width": 768, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-recovered-768", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 768, + 960 + ], + "viewport": { + "width": 768, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-reloaded-768", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 768, + 960 + ], + "viewport": { + "width": 768, + "height": 960 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-empty-1024", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1024, + 960 + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-stopped-1024", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1024, + 960 + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-error-1024", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1024, + 960 + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-error-again-1024", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1024, + 960 + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-recovered-1024", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1024, + 960 + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-reloaded-1024", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1024, + 960 + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-empty-1440", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1440, + 960 + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-stopped-1440", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1440, + 960 + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-error-1440", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1440, + 960 + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-error-again-1440", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1440, + 960 + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-recovered-1440", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1440, + 960 + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-reloaded-1440", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1440, + 960 + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-empty-1920", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1920, + 960 + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-stopped-1920", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1920, + 960 + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-error-1920", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1920, + 960 + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-error-again-1920", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1920, + 960 + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-recovered-1920", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1920, + 960 + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "capture": "source-reloaded-1920", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1920, + 960 + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-empty-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-stopped-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-error-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-error-again-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-error-text-200-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-recovered-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-accumulated-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-reloaded-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-empty-1440", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1440, + 960 + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-stopped-1440", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1440, + 960 + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-error-1440", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1440, + 960 + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-error-again-1440", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1440, + 960 + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-recovered-1440", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1440, + 960 + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "capture": "source-reloaded-1440", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 1440, + 960 + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01", + "capture": "source-empty-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text", + "buttons" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01", + "capture": "source-stopped-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01", + "capture": "source-late-stop-recovered-390", + "checks": { + "pngHash": true, + "stateExact": false, + "DOMExact": true, + "dimensions": true + }, + "pngSize": [ + 390, + 844 + ], + "viewport": { + "width": 390, + "height": 844 + }, + "stateKeysDiffer": [ + "text" + ] + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/capture-binding-check.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/capture-binding-check.json new file mode 100644 index 0000000..b3fc331 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/capture-binding-check.json @@ -0,0 +1,27 @@ +{ + "reports": [ + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03", + "reportSha256": "76dd8ca1416225bd0f9abe0b524ced0299a86c975fb839cafa18551d04759f24", + "checks": 289, + "captures": 76, + "sourceConsumerBeforeAfterExact": true + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01", + "reportSha256": "f52dbcec03ade588cf9c315a5ca94af7866b9426af39670afea0e3021889a36d", + "checks": 105, + "captures": 28, + "sourceConsumerBeforeAfterExact": true + }, + { + "folder": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01", + "reportSha256": "aad45e4f95205692f1c0e65f335d4c3d0ffbe5d3e2ff53153c239618dc0d9423", + "checks": 25, + "captures": 6, + "sourceConsumerBeforeAfterExact": true + } + ], + "failures": [], + "judgeSetupCorrection": "Prior state comparison decoded UTF-8 sidecars with the Windows cp1252 default while decoding reports as UTF-8. That checker-only false mismatch is retained in capture-binding-check-before-explicit-utf8.json. Raw source evidence unchanged." +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/checks.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/checks.json new file mode 100644 index 0000000..01b66b9 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/checks.json @@ -0,0 +1,34 @@ +[ + { + "name": "tests", + "command": [ + "npm.cmd", + "test" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exitCode": 0, + "seconds": 1.890999999945052 + }, + { + "name": "typecheck", + "command": [ + "npm.cmd", + "run", + "typecheck" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exitCode": 0, + "seconds": 2.26500000001397 + }, + { + "name": "tours", + "command": [ + "npm.cmd", + "run", + "tours:validate" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exitCode": 0, + "seconds": 0.4690000000409782 + } +] diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/custody-after.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/custody-after.json new file mode 100644 index 0000000..ab6fc7b --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/custody-after.json @@ -0,0 +1,5197 @@ +{ + "at": "2026-09-05T09:32:02.464112+00:00", + "phase": "after", + "state": { + "head": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "index": "32423ff3a8a3cd745ac285ce51730b139a2344c14a40a67b43ace4dfbc271a51", + "refs": "66c33b755dd5ab353501b08720e282584bbfc643331375bb49b45e09fdb45007", + "status": "7bc88e40de9c3bf6a846190738ef6e299a80b994252d643a07e718e414064512" + }, + "receiptSha256": "dc94f74670c577ebf98619e36e60060bb9889341fdb3728b79be1449ea00062e", + "authoredDigest": "fe828a524641e727499e575836929cfc38130bcf873693a061173c68485b5e10", + "sourceProofDigest": "a913d12a999e90e4017dca957b69ad7a6d6a5ea671c2ab562b8ce5b3f46939b9", + "authoredPaths": { + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + "HANDOFF.md": "03513bef1b7e6ef34c285472e7701b959f18352241f3e5fe87ac790020eb50be", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e" + }, + "portableManifestSha256": "c3601b7021e3d7d5a1b233b620f6952422b98828de791492de393e4776dc8210", + "portableBindings": { + "evidence/current-consumer-20260905/README.md": { + "sha256": "dd25393b9d34f1635c50a3911603e98b57e658263673b6268be2aedfe8235b80", + "bytes": 3505 + }, + "evidence/current-consumer-20260905/historical/browser-before-03/report.json": { + "sha256": "509f4f14ba05b96ae17fa2b8d23d25ab11c5a66975756d128622dc681ccdcf8c", + "bytes": 31866 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.html": { + "sha256": "7cee54fd73c476992d29dbd03cd53be84978ffd5ce026fcd0c79df6c92653d5d", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.png": { + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "bytes": 48450 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-01/generated-error-text-200-390.png": { + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "bytes": 48450 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-01/report.json": { + "sha256": "e36764e37db2649fbef0908e65208b4fbf309a63e949b8b0a5a0cecad796469d", + "bytes": 84861 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.html": { + "sha256": "7bef1ff5cd4ed944b73e92031c37bb3ad285fde2062d33e861faa950dd9fa5cf", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.png": { + "sha256": "cb45fbca1d0d5a23a76c726235a0f53f68b1e82b2959528c156fe518b6885dee", + "bytes": 75461 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-02/generated-error-text-200-390.png": { + "sha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "bytes": 49228 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-02/report.json": { + "sha256": "ba38b0cc4391635b1aca9b5affd8570951ade9fe72c36ad94ca820d123b73835", + "bytes": 320226 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-02/source-error-text-200-390.png": { + "sha256": "193b20dd5900f7101a9707bab577835645a619596a2b5d76489decf915f42bb8", + "bytes": 75482 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.html": { + "sha256": "8b20b95d6b8854a3706d1c600d4f4230aed58a36c670e23b3149ab1d560c040b", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.png": { + "sha256": "619972dd54365a8402662a7f84336792d6eaca4333354336656acea3b30cb56c", + "bytes": 45131 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-01/report.json": { + "sha256": "3e5149702e84d223bc8d005d25bd455a3bb135e189fe9889a862c22a1025fa2f", + "bytes": 39838 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.html": { + "sha256": "65071a02e617be4861abc4c7ce5e1b2289be1a9dc7ba3735b20c57c70c5f458c", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.png": { + "sha256": "3fe4ba8d90b13c14affaffdf358a1339f898335c1f17ab767d0ff7c2f7e14a93", + "bytes": 47665 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-02/report.json": { + "sha256": "25790c3eff05cc321bb7db465c0c17b66953e97d6f9d534518e611765985da40", + "bytes": 49152 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.html": { + "sha256": "d394a476f68e2ab347209a80f2ff56480030eefefda0f5c1b9c7ec4657ef502a", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.png": { + "sha256": "2e59ebc5923b6a4372d35ce13edd12c09e95acaa1c8a12c356c8a6604d117485", + "bytes": 47537 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-03/report.json": { + "sha256": "628c9d434f0f04fde80d6c26f518c94f9127c901addfc63d5c2441ebb70799c0", + "bytes": 49186 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.html": { + "sha256": "fa164c86bc3c7e205e58ef9b6b2c587fd210333d94949435957d028caeea343e", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.png": { + "sha256": "3fe4ba8d90b13c14affaffdf358a1339f898335c1f17ab767d0ff7c2f7e14a93", + "bytes": 47665 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-04/report.json": { + "sha256": "07523b9fc8936cf10b2b9886ee103d0092ae8962c6eec27b4e54233a316c1e70", + "bytes": 49186 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.html": { + "sha256": "aad2ce2325693e765154b80d05bbd655a769549f5d97f46e86ab9a7faf75f3ec", + "bytes": 105248 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.png": { + "sha256": "5a405fbcc7753997cbe4a830b64d4d7d6b032295891d39b781c9fe0d26d33586", + "bytes": 77272 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/report.json": { + "sha256": "5d3f540caf94cb8b1e8fcc824f24008a00a688f394280c044d9558e68181793f", + "bytes": 152063 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/source-text-200-390.png": { + "sha256": "b9f14a4ecc6115041985c2074697fc0220d0f135a30a93e9b609c049d232d796", + "bytes": 77313 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-06/report.json": { + "sha256": "fc18836185b6b326b94fe7a13e209c835fbac3de843638c669e46ded045cca9c", + "bytes": 359511 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-06/source-error-text-200-390.png": { + "sha256": "56b259eda21b5dfaf35dc3cf4fa1805de6647b760a8a572b778fd63471888c5a", + "bytes": 71011 + }, + "evidence/current-consumer-20260905/historical/first-submit-dependency-comparison-01/report.json": { + "sha256": "99693bc6140469572d3821b30642b6d3a395c45f12a96a0a8ebd8dd0044aaf1c", + "bytes": 64220 + }, + "evidence/current-consumer-20260905/historical/first-submit-diagnosis-01/report.json": { + "sha256": "27741aacc74b04bb19380e0c6354f20d8db768414689edcee557674d7567cfa8", + "bytes": 85904 + }, + "evidence/current-consumer-20260905/historical/locked-browser-01/failure.html": { + "sha256": "e412f7230502f3d6f735a0272e0145032d6e49b6d3bbdbc4517213aa28d724c7", + "bytes": 13141 + }, + "evidence/current-consumer-20260905/historical/locked-browser-01/failure.png": { + "sha256": "5dce8e4f033659ce22a46d99519690d746b5470cbc4dee32fa11557eded7ab93", + "bytes": 33108 + }, + "evidence/current-consumer-20260905/historical/locked-browser-01/report.json": { + "sha256": "c1c9e0f1a4b1b08b3e25d672d76bf3f0954dab40ddcdbf4e8fa6028ef7a2eda3", + "bytes": 93753 + }, + "evidence/current-consumer-20260905/operator/D3_SOURCE_BEFORE_BINDINGS.json": { + "sha256": "11866c9e365fe8617a32e726c9d038d4b81392ba19ab25ae8c88f24c5d691b6b", + "bytes": 1140 + }, + "evidence/current-consumer-20260905/operator/browser-before-01-command.json": { + "sha256": "f3349585a17450163e6b1ee081b3f2af6e37fca0e775a8ea207dbb3d368383f1", + "bytes": 366 + }, + "evidence/current-consumer-20260905/operator/browser-before-01-harness.mjs.txt": { + "sha256": "364cfa15c6b176407b7afe8caec2f555f718ca09886e86d0596d481031a48a02", + "bytes": 12067 + }, + "evidence/current-consumer-20260905/operator/browser-before-01.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/browser-before-01.stdout": { + "sha256": "a9d110ed6d6282c7238008f2c51a5a544121b91f2830a629ee7e5cd3af1c8f69", + "bytes": 753 + }, + "evidence/current-consumer-20260905/operator/browser-before-02-command.json": { + "sha256": "7a3a79f21864cec996ae8e838057c3431ae1a7c73a76be6746f3dd1f565c97c3", + "bytes": 364 + }, + "evidence/current-consumer-20260905/operator/browser-before-02-command.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/browser-before-02-command.stdout": { + "sha256": "3ee598d331df710a361076a47c5591cb83863ef2220f62015986b17c28cef06f", + "bytes": 1003 + }, + "evidence/current-consumer-20260905/operator/browser-before-02-harness.mjs.txt": { + "sha256": "211987d2ea5c21337226155501cf79a665db0ee88f05e0adf71d5d2704eeb54e", + "bytes": 12356 + }, + "evidence/current-consumer-20260905/operator/browser-before-03-command.json": { + "sha256": "ada89b022af7aa6ec91acb627b6882b0d7927702fd7893dbdb7975ef546f68fb", + "bytes": 365 + }, + "evidence/current-consumer-20260905/operator/browser-before-03-command.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/browser-before-03-command.stdout": { + "sha256": "1c6472a5aaea3e4e56e36d017b4bfe5844d3d0709aed0f276e328b839b936d1d", + "bytes": 533 + }, + "evidence/current-consumer-20260905/operator/browser-before-03-harness.mjs.txt": { + "sha256": "1f74cbdf16dd807444c0986cc65063732b273c49eb48c260dabedbaa4d6e0c4d", + "bytes": 12436 + }, + "evidence/current-consumer-20260905/operator/canonical-audit-production.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/canonical-audit-production.stdout": { + "sha256": "63c0065f6900d02e8b63ffecedfe68547d17db39d991d7f67869cbf3abce2e49", + "bytes": 366 + }, + "evidence/current-consumer-20260905/operator/canonical-build.stderr": { + "sha256": "aa9b7207d2d2d42fbf4e013331ee76fc39b9b042505b38551893c1f60f35b63a", + "bytes": 342 + }, + "evidence/current-consumer-20260905/operator/canonical-build.stdout": { + "sha256": "dcfd2e31e77842b1f9278c39d812c5433a5f87b4090579b40019e649e8052722", + "bytes": 604 + }, + "evidence/current-consumer-20260905/operator/canonical-checks.json": { + "sha256": "36fefaf8774eb0b53302640f6779e09bca9293d0c01b34d53a93d1758974299d", + "bytes": 2804 + }, + "evidence/current-consumer-20260905/operator/canonical-tests.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/canonical-tests.stdout": { + "sha256": "b939a31d2f0eb38e23b00706c1d8216c85d1571302137207f611de7b98072cf7", + "bytes": 1253 + }, + "evidence/current-consumer-20260905/operator/capture-generated-d3-before-01.mjs.txt": { + "sha256": "ca239549202a427b9f4a6bccf05fe4646876801f73f8d05f964357cde017ce1d", + "bytes": 9017 + }, + "evidence/current-consumer-20260905/operator/capture-generated-d3-before.mjs.txt": { + "sha256": "fade830ebb8a90c4bb82c1a5fcb0f9f27f5a7660904ac39b4a86184a95bbb61d", + "bytes": 9076 + }, + "evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after-syntax-failure.mjs.txt": { + "sha256": "d668a20bdbdd2e0d660e7d93a6fd74e2db99e9c6841070dc910eed91764a3c22", + "bytes": 7609 + }, + "evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after.mjs.txt": { + "sha256": "c2ca4153af05e4e128d6cd6fb38258e6dc9827f48dafa13f5119f8aa40d6af4b", + "bytes": 7608 + }, + "evidence/current-consumer-20260905/operator/capture-source-d3-before-01.mjs.txt": { + "sha256": "a1039f2f9f4b737c7d2b055325aee9f54ffb022e682d71c1bddc7f0edd860f7a", + "bytes": 8554 + }, + "evidence/current-consumer-20260905/operator/capture-source-d3-before-02.mjs.txt": { + "sha256": "f6c05c18f4577a14cb1adec9b403b6f9eeb0e6de28f47cbf792b5676e8159e14", + "bytes": 8962 + }, + "evidence/current-consumer-20260905/operator/capture-source-d3-before.mjs.txt": { + "sha256": "5a50d40dbe8380cc366c46c289cb67c06f3bbee4de8b867d651f0a9efc3cd539", + "bytes": 8964 + }, + "evidence/current-consumer-20260905/operator/capture-source-d3-matched-after.mjs.txt": { + "sha256": "a358ba9166caae7baf5b59e22f598817dbb472854b16b0bcdd8b154b62ee1113", + "bytes": 7015 + }, + "evidence/current-consumer-20260905/operator/d3-citation-before/.tours/01-primary-user-flow.tour": { + "sha256": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + "bytes": 4743 + }, + "evidence/current-consumer-20260905/operator/d3-citation-before/docs/START_HERE.md.txt": { + "sha256": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "bytes": 17384 + }, + "evidence/current-consumer-20260905/operator/d3-citation-correctness-addendum.json": { + "sha256": "82c548892018bec4225826ab29d9f7e989fe04dbbd6fba021715fd516cc0da32", + "bytes": 923 + }, + "evidence/current-consumer-20260905/operator/d3-consumer-02-commands.json": { + "sha256": "b0296d34c5fecec7f11e0b16ee1ee1ff9b9ca340021a2e3864ef64df0fdbaabb", + "bytes": 1831 + }, + "evidence/current-consumer-20260905/operator/d3-consumer-preservation.json": { + "sha256": "69a91e38f0001e57b2effbd7988d55302365f878235e81d81e328b7f591437df", + "bytes": 5441 + }, + "evidence/current-consumer-20260905/operator/d3-corrected-tours-validate.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-corrected-tours-validate.stdout": { + "sha256": "8b91eaa9d523522537255352c11c4861181d47d8559a7cfee65ebd89e731476a", + "bytes": 188 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-css-before.txt": { + "sha256": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "bytes": 7126 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.command.json": { + "sha256": "9add5c59d39b69db716453b518ea2f4914a4af3df50b6c7b85edfa77c3cb1871", + "bytes": 512 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.stdout": { + "sha256": "621db98d4563e6f931f5784daad4d057d0e424b42ddf76b8471129a9d78a640e", + "bytes": 476 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/change-boundary.md.txt": { + "sha256": "655de20425af950dd8a7608433711266bbbe39e40e534650eade81d9ca82e27c", + "bytes": 714 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/change-boundary.png": { + "sha256": "e3a84fa9f8010add7871ab196f8abccfbbaab4046b6aec08bbae8aac4c2f163d", + "bytes": 50135 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/failure.html": { + "sha256": "6a0ef3e833cb1ec1d5e81b8fa865a22606aaebf4a6325a094f80965776d3b39a", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/failure.png": { + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "bytes": 48450 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.before.html": { + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "bytes": 12122 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.html": { + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "bytes": 12122 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.json": { + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "bytes": 1429 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.before.html": { + "sha256": "20fc61c6350ca9aa39bf487c4ac4e86f042e715f214a89db813495cb80515d17", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.html": { + "sha256": "20fc61c6350ca9aa39bf487c4ac4e86f042e715f214a89db813495cb80515d17", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.png": { + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "bytes": 29688 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.before.html": { + "sha256": "0d30220b7fa640f71b8a64f3d0a727d23a6fc0605d687ae357c3ea3343b8fdb2", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.html": { + "sha256": "0d30220b7fa640f71b8a64f3d0a727d23a6fc0605d687ae357c3ea3343b8fdb2", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.png": { + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "bytes": 29700 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.before.html": { + "sha256": "6a0ef3e833cb1ec1d5e81b8fa865a22606aaebf4a6325a094f80965776d3b39a", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.html": { + "sha256": "6a0ef3e833cb1ec1d5e81b8fa865a22606aaebf4a6325a094f80965776d3b39a", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.json": { + "sha256": "5f25fcb3438e23c8da82b4f56aea5e3fca094692a605db0ee8c63d26f72e17d9", + "bytes": 4504 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.png": { + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "bytes": 48450 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.before.html": { + "sha256": "1ff85a39dce2635dc005f360f43a98d69256836561e7ee0ee5a14e3317c32f68", + "bytes": 14721 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.html": { + "sha256": "1ff85a39dce2635dc005f360f43a98d69256836561e7ee0ee5a14e3317c32f68", + "bytes": 14721 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.json": { + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "bytes": 2958 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.png": { + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "bytes": 31695 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/intrinsic-width-diagnosis.json": { + "sha256": "5f9d141b22c820efc00df05e432b6dbe77d693a7a14198307b9948c5513b3978", + "bytes": 1681 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/report.json": { + "sha256": "9c1c9d90b1d55864b66bb9b0da33b2fbd05e85d6ecf5e70ceab6ed3771d39859", + "bytes": 53784 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.command.json": { + "sha256": "713a05e8c3bb6ee8ed85fc49562871e1a4f5bf28ab544ffee13ec33eabfd343e", + "bytes": 514 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.stdout": { + "sha256": "31db5f264364bb7962a150434032aed09130b22f2a0032b2d362e7d59f4516d8", + "bytes": 479 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/change-boundary.png": { + "sha256": "e3a84fa9f8010add7871ab196f8abccfbbaab4046b6aec08bbae8aac4c2f163d", + "bytes": 50135 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.html": { + "sha256": "1667d0a2ba7a05ad13378eab6f004b32c23aeee890e3de24b954d9ba3bd349e4", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.png": { + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "bytes": 48450 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.before.html": { + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "bytes": 12122 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.html": { + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "bytes": 12122 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.json": { + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "bytes": 1429 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.before.html": { + "sha256": "e4e90a0c6a9b2ebd6593de15327a2163a1cae502a20b4b080565549429485ac4", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.html": { + "sha256": "e4e90a0c6a9b2ebd6593de15327a2163a1cae502a20b4b080565549429485ac4", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.png": { + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "bytes": 29688 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.before.html": { + "sha256": "ac8a9f57bd49edeebff13e4e752f20d89731066258cd296196539d3e387aa1ea", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.html": { + "sha256": "ac8a9f57bd49edeebff13e4e752f20d89731066258cd296196539d3e387aa1ea", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.png": { + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "bytes": 29700 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.before.html": { + "sha256": "1667d0a2ba7a05ad13378eab6f004b32c23aeee890e3de24b954d9ba3bd349e4", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.html": { + "sha256": "1667d0a2ba7a05ad13378eab6f004b32c23aeee890e3de24b954d9ba3bd349e4", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.json": { + "sha256": "5f25fcb3438e23c8da82b4f56aea5e3fca094692a605db0ee8c63d26f72e17d9", + "bytes": 4504 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.png": { + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "bytes": 48450 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.before.html": { + "sha256": "c99d225b4a798c7f17d79360f3044b707d2491a03d913fe1cfdf022becafa36a", + "bytes": 14721 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.html": { + "sha256": "c99d225b4a798c7f17d79360f3044b707d2491a03d913fe1cfdf022becafa36a", + "bytes": 14721 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.json": { + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "bytes": 2958 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.png": { + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "bytes": 31695 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/intrinsic-width-diagnosis.json": { + "sha256": "b7ab84e026c8a4785f4e64f61f68ae15c945607f0dcc1f691d89ae29e3641952", + "bytes": 1094 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/report.json": { + "sha256": "310d33643208d5887ab00fdc9f6374d682f0067f9b1edbfd1b0bf5c3742388d3", + "bytes": 53787 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-build.stderr": { + "sha256": "aa9b7207d2d2d42fbf4e013331ee76fc39b9b042505b38551893c1f60f35b63a", + "bytes": 342 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-build.stdout": { + "sha256": "e726ba3b108ddbd360c358c54c04154c2dd89dc90e7003bca255b8db23f9f7b0", + "bytes": 604 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-commands.json": { + "sha256": "cd80bf5203ea3c863f77fc5190a937e0fbe2c2a3221f4a9806ee4500cf457892", + "bytes": 3910 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-test.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-test.stdout": { + "sha256": "5e876ce8972556a35b75a101d275324ab2d4c244b41f088b157d019d98609c57", + "bytes": 1251 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-tours-validate.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-tours-validate.stdout": { + "sha256": "8b91eaa9d523522537255352c11c4861181d47d8559a7cfee65ebd89e731476a", + "bytes": 188 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-01.command.json": { + "sha256": "2f49fc84dc4bc4a20d172320eb19637a2395a6ba071344982e1d02f91ae9028b", + "bytes": 383 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-01.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-01.stdout": { + "sha256": "fa4b3733d14708ea7862f4d4432d2dcb771a1e3d2e7b4c48c9935066c41100c2", + "bytes": 654 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-02.command.json": { + "sha256": "65e27ecda84be3e5c05b7fa9c9218015bdeda8d816e20bec678c65f658ce261c", + "bytes": 387 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-02.stderr": { + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-02.stdout": { + "sha256": "b05bf8785f7d5e963a38b1a0c1fa99626ee5cd225adb964fff134f6f6623e420", + "bytes": 675 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03.stderr": { + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03.stdout": { + "sha256": "a592d7c4ae366440302991fd057976fa66727bc0590b5759b58e686eeedbcd05", + "bytes": 205 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.before.html": { + "sha256": "59eb34ea0435ce840d70eb48a59adac70759497f3ae7a4b5584bc2488ffecbf2", + "bytes": 54536 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.html": { + "sha256": "59eb34ea0435ce840d70eb48a59adac70759497f3ae7a4b5584bc2488ffecbf2", + "bytes": 54536 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.json": { + "sha256": "6935b87a602d818b983454526a9b2b3e9d5d1c996fbed4318014aab143995adf", + "bytes": 20228 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.png": { + "sha256": "58ba9e90d8ee08e3e4de36315520230539a85f7a6f7aa00c00d551d1faeca633", + "bytes": 31563 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.json": { + "sha256": "bf71f827c6258d6850a61ffd3f44d5d49a579a8f50533c7e5b8995e599227732", + "bytes": 1441 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.png": { + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "bytes": 35614 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.json": { + "sha256": "ec64ee186c5090fb5b13eb0536c3d88caa2a51f55cf313b5321ef224d3ba7bf1", + "bytes": 1447 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.json": { + "sha256": "784b057efcc06117428ff64e758febd96fcead440f76cfd8bb1149a843077a42", + "bytes": 1447 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.png": { + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "bytes": 38890 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.before.html": { + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.html": { + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.json": { + "sha256": "797209909becf655017daaaa1aa4c3561deb375c2cd86132540d874cdbc9a31d", + "bytes": 1429 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.png": { + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "bytes": 27800 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.before.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.json": { + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "bytes": 1429 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.before.html": { + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.html": { + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.json": { + "sha256": "c75f981b06d8509b77afe350c14ea252bc96e3ed341a3746f43eddc6746e6c33", + "bytes": 1438 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.png": { + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "bytes": 34212 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.before.html": { + "sha256": "31b63a4a1677db645819b3a8282212e35c49694d781bde3e1ee7fc0a7eac7a89", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.html": { + "sha256": "31b63a4a1677db645819b3a8282212e35c49694d781bde3e1ee7fc0a7eac7a89", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.json": { + "sha256": "b763d3a5d040ed75ab1034fa9b2a2c86503f719947d9bc57c800440ff9fb55b4", + "bytes": 4521 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.png": { + "sha256": "8771217ee4017d80a0d96770f8b6102ca307e466c9ce9bc892b162b00d43af5f", + "bytes": 50960 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.before.html": { + "sha256": "ff05f89650666f1a056ae7e94f9f5af7bed3077ea79ee74541717eee2d09c0c2", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.html": { + "sha256": "ff05f89650666f1a056ae7e94f9f5af7bed3077ea79ee74541717eee2d09c0c2", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.json": { + "sha256": "33ce1d3d8501c0c9bdf34e0f37ca1f9a3a2f39d0b5637f20594dff67c69b053f", + "bytes": 4528 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.png": { + "sha256": "0b0b4496efe9ccd09e844a4e75afb7ff74e37dc54ce08f64911ee322ed830d60", + "bytes": 53157 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.before.html": { + "sha256": "7d4b324f47c6ae4f1a28be373c8f48bae4bddee948e7b02b5101f564988e5015", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.html": { + "sha256": "7d4b324f47c6ae4f1a28be373c8f48bae4bddee948e7b02b5101f564988e5015", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.json": { + "sha256": "2bc6cca0a819ca19908d7a4cc21e7803f649b224a1020f141090e8f703e4da75", + "bytes": 4528 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.png": { + "sha256": "04ea13ef9f7347a8b3f69e0c6d8cbe277197c38ea5c31a4571154504696a7207", + "bytes": 55209 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.before.html": { + "sha256": "8b29c5d26da3aeedb4ecee0b4b40a189d1a3470160fae0ac23af5c5c49d704c1", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.html": { + "sha256": "8b29c5d26da3aeedb4ecee0b4b40a189d1a3470160fae0ac23af5c5c49d704c1", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.json": { + "sha256": "acbd3eb3b7d0890f2c42ee7c2de5651a0e3b47a40719f0a65f953adbd372ddba", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.png": { + "sha256": "914d34e5c4e3c77a75568bda1683fcad1e85d27ec995dd45cb9ab945c04b56b7", + "bytes": 27882 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.before.html": { + "sha256": "831bd2526f3ebdbd1795616642137818fc6f4df8fd64c06d989098c8bb667685", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.html": { + "sha256": "831bd2526f3ebdbd1795616642137818fc6f4df8fd64c06d989098c8bb667685", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.png": { + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "bytes": 29688 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.before.html": { + "sha256": "bc1685eeb14ac6dde0ceb78f3bb834213d7b02ee5ce55204cc1825589165191b", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.html": { + "sha256": "bc1685eeb14ac6dde0ceb78f3bb834213d7b02ee5ce55204cc1825589165191b", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.json": { + "sha256": "629a509368163ec0675ab696b8317dd4d79c305a22ca9871b6874e4a3b9ec075", + "bytes": 4528 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.png": { + "sha256": "7b29501873ba5b601f6bbb3ef55468f49a159347bf4839eeeb181e5d7bba9710", + "bytes": 49649 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.before.html": { + "sha256": "1b70b093669a29e7c913b7fd5cd19aa3804f90d1c205e31b217003d6f701f9e1", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.html": { + "sha256": "1b70b093669a29e7c913b7fd5cd19aa3804f90d1c205e31b217003d6f701f9e1", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.json": { + "sha256": "b763d3a5d040ed75ab1034fa9b2a2c86503f719947d9bc57c800440ff9fb55b4", + "bytes": 4521 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.png": { + "sha256": "56f0f5a4352c57b7c56842dcd6da1f6c90d04dfb46cfae4995994a48995ec2e2", + "bytes": 50971 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.before.html": { + "sha256": "96661f580c686a2b16cecee3997a37c008cb26218824900b238512b4e52b80e9", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.html": { + "sha256": "96661f580c686a2b16cecee3997a37c008cb26218824900b238512b4e52b80e9", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.json": { + "sha256": "51378138438aa879575cff6711662990b1d2dcf1d417c4a9b85ba0a0c3c09421", + "bytes": 4524 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.png": { + "sha256": "07765375ec1a2f2786cd335ef09b11e6daf43b5625483e646f3c722a6f5b291b", + "bytes": 53122 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.before.html": { + "sha256": "38f2d9548bd5544e0002105ed7bef8c6b1b25365855291c95f2cbb67dfe91045", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.html": { + "sha256": "38f2d9548bd5544e0002105ed7bef8c6b1b25365855291c95f2cbb67dfe91045", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.json": { + "sha256": "2bc6cca0a819ca19908d7a4cc21e7803f649b224a1020f141090e8f703e4da75", + "bytes": 4528 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.png": { + "sha256": "8af7493a48bb6c6c5c98e4bcc94edf71d35ffe14af6a3db4b696e2923f5f123b", + "bytes": 55222 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.before.html": { + "sha256": "2a635423912976e0f7d6cc99e47ff9e669b8b355b542faa27b62924d68971a28", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.html": { + "sha256": "2a635423912976e0f7d6cc99e47ff9e669b8b355b542faa27b62924d68971a28", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.json": { + "sha256": "188c5498ec6159003e143423834a7aa6938d9f49a3ec7c85d742a2a4d453e52d", + "bytes": 4498 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.png": { + "sha256": "937c54b96421ca35ca308d9de0682e87350da227de26184abb7a3754220c5cd8", + "bytes": 27824 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.before.html": { + "sha256": "da528412b4f08c62c8ba769cd9b9dfc478a84976c339b57c9743fafd91e4ebac", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.html": { + "sha256": "da528412b4f08c62c8ba769cd9b9dfc478a84976c339b57c9743fafd91e4ebac", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.png": { + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "bytes": 29700 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.before.html": { + "sha256": "332daa0d255caa5899f7aa121dfca63d9691a6ea22b08be21b36fe358125c200", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.html": { + "sha256": "332daa0d255caa5899f7aa121dfca63d9691a6ea22b08be21b36fe358125c200", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.json": { + "sha256": "dd95ca6fc9d1cd2bc995e8a97c30ae72c37bed8c09b38cf869c8263355556adc", + "bytes": 4524 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.png": { + "sha256": "b04709917a1a7c0571b29d18e84a1f98b2dbc9071ac2689281b8f7e2bde61968", + "bytes": 49582 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.before.html": { + "sha256": "f3e85102aecc9303d5ff25eaffda807cf41d3444ed8bf1d6f72fce2f13565175", + "bytes": 21083 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.html": { + "sha256": "f3e85102aecc9303d5ff25eaffda807cf41d3444ed8bf1d6f72fce2f13565175", + "bytes": 21083 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.json": { + "sha256": "f623528e34fb1e7fccd23e840e1c9502f91966ba01d204592b1ecf7ad4a3aca3", + "bytes": 4506 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.png": { + "sha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "bytes": 49228 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.before.html": { + "sha256": "9bce97b3f946570ac670b7ba0e5cbe0ec0dd2dc0cb3fd0159fe91a5f51dbe0c1", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.html": { + "sha256": "9bce97b3f946570ac670b7ba0e5cbe0ec0dd2dc0cb3fd0159fe91a5f51dbe0c1", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.json": { + "sha256": "09ed69e83dee153dcfcf86b3396f0a8bceb7b8513b51014c8a57262cf4b7e6d6", + "bytes": 4898 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.png": { + "sha256": "a0f976461b91b9595c61523d38a92ffeb29812b08ec7e43a9539782a8bbb1ad9", + "bytes": 51830 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.before.html": { + "sha256": "9cd399a50921668f33cde1ed70df59b680ac9282a44dcacaf7b479b9ea865cbe", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.html": { + "sha256": "9cd399a50921668f33cde1ed70df59b680ac9282a44dcacaf7b479b9ea865cbe", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.json": { + "sha256": "a113dd2bc8fce82da49447e11f2427ae3799c57e868e815d31a3cedc660b770e", + "bytes": 4900 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.png": { + "sha256": "a11ca95732178919c8ec6f957d8c8ce1e30376525fda5a4aace5b1870ac31dd2", + "bytes": 54055 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.before.html": { + "sha256": "14874ab71f36c95ca64bdcd3eb5f656f6c5a6f0fb72ff9f5f5adc57bd4a46e6b", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.html": { + "sha256": "14874ab71f36c95ca64bdcd3eb5f656f6c5a6f0fb72ff9f5f5adc57bd4a46e6b", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.json": { + "sha256": "f9784ce6975cbf0006b7e526e08a1fd7f67487354962cca52ac0163001f0db22", + "bytes": 4904 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.png": { + "sha256": "ef4cc1b5a4d754bcc95061400b93152dc8aa9b536e221e8b9dec376b3623860d", + "bytes": 56277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.before.html": { + "sha256": "f009a1ec5c5538c0c5bc1f078ce8070c810d3fa3709e6705ba2dfb4faee0042c", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.html": { + "sha256": "f009a1ec5c5538c0c5bc1f078ce8070c810d3fa3709e6705ba2dfb4faee0042c", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.json": { + "sha256": "eba49027b686d051cfec574abc3d529fb6e1738c01367c32f3cdc66485e1f7ba", + "bytes": 4882 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.png": { + "sha256": "1ffeaf2cc5fcbb17e9fbc1dd7cfa1d46a42c460804fb45953b888760756df998", + "bytes": 28623 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.before.html": { + "sha256": "b633586e65ea1710c3179a50fba99b6c286530fa0d2180104b4f43e54e7d46e0", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.html": { + "sha256": "b633586e65ea1710c3179a50fba99b6c286530fa0d2180104b4f43e54e7d46e0", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.json": { + "sha256": "919f9b1861ed7e8b243b04a43d3fb579c36cc962ff43b30fb6f562ee52fd4c5c", + "bytes": 4886 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.png": { + "sha256": "33ee4ebc7c01a3f826e4b66b873fa57610fce8cd9120df361172a40c3def033d", + "bytes": 31565 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.before.html": { + "sha256": "9f2c704770b4c42340d3598da93093bda55cf79ea910ad205ef68a8644db7532", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.html": { + "sha256": "9f2c704770b4c42340d3598da93093bda55cf79ea910ad205ef68a8644db7532", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.json": { + "sha256": "7e4b9963215262a407359174f1f42d59d60322a631832e1b86df469081dec80b", + "bytes": 4871 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.png": { + "sha256": "335650ac40dab0dbf9289b21fea9191ed2ed072bd43d63847810d026edb53f08", + "bytes": 49385 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.json": { + "sha256": "bf71f827c6258d6850a61ffd3f44d5d49a579a8f50533c7e5b8995e599227732", + "bytes": 1441 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.png": { + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "bytes": 35614 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.json": { + "sha256": "ec64ee186c5090fb5b13eb0536c3d88caa2a51f55cf313b5321ef224d3ba7bf1", + "bytes": 1447 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.json": { + "sha256": "784b057efcc06117428ff64e758febd96fcead440f76cfd8bb1149a843077a42", + "bytes": 1447 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.png": { + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "bytes": 38890 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.before.html": { + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.html": { + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.json": { + "sha256": "797209909becf655017daaaa1aa4c3561deb375c2cd86132540d874cdbc9a31d", + "bytes": 1429 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.png": { + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "bytes": 27800 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.before.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.json": { + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "bytes": 1429 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.before.html": { + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.html": { + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.json": { + "sha256": "c75f981b06d8509b77afe350c14ea252bc96e3ed341a3746f43eddc6746e6c33", + "bytes": 1438 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.png": { + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "bytes": 34212 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.before.html": { + "sha256": "6a2b277861fddc1c9b8d5d5c04608675e87cb1b0ff1dba099145b98805a064b7", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.html": { + "sha256": "6a2b277861fddc1c9b8d5d5c04608675e87cb1b0ff1dba099145b98805a064b7", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.json": { + "sha256": "5f0bf8dea5cd58549821744d98ac9f95da73d00b8f2f5217e60e13af57411751", + "bytes": 2960 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.png": { + "sha256": "37d80b33fdd0769336860ba760072bca9682e6bef5d683e318a3f1752f3d6596", + "bytes": 45309 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.before.html": { + "sha256": "f6a7d50b138436bd6d5ad5bcf72adb62568d19d43707a19193c7e3fa3070857f", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.html": { + "sha256": "f6a7d50b138436bd6d5ad5bcf72adb62568d19d43707a19193c7e3fa3070857f", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.json": { + "sha256": "a28da15d369adaad05e18e10240035df47bd14c334728dd0214a97b54b8d3b5e", + "bytes": 2967 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.png": { + "sha256": "83264c4288a5f0b7240a757a12571f7f292902ea890b426b9f4b5318dd3a85c7", + "bytes": 47515 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.before.html": { + "sha256": "f64f501220f8a0276d7a3bc5ab741d6c7a5c941a0cd77f2d75ccb7bc61131316", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.html": { + "sha256": "f64f501220f8a0276d7a3bc5ab741d6c7a5c941a0cd77f2d75ccb7bc61131316", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.json": { + "sha256": "5706a5988c38ce0d152a829c6e6f4dd7452998b3c4912bd0a8fe99e5194acc08", + "bytes": 2967 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.png": { + "sha256": "c6e314e7866c16a0a9fb893ab53e708b69d01cf1dfc91e175171021ad1563339", + "bytes": 49151 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.before.html": { + "sha256": "3fdff8dd2ec426a7eb057f3929eaa848287d708d6ef03d2056c72a6312eb5e81", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.html": { + "sha256": "3fdff8dd2ec426a7eb057f3929eaa848287d708d6ef03d2056c72a6312eb5e81", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.json": { + "sha256": "de17fa92bb7fb042e84db8d007b906105914069aa8eebc1c5fab248601a3b8e1", + "bytes": 2958 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.png": { + "sha256": "652934d39f0e3eb65357e59ab2312c57f16fe9c2c2c0e4791e407dc9303dc6ec", + "bytes": 28849 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.before.html": { + "sha256": "9a6ae3a3b3ee5cfccf5b18dd2b430d95c8947deae9ed3f387c09e263b13d0cde", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.html": { + "sha256": "9a6ae3a3b3ee5cfccf5b18dd2b430d95c8947deae9ed3f387c09e263b13d0cde", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.json": { + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "bytes": 2958 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.png": { + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "bytes": 31695 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.before.html": { + "sha256": "c10e18c5db05e195233a32d1edf484a915bed44fce4e84742a91f9498c76833c", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.html": { + "sha256": "c10e18c5db05e195233a32d1edf484a915bed44fce4e84742a91f9498c76833c", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.json": { + "sha256": "608dcc480ad05aa2d6f509de3185c8b78a85123b58ffe0e7d509776dba1bdf41", + "bytes": 2975 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.png": { + "sha256": "d2e9ff544a462e6031dbfed0f425caf9bf1472afdadc02b5bd94ef233e6bb442", + "bytes": 43950 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/report.json": { + "sha256": "76dd8ca1416225bd0f9abe0b524ced0299a86c975fb839cafa18551d04759f24", + "bytes": 577947 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.before.html": { + "sha256": "cda586085a94bd048abe0d6a5d01f8ba4d47021806584558790352f4b67508b8", + "bytes": 86122 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.html": { + "sha256": "cda586085a94bd048abe0d6a5d01f8ba4d47021806584558790352f4b67508b8", + "bytes": 86122 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.json": { + "sha256": "8977d05241f0529107d785c5d2536e2896258bd583088176086cff623edc0365", + "bytes": 28403 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.png": { + "sha256": "a98d959fb951441de714ee82308450b40628fdf83a422dba3ab14604d078d46f", + "bytes": 63085 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.before.html": { + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.html": { + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.json": { + "sha256": "ede2876f19713dc531795df79fae94f1e4be1e6e59dde4c890d5a15c437dd3d5", + "bytes": 1709 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.png": { + "sha256": "1f1dcb02d9a8bc787a3c8f34284a37db509fe3c713c8cd2f1a0be280bec536bb", + "bytes": 76719 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.before.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.json": { + "sha256": "44f9802ac671da13c467ad5fd9e3283586cd10703eaa3cc653202c61ffe74a1f", + "bytes": 1715 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.png": { + "sha256": "d76544c99d3ac4bf70171cb55a4a984f5abb833b1b31ab3f17c971fb8ee13e3c", + "bytes": 84811 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.before.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.json": { + "sha256": "260c343e2494c57f66afb214a65220b03398ea2ca995d675370604361cb9632f", + "bytes": 1717 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.png": { + "sha256": "d15109fef507a1ff5c03ee7e219148e97c5d4cea7087eac04d48f8145a750aeb", + "bytes": 87564 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.before.html": { + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.html": { + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.json": { + "sha256": "8c49d01652d8a2b38a4b49aa70554305b1b5c5a5f9c8dffc59a28619cdee5568", + "bytes": 1702 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.png": { + "sha256": "a62e4eb88af10918e0ad7ad40deb6f0c6e3e9482bada71e9a316054d12f14e44", + "bytes": 57493 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.before.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.json": { + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "bytes": 1702 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.png": { + "sha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "bytes": 58620 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.before.html": { + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.html": { + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.json": { + "sha256": "727077405ce6cf0d1b2b56d4dc0b62cd2cf8f91a0c13ec45e7d14f912ac6a880", + "bytes": 1723 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.png": { + "sha256": "0e831f09beeba076c2b20de1a4d87afd5e312efe5ad5a0c82f8b76842de7463b", + "bytes": 77232 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.before.html": { + "sha256": "e553008bedfc8c779e1aca0aed9f21f0f71892bd41833c89af142313a4e45176", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.html": { + "sha256": "e553008bedfc8c779e1aca0aed9f21f0f71892bd41833c89af142313a4e45176", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.json": { + "sha256": "47f71ee461942f04a9f20ea9761d21911e447ed777780023eeb75627027b87ab", + "bytes": 5908 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.png": { + "sha256": "b381afd9f7491eacf6a037ceccdb12f2569d41517d332d0de8f32c54f0efc544", + "bytes": 128884 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.before.html": { + "sha256": "41fcbe79d81022e7a960a8bb9328923fc34cb7defdbdb84796d4fe76ecb53ac3", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.html": { + "sha256": "41fcbe79d81022e7a960a8bb9328923fc34cb7defdbdb84796d4fe76ecb53ac3", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.json": { + "sha256": "5ee19e2c30ca7a72425d05c7933872c423762cb05903081c441f9b5a296b7cd7", + "bytes": 5922 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.png": { + "sha256": "7c4827c0c1db231e6bc77de6fad921d2a49e101088f96d5d9b15118b23a663cb", + "bytes": 144304 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.before.html": { + "sha256": "cf319e2bddb9dd1617bfcda584096781a0c8ebe4531e20b4adcafd2e1bd25950", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.html": { + "sha256": "cf319e2bddb9dd1617bfcda584096781a0c8ebe4531e20b4adcafd2e1bd25950", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.json": { + "sha256": "3e3f387a51adf6b75f054e02682f15c9e69f67df0a20b1ac550cb7a208f501f5", + "bytes": 5925 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.png": { + "sha256": "0dd49d3a3361769a55fd9b85464a8c162131053d49cc9dbd332fbe3354bfbe36", + "bytes": 147532 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.before.html": { + "sha256": "6c386eb711883bbe758651a97d5cd1a34c7253abadc9702adaa845b70a6a75fc", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.html": { + "sha256": "6c386eb711883bbe758651a97d5cd1a34c7253abadc9702adaa845b70a6a75fc", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.json": { + "sha256": "a76329ce047c1f2b281868ea0ae4f4a44a8da8652f61da354c8a6b3bfe7e99c4", + "bytes": 5904 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.png": { + "sha256": "44c7e1467f62779beab1c0183ffe4514eb6fe13b34535663c9c38b6f1933a2f9", + "bytes": 43791 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.before.html": { + "sha256": "e41e344d41614a74f81c12b6048d07a41aa37dcb2cac3d496a6f04b4399a2958", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.html": { + "sha256": "e41e344d41614a74f81c12b6048d07a41aa37dcb2cac3d496a6f04b4399a2958", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.json": { + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "bytes": 5899 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.png": { + "sha256": "4c0ec09af5cd6b81a74dc757af114d0b0af8298d7f1554eea6175132903036e8", + "bytes": 58164 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.before.html": { + "sha256": "3cea10bb8724cf16065e3590a9f84e673f06344cd2a01444221b56cad60372cd", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.html": { + "sha256": "3cea10bb8724cf16065e3590a9f84e673f06344cd2a01444221b56cad60372cd", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.json": { + "sha256": "913126dff6202cfe9571f31351c74fe36bd9243cc5ca45be239d4debb11f0448", + "bytes": 5927 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.png": { + "sha256": "53662466a8e63ee63c22ef3048470ef87953482e9a26f76930cd0c8794b75328", + "bytes": 95358 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.before.html": { + "sha256": "335a0b2107d52542902df88b616c64a58489fff420c320d3164bc0c7e4a31db1", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.html": { + "sha256": "335a0b2107d52542902df88b616c64a58489fff420c320d3164bc0c7e4a31db1", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.json": { + "sha256": "47f71ee461942f04a9f20ea9761d21911e447ed777780023eeb75627027b87ab", + "bytes": 5908 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.png": { + "sha256": "97835197502d12bd65dd9a1fe6e859da8892a2251871bf263c1daae2808b3033", + "bytes": 128461 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.before.html": { + "sha256": "677b47b9f59f62898a937fb9833211778e512d32468a25af7f8be58c3570bd51", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.html": { + "sha256": "677b47b9f59f62898a937fb9833211778e512d32468a25af7f8be58c3570bd51", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.json": { + "sha256": "ff0a36f9e62a3e0e18996d3645809fdbd0b7d38dc8b7352c737f930779c43375", + "bytes": 5918 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.png": { + "sha256": "2d93b1676903b446f2e89ef6d62d674198ad1b5daf033ab2c0398ea48c348537", + "bytes": 143678 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.before.html": { + "sha256": "5f6d472525009ad331ac226f5afb0595b46f7e8ae5abd33efc26dfb25dfa424a", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.html": { + "sha256": "5f6d472525009ad331ac226f5afb0595b46f7e8ae5abd33efc26dfb25dfa424a", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.json": { + "sha256": "3e3f387a51adf6b75f054e02682f15c9e69f67df0a20b1ac550cb7a208f501f5", + "bytes": 5925 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.png": { + "sha256": "fd6ec63d65548c8b6d3ca5558fe5f8758dc84134daa518e3aa7d31d74748f580", + "bytes": 148281 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.before.html": { + "sha256": "fe4794d61ddb453b58bb3a0574c0a44a7fcc6be535f490c14c94049a960f92d0", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.html": { + "sha256": "fe4794d61ddb453b58bb3a0574c0a44a7fcc6be535f490c14c94049a960f92d0", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.json": { + "sha256": "82dfea2ac32f8f1fe1d03d22017e0f602fe1e0f94b8bd86153a9835acc6a61f3", + "bytes": 5900 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.png": { + "sha256": "1de10380e5438e19a7e0c6e19690cfdbb24cc1822a01dc28fd8dc411c937a2ca", + "bytes": 44396 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.before.html": { + "sha256": "10c7b663d6011ac66410f6ebbce0e2f3ff147ba78a4f6edeedd162e17fad42cd", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.html": { + "sha256": "10c7b663d6011ac66410f6ebbce0e2f3ff147ba78a4f6edeedd162e17fad42cd", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.json": { + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "bytes": 5899 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.png": { + "sha256": "1d8241a055cfaeb73eb0a25a1cc110e4ac50c9409e58035754c1896fb8bd1e8e", + "bytes": 58882 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.before.html": { + "sha256": "d892de46b7fbe83d7641f8318d7921ea185d885ea811a9a76fb268b6ffd8ba2b", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.html": { + "sha256": "d892de46b7fbe83d7641f8318d7921ea185d885ea811a9a76fb268b6ffd8ba2b", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.json": { + "sha256": "1ee677e15820c0634a102a07dd99781030db38f7dd86cfe815eaaf88053fc74f", + "bytes": 5923 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.png": { + "sha256": "0e9234dad7bd90d049e43078933c4d4e9caf3196d44c94f89b7409be6c6e7cac", + "bytes": 95382 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.before.html": { + "sha256": "635ad2633109d1b6c14560008a5610cb4140883b4f2e64b8aa8df364056e2370", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.html": { + "sha256": "635ad2633109d1b6c14560008a5610cb4140883b4f2e64b8aa8df364056e2370", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.json": { + "sha256": "9e7860273aad6cb70d41aa493f23df595335e8b9b7f32cfa74208bca04c4f0ab", + "bytes": 5891 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.png": { + "sha256": "2d2c6213cf705762e21755eabebddcf2d20c07c01a2e505125107c95c0e77f4b", + "bytes": 73249 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.before.html": { + "sha256": "f02a4a6fccf701e01a35aa8c39e857ac0f832610164e934d66bbe3b0d60337a3", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.html": { + "sha256": "f02a4a6fccf701e01a35aa8c39e857ac0f832610164e934d66bbe3b0d60337a3", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.json": { + "sha256": "7fb180c6286013944831d8ddef09b36883ba273908b8f74ff1ae8a1f8da6eba7", + "bytes": 6720 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.png": { + "sha256": "92ccbdfce3e0995faf70ad1939d12f8d6f8ad2ecf9727ee11df9f51467879343", + "bytes": 135585 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.before.html": { + "sha256": "154964016222b6c1a1e7aae1d5a39ac1c1b4bf5fc18d99a9e8c7bdaf164cc1fa", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.html": { + "sha256": "154964016222b6c1a1e7aae1d5a39ac1c1b4bf5fc18d99a9e8c7bdaf164cc1fa", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.json": { + "sha256": "06b0c8772672c8c540bdf19a9a6998610ec44597c062617bb734e19dea24c7cf", + "bytes": 6723 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.png": { + "sha256": "ccf4f2074df5b75ae9e53203f6683046d4a07119c0aa39cf40cd234ed1972516", + "bytes": 149978 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.before.html": { + "sha256": "13230db9d544e4360191b568e56ea867b0bd65f60669a8947b55fd4c07696bdd", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.html": { + "sha256": "13230db9d544e4360191b568e56ea867b0bd65f60669a8947b55fd4c07696bdd", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.json": { + "sha256": "76e4f68e794708d8b4be5f8c4b1f2082272f5617e7276993b76b289c43bd2dcf", + "bytes": 6729 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.png": { + "sha256": "c54cc28181262b58434cc5ef9d1eedefa4b339d341e06a6659ce8ae1b20d64d0", + "bytes": 153852 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.before.html": { + "sha256": "de3c5a3ee1edb4fe3a58890088d96d9a37e86e1134cb3c577bdda5dd0b414a54", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.html": { + "sha256": "de3c5a3ee1edb4fe3a58890088d96d9a37e86e1134cb3c577bdda5dd0b414a54", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.json": { + "sha256": "107dd9fba874a78c5b9b2d70c0a016ebb76554ae2c5335a661626d8c7ed34bb7", + "bytes": 6713 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.png": { + "sha256": "f710fb7b3a81a6b996172ecad176745a6aca8fa6ed8cabfc1beed3553c6c3415", + "bytes": 47462 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.before.html": { + "sha256": "4d08085c951fa3fa1f428eb8bcd6fdb9113fa8c027c8805fa8265644b88a6151", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.html": { + "sha256": "4d08085c951fa3fa1f428eb8bcd6fdb9113fa8c027c8805fa8265644b88a6151", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.json": { + "sha256": "2f228584dd5b101347fecb1ac11f22ce41b69b7e55636bcd677337c1e5b65aec", + "bytes": 6717 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.png": { + "sha256": "3be1d4d87ab86cd042f7a2e2409df9521bcd3d0185e5490a9bdebdfc2322c589", + "bytes": 62410 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.before.html": { + "sha256": "8cbb83779555a7a2883e88841c0fd2d1d8492c0786620cb122ae6b73fff148cc", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.html": { + "sha256": "8cbb83779555a7a2883e88841c0fd2d1d8492c0786620cb122ae6b73fff148cc", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.json": { + "sha256": "cf4917458a2da22f6713825f75bf94fb9638d0f0cfefd2a8bd356f3f5bb6b69a", + "bytes": 6725 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.png": { + "sha256": "d6426e2c8551db0ea54785c9752fd126c43dadc7c68a6639b7ae762cf9e2ded0", + "bytes": 102890 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.before.html": { + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.html": { + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.json": { + "sha256": "ede2876f19713dc531795df79fae94f1e4be1e6e59dde4c890d5a15c437dd3d5", + "bytes": 1709 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.png": { + "sha256": "28a5b8cbc04f9676ec6e93efc0abef0dc688bfc28e428e1f11dde8ad94a15047", + "bytes": 76675 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.before.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.json": { + "sha256": "44f9802ac671da13c467ad5fd9e3283586cd10703eaa3cc653202c61ffe74a1f", + "bytes": 1715 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.png": { + "sha256": "af46f2737897dc01909a26e05dfcc40315a367b28e8cd459750e635793859608", + "bytes": 84775 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.before.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.json": { + "sha256": "260c343e2494c57f66afb214a65220b03398ea2ca995d675370604361cb9632f", + "bytes": 1717 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.png": { + "sha256": "bbe8000a70f12ef30e269a508730b96a71569d75555526ae2c85cc1c29434a9b", + "bytes": 87561 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.before.html": { + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.html": { + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.json": { + "sha256": "8c49d01652d8a2b38a4b49aa70554305b1b5c5a5f9c8dffc59a28619cdee5568", + "bytes": 1702 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.png": { + "sha256": "79fb416362b6d91c86f3287cf855f7c98c746abe4be85d9bfba3f7cd670956f2", + "bytes": 57478 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.before.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.json": { + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "bytes": 1702 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.png": { + "sha256": "ff6103598e731b2f89b6f9eec44f4d3f1e901d905cb37c4b3139d4a30aa31de8", + "bytes": 58601 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.before.html": { + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.html": { + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.json": { + "sha256": "727077405ce6cf0d1b2b56d4dc0b62cd2cf8f91a0c13ec45e7d14f912ac6a880", + "bytes": 1723 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.png": { + "sha256": "8ff8dc987409066bd07225af18517486c5b5c6f813cfdd5504cc76c2ad83942e", + "bytes": 77201 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.before.html": { + "sha256": "67ae30f361414c14a0e3370ac1374545310b84031cdf10867fbc07a27e9a535d", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.html": { + "sha256": "67ae30f361414c14a0e3370ac1374545310b84031cdf10867fbc07a27e9a535d", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.json": { + "sha256": "f856be09c38311c976f3fa8bced7e7e691c824bee145f46918deadd9b8d9b2e7", + "bytes": 3794 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.png": { + "sha256": "974cf22ed8518165144d257bc4eb9a4b179f7ec79baa5badb74038deb6ecd39f", + "bytes": 131813 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.before.html": { + "sha256": "e99e9e91522bd3e50baaf80dc8633bfb85aa7dfe53f8cbb2d52c593ba9b2c406", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.html": { + "sha256": "e99e9e91522bd3e50baaf80dc8633bfb85aa7dfe53f8cbb2d52c593ba9b2c406", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.json": { + "sha256": "d5b8ffa3745e3270bbbf6b26325c4cc6ec1c089a8367934ffbe3ae86ea6762ed", + "bytes": 3811 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.png": { + "sha256": "e370868af0ecaaca436356008fc24545265e37c63ecb2e8b9fdfdd99fd1a8212", + "bytes": 142862 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.before.html": { + "sha256": "adb8e6f298ffe081b6c79523af3996bb2e95ccbaf9c1dc31d2968862cc63895f", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.html": { + "sha256": "adb8e6f298ffe081b6c79523af3996bb2e95ccbaf9c1dc31d2968862cc63895f", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.json": { + "sha256": "0ae98020ee1f42f82bd2deb850ddb436256ac8777fb87e3ebdb94f462f6047d5", + "bytes": 3814 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.png": { + "sha256": "ce6b21480ba81a5c5b0d172dcd7b44b4fcaf999c4fcd7696fbc3b63305ca6dc3", + "bytes": 147287 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.before.html": { + "sha256": "4b4a1f56a824d930787f3288ee8ce29e1013d2ed61757a94ea68932c7e29af60", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.html": { + "sha256": "4b4a1f56a824d930787f3288ee8ce29e1013d2ed61757a94ea68932c7e29af60", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.json": { + "sha256": "a520606f96c1a0e08d83b3f0c1821bd1e74c514aa2bb5a85cddbc7d66165a077", + "bytes": 3791 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.png": { + "sha256": "12ff4ab7c4bf5c9d15fa6cd71d5b5d43d2684f73b2ff6dc4d84e26ff711ea8a8", + "bytes": 44734 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.before.html": { + "sha256": "c3cef1789fbc8e9e327a86ffdea8e54bb90d062fb7813c5bc18caba4768fb6b6", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.html": { + "sha256": "c3cef1789fbc8e9e327a86ffdea8e54bb90d062fb7813c5bc18caba4768fb6b6", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.json": { + "sha256": "1aff41667b5c71a7a8837fd32990a1da65f759dd33eeb51427d048c26e2372d1", + "bytes": 3790 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.png": { + "sha256": "75dfacf045b4fb2ef8fb3e8aec88f3f5662bbfe513fed7cddfd1dfa2bd31a642", + "bytes": 61815 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.before.html": { + "sha256": "7e37c2ab68fe793a202f44c3b6cbd5e04d8e3d07086a79e33c0b7dd2bb5a4c1a", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.html": { + "sha256": "7e37c2ab68fe793a202f44c3b6cbd5e04d8e3d07086a79e33c0b7dd2bb5a4c1a", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.json": { + "sha256": "5ea3551f00031a2024574e1cd3306b6889ab70d488ccd409f8d3210ed568f8a2", + "bytes": 3818 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.png": { + "sha256": "b2466d0ff97cf542a63593b904a50661332abb1189084f966d03a1152ad93396", + "bytes": 109462 + }, + "evidence/current-consumer-20260905/operator/d3-final-build.stderr": { + "sha256": "aa9b7207d2d2d42fbf4e013331ee76fc39b9b042505b38551893c1f60f35b63a", + "bytes": 342 + }, + "evidence/current-consumer-20260905/operator/d3-final-build.stdout": { + "sha256": "be9dc75957812cac470f8d40434ab7baf382dd612a5cd87ba1297ade132c181c", + "bytes": 604 + }, + "evidence/current-consumer-20260905/operator/d3-final-commands.json": { + "sha256": "c50027c7830d7e61e42fdd3c18cbd4dbb96e42793f187d2f05a5e1f79f554f69", + "bytes": 3360 + }, + "evidence/current-consumer-20260905/operator/d3-final-diff-check.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-diff-check.stdout": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-examples-guidance-smoke.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-examples-guidance-smoke.stdout": { + "sha256": "a76988d0455da311e5797878cecd1be495ffe63b33e13660346e8e5c9e6d4145", + "bytes": 140 + }, + "evidence/current-consumer-20260905/operator/d3-final-lf-normalization.json": { + "sha256": "ad3946ae3f0820a256a0b839baa87ee13cbe90af699928eb835e1b4d23449a2f", + "bytes": 1911 + }, + "evidence/current-consumer-20260905/operator/d3-final-metadata-checks.json": { + "sha256": "97bfce3ca8caf4426cbed16abd81411f11bc5e5c542128767a2edcd700e1a3fa", + "bytes": 352 + }, + "evidence/current-consumer-20260905/operator/d3-final-prose.txt": { + "sha256": "2f4a73aadbf1e87b479d202c9bf5e7a1cd936f159dc5292844f59c18048f91d0", + "bytes": 5982 + }, + "evidence/current-consumer-20260905/operator/d3-final-secret-scan.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-secret-scan.stdout": { + "sha256": "1574dfc9f9dc1c7175652ec851b5944d2d6b0ee97ad1afbcf989783f2090ce34", + "bytes": 141 + }, + "evidence/current-consumer-20260905/operator/d3-final-test.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-test.stdout": { + "sha256": "415a30904771db5a1a8eaeea6001ef3d5022750dbef6055a0f08d881afc20279", + "bytes": 1251 + }, + "evidence/current-consumer-20260905/operator/d3-final-tours-validate.stderr": { + "sha256": "578309586345b873d69f513fcf383357afb83fdbf8edc8fddbda8774c7ec7d8d", + "bytes": 925 + }, + "evidence/current-consumer-20260905/operator/d3-final-tours-validate.stdout": { + "sha256": "dc8b18d469f3ea284dc0a307e769a6bb99d249514925c4d43c316425248704a9", + "bytes": 69 + }, + "evidence/current-consumer-20260905/operator/d3-final-typecheck.command.json": { + "sha256": "9b888dae88823ee1d9e4938e3a961e5bd033289f3979451e04f40dda55541787", + "bytes": 117 + }, + "evidence/current-consumer-20260905/operator/d3-final-typecheck.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-typecheck.stdout": { + "sha256": "1611f2f8467e52eeae9fc30b4f851e7b429aec602524637ddd6f4a9a58d6ae5f", + "bytes": 45 + }, + "evidence/current-consumer-20260905/operator/d3-first-typecheck.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-first-typecheck.stdout": { + "sha256": "1611f2f8467e52eeae9fc30b4f851e7b429aec602524637ddd6f4a9a58d6ae5f", + "bytes": 45 + }, + "evidence/current-consumer-20260905/operator/d3-focus-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt": { + "sha256": "8c3c452e944de438b6449be63f5cbc9b38102fa50dc7c5a8e50c2699914c552f", + "bytes": 5320 + }, + "evidence/current-consumer-20260905/operator/d3-focus-before/src/features/node-agent/components/NodeAgentThread.tsx.txt": { + "sha256": "04e64097b0c543254f59694d6a85e86f5892ba245ad308780af3013ef1284fb8", + "bytes": 4444 + }, + "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.command.json": { + "sha256": "35d95e32b577ec1614b54f2a181df91e87f05eb2be066a165df2666d8ccdef56", + "bytes": 52 + }, + "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.stdout": { + "sha256": "d3207ae164ec553d27128337bafcf866847453c57306650b5584846eeeac432a", + "bytes": 206 + }, + "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.command.json": { + "sha256": "23a0c22580d00eaa8f0f616d4f1cb4c29c70eab2010a093bec6252b5cd5fa5fe", + "bytes": 52 + }, + "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.stdout": { + "sha256": "d3207ae164ec553d27128337bafcf866847453c57306650b5584846eeeac432a", + "bytes": 206 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.command.json": { + "sha256": "dbf4e6f44970b71deb31420fd656478fa3771c0f2371a606f26ae0a0e34837d2", + "bytes": 262 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.stdout": { + "sha256": "81849c8fc4e0f312f9f700a75b64872b1c7ccc07f3603f3708e4af2a49e8f90a", + "bytes": 200 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after.command.json": { + "sha256": "4965158868507ed28ce0c9713c0bbafb94297a53377f185f33ba5fc12effdaf1", + "bytes": 264 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after.stderr": { + "sha256": "a6262f3bc18d1e059bbe7c260ae0dfa6f35ae37facac2d98ca69231ca4cb97e4", + "bytes": 1621 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after.stdout": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.after.html": { + "sha256": "93802404a4ff289806f9540d10a8841cec309d644c1021fadbd2db2133b97be7", + "bytes": 14623 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.before.html": { + "sha256": "93802404a4ff289806f9540d10a8841cec309d644c1021fadbd2db2133b97be7", + "bytes": 14623 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.html": { + "sha256": "93802404a4ff289806f9540d10a8841cec309d644c1021fadbd2db2133b97be7", + "bytes": 14623 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.png": { + "sha256": "5a572d368b6e666892fa186814393ec7db29a4801bf9a048fcb9a74b84391528", + "bytes": 47462 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.after.html": { + "sha256": "fc96fe9a6a8f6823aae8e6e2d51cd087c2f139e9cb71818f1e0a704ed81916fb", + "bytes": 14623 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.before.html": { + "sha256": "fc96fe9a6a8f6823aae8e6e2d51cd087c2f139e9cb71818f1e0a704ed81916fb", + "bytes": 14623 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.html": { + "sha256": "fc96fe9a6a8f6823aae8e6e2d51cd087c2f139e9cb71818f1e0a704ed81916fb", + "bytes": 14623 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.png": { + "sha256": "b36a7a967eef092af86ff1417cc142b8182bf05e335915027c18b31f530e95e2", + "bytes": 35598 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.after.html": { + "sha256": "5c123d864606c7128fd6393efee5afc385ef6b19507e1f264507ac8e8ea43754", + "bytes": 11429 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.before.html": { + "sha256": "5c123d864606c7128fd6393efee5afc385ef6b19507e1f264507ac8e8ea43754", + "bytes": 11429 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.html": { + "sha256": "5c123d864606c7128fd6393efee5afc385ef6b19507e1f264507ac8e8ea43754", + "bytes": 11429 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.png": { + "sha256": "4f9cb8fedbf3fb25f07292e9624c521a078c1cce713fe440b36d8479b8a409cc", + "bytes": 28413 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.after.html": { + "sha256": "477a30d738a7db9e316dd46450d85ab47b260a34f3f561dbf0a352c7af29fb56", + "bytes": 11429 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.before.html": { + "sha256": "477a30d738a7db9e316dd46450d85ab47b260a34f3f561dbf0a352c7af29fb56", + "bytes": 11429 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.html": { + "sha256": "477a30d738a7db9e316dd46450d85ab47b260a34f3f561dbf0a352c7af29fb56", + "bytes": 11429 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.png": { + "sha256": "c3c92b4a3907ad40dbc766b7d20ac8449228fcbeb6f47e1cacb1962b2330314e", + "bytes": 23160 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/report.json": { + "sha256": "0ac3c1b23adee9509c4af8d3bd38bda1299767760cfba8ca02d9bb4ff9dc328c", + "bytes": 67162 + }, + "evidence/current-consumer-20260905/operator/d3-handoff-packaged-before.md.txt": { + "sha256": "17e983697edaf77f341bf588e4618e0cb53f46d6e04ef8e8f9f4914c3ab00d98", + "bytes": 3118 + }, + "evidence/current-consumer-20260905/operator/d3-host-install-02.stderr": { + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "bytes": 150 + }, + "evidence/current-consumer-20260905/operator/d3-host-install-02.stdout": { + "sha256": "9c0a23925ed0f61c116e515f3ac86f72484b07c39ca88f666e1308367904c430", + "bytes": 144 + }, + "evidence/current-consumer-20260905/operator/d3-host-install-03.stderr": { + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "bytes": 150 + }, + "evidence/current-consumer-20260905/operator/d3-host-install-03.stdout": { + "sha256": "f42cbf23e239333ad2c9df50f1b39047eb7f0135eaccd1f8890010b7afba7002", + "bytes": 144 + }, + "evidence/current-consumer-20260905/operator/d3-host-install.stderr": { + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "bytes": 150 + }, + "evidence/current-consumer-20260905/operator/d3-host-install.stdout": { + "sha256": "38d4a818c8f81e88f34d665cd8e9a9684dd2d78fabf44910dea82f70b3b52487", + "bytes": 144 + }, + "evidence/current-consumer-20260905/operator/d3-installed-consumer-02.json": { + "sha256": "62b48f27af6329f3122d4d578a11dc654189edb5c87cc3b2650992ce93396912", + "bytes": 38387 + }, + "evidence/current-consumer-20260905/operator/d3-installed-consumer-03.json": { + "sha256": "1e04ecb75be184c4669c8d3fd3e8f3e1fb498e05366d4fbc43f970dcb7560200", + "bytes": 38387 + }, + "evidence/current-consumer-20260905/operator/d3-installed-consumer.json": { + "sha256": "fae10ad9b9215f01e61d6f54131a151c4bc6e954d0e445efdde0cae90ffb43fd", + "bytes": 38384 + }, + "evidence/current-consumer-20260905/operator/d3-installed-doctor-02.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-installed-doctor-02.stdout": { + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "bytes": 1118 + }, + "evidence/current-consumer-20260905/operator/d3-installed-doctor-03.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-installed-doctor-03.stdout": { + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "bytes": 1118 + }, + "evidence/current-consumer-20260905/operator/d3-installed-doctor.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-installed-doctor.stdout": { + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "bytes": 1118 + }, + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-02.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-02.stdout": { + "sha256": "e6a0b0802dcae37f0871edbb9529c6de8c267fbdd76e7d25d778fdac29399465", + "bytes": 2049 + }, + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-03.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-03.stdout": { + "sha256": "97ee1203b2491dd31963beb8a254e988303431bd1c7774216518701d2a29bdcb", + "bytes": 2049 + }, + "evidence/current-consumer-20260905/operator/d3-installed-scaffold.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-installed-scaffold.stdout": { + "sha256": "d6c942e15a568d6f223322b485ad439264f825f12ae3ac6fda097d6e0fe1fe9b", + "bytes": 2043 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-citation-relocation.json": { + "sha256": "245409157ef54aebccec0e58ffd6fcc482f9dd9335a8969daaaaa49193ff455a", + "bytes": 197 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-focus-before.tsx.txt": { + "sha256": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "bytes": 5161 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.command.json": { + "sha256": "36e5322b09a2fd127ece84b5c6962544670eb635df7414ff603b30db0d2a5a0e", + "bytes": 523 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stderr": { + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stdout": { + "sha256": "5192efce398ea8e42e0e5491510d7c15ed129e70bcb99c148c4f6506be061d81", + "bytes": 484 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.md.txt": { + "sha256": "d91dfa0a68b04f01cc66b0bcc67d7726e502616618789a8128a8bbe0ef966310", + "bytes": 715 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.png": { + "sha256": "8559c7727d6c0a1750d7ffe7e6dc4bb2f7ede81c6c0180dfa9c582dff95cdf38", + "bytes": 76297 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.before.html": { + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.html": { + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.json": { + "sha256": "9e7860273aad6cb70d41aa493f23df595335e8b9b7f32cfa74208bca04c4f0ab", + "bytes": 5891 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.png": { + "sha256": "846136dc3a855a4191839ce33ca98e9d79dd476dca996256865edd6a140b6c36", + "bytes": 72889 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.html": { + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.png": { + "sha256": "544ccbfcb162c1441025eba9bb53f26b7de351a07c7704c135c886a782d658a7", + "bytes": 72872 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/keyboard-scroll-diagnosis.json": { + "sha256": "55db54af6a77501aafffad8d4ae2acb9111e17a4c1817e2c322e990e37b82414", + "bytes": 1143 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/report.json": { + "sha256": "007dfcf15b7c2d539101b54b3bce3b1a6b75a6b6530f9bd2683d7976eed87118", + "bytes": 69620 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.before.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.json": { + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "bytes": 1702 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.png": { + "sha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "bytes": 58620 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.before.html": { + "sha256": "1777b797c4ab6d7213fa74ec2f5e54382191bddd132644b81d6bdc5acf022151", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.html": { + "sha256": "1777b797c4ab6d7213fa74ec2f5e54382191bddd132644b81d6bdc5acf022151", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.json": { + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "bytes": 5899 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.png": { + "sha256": "29a7493e6ac3a9eb3cba4804f8040d2827c465c2a5d05b2660e22c8857f63916", + "bytes": 58202 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.before.html": { + "sha256": "aeb966646b5d6076442f56e8ed8b7830d2e701cd094036b90c5251a9e933b700", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.html": { + "sha256": "aeb966646b5d6076442f56e8ed8b7830d2e701cd094036b90c5251a9e933b700", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.json": { + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "bytes": 5899 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.png": { + "sha256": "c481e005cee97d17a7f53d59ecc2a544369e32a6235277d4366ed43e19dc9707", + "bytes": 58905 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.before.html": { + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.html": { + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.json": { + "sha256": "642561a152465d1c806c5fdcabc6f00a992ba7619cca8c90be7d25d5a633f9ab", + "bytes": 5898 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.png": { + "sha256": "654cf0d4f6001314c345f1b0251b004983cf16ffb0cca46f13d5a444ffdc4873", + "bytes": 75771 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.before.html": { + "sha256": "ed93ea49927d1848280dcb2f572f22e784e2c4d6cf48d999352530608ac460d8", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.html": { + "sha256": "ed93ea49927d1848280dcb2f572f22e784e2c4d6cf48d999352530608ac460d8", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.json": { + "sha256": "1aff41667b5c71a7a8837fd32990a1da65f759dd33eeb51427d048c26e2372d1", + "bytes": 3790 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.png": { + "sha256": "4f2e24a7795ce397f769657bf0374fc4dad5851cf2b0f37a83a9063fd25ef3b9", + "bytes": 61699 + }, + "evidence/current-consumer-20260905/operator/d3-pack-02.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-pack-02.stdout": { + "sha256": "e11980e1856109a5a49eeed701d54fe2a86c74074a9801d83ccf42112f48dc32", + "bytes": 28782 + }, + "evidence/current-consumer-20260905/operator/d3-pack-03.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-pack-03.stdout": { + "sha256": "1555caaa51c0d682e37026c24fd650a1182cc4b94d8d6dc15d7f63454db5324c", + "bytes": 28782 + }, + "evidence/current-consumer-20260905/operator/d3-pack.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-pack.stdout": { + "sha256": "9db89fc7edf9f219f4cdc0e43a08c601fe1aa98287b9add52f4dff1abe6d72f1", + "bytes": 28782 + }, + "evidence/current-consumer-20260905/operator/d3-primary-preservation-readback.json": { + "sha256": "f9d8db5add97926c73e771e38192c5c36eaf51e86d45ff48428863b101012288", + "bytes": 829 + }, + "evidence/current-consumer-20260905/operator/d3-primary-preservation-verified.json": { + "sha256": "ac19b4efa8e540a184852d9c2c21f3dff15171ec8fc481b3e9c86ca51bcb77ad", + "bytes": 630 + }, + "evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt": { + "sha256": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "bytes": 4280 + }, + "evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx.txt": { + "sha256": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "bytes": 3350 + }, + "evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/styles.css": { + "sha256": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "bytes": 6410 + }, + "evidence/current-consumer-20260905/operator/d3-product-before-custody/src/app/styles.css": { + "sha256": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "bytes": 13641 + }, + "evidence/current-consumer-20260905/operator/d3-product-before-custody/src/features/node-agent/components/NodeAgentThread.tsx.txt": { + "sha256": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "bytes": 3401 + }, + "evidence/current-consumer-20260905/operator/d3-product-before-custody/src/features/node-agent/components/toolUIs.tsx.txt": { + "sha256": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "bytes": 5635 + }, + "evidence/current-consumer-20260905/operator/d3-retry-guard-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt": { + "sha256": "1b13c028fb4db0bdf2a7ce91b2a3b9d185a2026b27c068492f3c122c0f1ad7e6", + "bytes": 5495 + }, + "evidence/current-consumer-20260905/operator/d3-retry-guard-before/src/features/node-agent/components/NodeAgentThread.tsx.txt": { + "sha256": "2d2644ae39e93b598d8386807d18fb886d1635e68dd38f5903e3a7b5f8be06fb", + "bytes": 4713 + }, + "evidence/current-consumer-20260905/operator/d3-runtime-state-guard-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt": { + "sha256": "737689cbaac3caae9670c023437877eefe34d611286947e8899e8e1ee6959efa", + "bytes": 5692 + }, + "evidence/current-consumer-20260905/operator/d3-runtime-state-guard-before/src/features/node-agent/components/NodeAgentThread.tsx.txt": { + "sha256": "90c6194898c4330a140b84731928e1573141e96db88158173539d93fe4de12c4", + "bytes": 4941 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-01.command.json": { + "sha256": "2bea3aefe25f049c940de1c8bebfb658d567b010717c6b156d69a669f4dfeecb", + "bytes": 53 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-01.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-01.stdout": { + "sha256": "63ea90dc4a68b1cd0a0595e10831a59565a4fbb4cefa849e31fad43232502b7c", + "bytes": 960 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-02.command.json": { + "sha256": "b6a94d61fceaf70c2198ff946038ab841f60b57616c1dfa638759686e338a26d", + "bytes": 53 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-02.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-02.stdout": { + "sha256": "e4f49b9ae665c31e6d5258505630bd35d85fe410861d66876acdbf66bfcdf1bf", + "bytes": 745 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-03.command.json": { + "sha256": "351f0aaa5dc66de62a8a176f5197da7d3731af51b661555d8e1db2ac71723a5f", + "bytes": 53 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-03.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-03.stdout": { + "sha256": "d3207ae164ec553d27128337bafcf866847453c57306650b5584846eeeac432a", + "bytes": 206 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after.command.json": { + "sha256": "32ca14e4c93bd39af98c01a748f3503483f2953cca1bd765183e601d8e69e8bf", + "bytes": 260 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after.stderr": { + "sha256": "f51f78c20b8fd4d325f92d97e6cb3d8bde61a8db6be8bdc118cd8fa4323b5cf3", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after.stdout": { + "sha256": "eb71d02b08461475c2bf895acb53c4cad3cd072b7565bf00feb0fc57c6bbcc36", + "bytes": 542 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/report.json": { + "sha256": "891b91c24dc53ac23392dd45044c9d8d2aff7303fe02e679a31746686d80e5b1", + "bytes": 113363 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.after.html": { + "sha256": "648ef36168785001c975a10566f14a820596fabc1284ec6e0219bf9f15607126", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.before.html": { + "sha256": "648ef36168785001c975a10566f14a820596fabc1284ec6e0219bf9f15607126", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.html": { + "sha256": "648ef36168785001c975a10566f14a820596fabc1284ec6e0219bf9f15607126", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.png": { + "sha256": "d6bffd8792afcf80f5ee707750829a0f9480757b2bc0ba4eb34c13eba3877a7c", + "bytes": 107187 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.after.html": { + "sha256": "c85ba3ce6249043c62be6bc73907d82f7f77c59fcefe8cde15fc18bc70d6c28e", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.before.html": { + "sha256": "c85ba3ce6249043c62be6bc73907d82f7f77c59fcefe8cde15fc18bc70d6c28e", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.html": { + "sha256": "c85ba3ce6249043c62be6bc73907d82f7f77c59fcefe8cde15fc18bc70d6c28e", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.png": { + "sha256": "dc646a03b5847107cabc0a8fbcc03df3860582d796ad05e246ea5e03afbb7f65", + "bytes": 115853 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.after.html": { + "sha256": "cbbb396c37407962f115ddfe0b60b2677e0a4550ea578a5b965e6b47538fefd8", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.before.html": { + "sha256": "cbbb396c37407962f115ddfe0b60b2677e0a4550ea578a5b965e6b47538fefd8", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.html": { + "sha256": "cbbb396c37407962f115ddfe0b60b2677e0a4550ea578a5b965e6b47538fefd8", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.png": { + "sha256": "235215a40fb09444529bf04720c3357e3b2be192edb2ffbdb36679a24539d506", + "bytes": 119769 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.after.html": { + "sha256": "10bc6c6eccd613e5980e1d2dffe9f87fd4861fd5c0928be378e91c4f26bfe128", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.before.html": { + "sha256": "10bc6c6eccd613e5980e1d2dffe9f87fd4861fd5c0928be378e91c4f26bfe128", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.html": { + "sha256": "10bc6c6eccd613e5980e1d2dffe9f87fd4861fd5c0928be378e91c4f26bfe128", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.png": { + "sha256": "1e25cfe2702214ae85b9e6b3f1a233102e3078b571d2daaab0bf82f7c5cdb08d", + "bytes": 51647 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.after.html": { + "sha256": "38c0b973540ae1f394c613bf605e4c211d720277a237dfd2f2322e0df598f016", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.before.html": { + "sha256": "38c0b973540ae1f394c613bf605e4c211d720277a237dfd2f2322e0df598f016", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.html": { + "sha256": "38c0b973540ae1f394c613bf605e4c211d720277a237dfd2f2322e0df598f016", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.png": { + "sha256": "133256ed2c9bfbfc6f02ef0da27411bb7c1a17e10edf1f8c401c9a451b15c63a", + "bytes": 67735 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.after.html": { + "sha256": "5879f1e8cc5ef03922d81fea089b44cabf585c09c8ea927a525499fe582e593c", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.before.html": { + "sha256": "5879f1e8cc5ef03922d81fea089b44cabf585c09c8ea927a525499fe582e593c", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.html": { + "sha256": "5879f1e8cc5ef03922d81fea089b44cabf585c09c8ea927a525499fe582e593c", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.png": { + "sha256": "10024c8bf9b57877ffb6e0cc7089fb96ef843f48a39eeea96c2a84da1bb02f31", + "bytes": 100489 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.after.html": { + "sha256": "270be4e7ec1b72ff3359a5956d42d56bf880f95843ab98af0298ec186857c4f1", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.before.html": { + "sha256": "270be4e7ec1b72ff3359a5956d42d56bf880f95843ab98af0298ec186857c4f1", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.html": { + "sha256": "270be4e7ec1b72ff3359a5956d42d56bf880f95843ab98af0298ec186857c4f1", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.png": { + "sha256": "b09b2b01f37a29dde76805aead4a0a07ea614a976f121738826c8f6a7df1b791", + "bytes": 46261 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.after.html": { + "sha256": "4ae6563bb2417d9d81491586bb997d04da76ba24f2493d8313ef14987b43d57e", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.before.html": { + "sha256": "4ae6563bb2417d9d81491586bb997d04da76ba24f2493d8313ef14987b43d57e", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.html": { + "sha256": "4ae6563bb2417d9d81491586bb997d04da76ba24f2493d8313ef14987b43d57e", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.png": { + "sha256": "3e75fbcf907d074f0a3487b34487f77eb976214f5b69a3c09cbb634f224288f1", + "bytes": 54475 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.after.html": { + "sha256": "65e0d482bcd46b46a782ee086b2e4ccd9d75d4dc5359b3421fb6c8f9494767d6", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.before.html": { + "sha256": "65e0d482bcd46b46a782ee086b2e4ccd9d75d4dc5359b3421fb6c8f9494767d6", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.html": { + "sha256": "65e0d482bcd46b46a782ee086b2e4ccd9d75d4dc5359b3421fb6c8f9494767d6", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.png": { + "sha256": "009fdbd78f0e6af1c107ca20f7bdbedac63f4c4c69015ab4f826a9f002fd0251", + "bytes": 57241 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.after.html": { + "sha256": "172585daf2cf4be2cf72e1bb853d58f363057206998043228e0d41b1f51acfa7", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.before.html": { + "sha256": "172585daf2cf4be2cf72e1bb853d58f363057206998043228e0d41b1f51acfa7", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.html": { + "sha256": "172585daf2cf4be2cf72e1bb853d58f363057206998043228e0d41b1f51acfa7", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.png": { + "sha256": "c9f0a54175296caf8ec1dac28b7efdafc2a48ba7b834b8ac3e1c0c8cb8020df6", + "bytes": 35556 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.after.html": { + "sha256": "03149366edbdd8514cdc62d9790e1f4cc6b26cb0fa8a2c802ecd557dd54ef8ac", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.before.html": { + "sha256": "03149366edbdd8514cdc62d9790e1f4cc6b26cb0fa8a2c802ecd557dd54ef8ac", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.html": { + "sha256": "03149366edbdd8514cdc62d9790e1f4cc6b26cb0fa8a2c802ecd557dd54ef8ac", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.png": { + "sha256": "02f3cdccee3dc97499d21ac9fabfc93c4720847dbc6651cad2080a6f5eb20400", + "bytes": 37795 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.after.html": { + "sha256": "2d463254009e7853685c0152595578a51b4e8ea7f935fc91432056ffe5aef54c", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.before.html": { + "sha256": "2d463254009e7853685c0152595578a51b4e8ea7f935fc91432056ffe5aef54c", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.html": { + "sha256": "2d463254009e7853685c0152595578a51b4e8ea7f935fc91432056ffe5aef54c", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.png": { + "sha256": "60b103f5712b7d02a41c96e65a727243a8306a755d5af9f75a03e41b94108aee", + "bytes": 49548 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-01-harness.mjs.txt": { + "sha256": "71d5cc86b7b7b6ed1334814a8c4c170ddf7fd354c1d42134bc98a36f48158ff7", + "bytes": 12958 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-01.command.json": { + "sha256": "4794c1786f09d2f2e348aa05d46beddb2a51dd9217191571cfa89a6227c818ca", + "bytes": 393 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-01.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-01.stdout": { + "sha256": "b5a5efccf2dfb0707d1e8b1e35e025f0fa88f1d257512b3eedb6b8f2d6536402", + "bytes": 653 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-02-harness.mjs.txt": { + "sha256": "ced9b544ccd3a5df3c45b55d3d48ce007da210a5583b055a2ef450f912fc443a", + "bytes": 13238 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-02.command.json": { + "sha256": "a4dcf8c89f09f6d22f1d28c3d924ddcd383616bd24d16fef763e3ae3d166e985", + "bytes": 394 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-02.stderr": { + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-02.stdout": { + "sha256": "927d6c44fc14d5701f1fd566887d6bb6989ac6f69133c32f6e93380f9265018c", + "bytes": 668 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-03.command.json": { + "sha256": "d4fb994f6a46cf8dc6b7619b963c1b3048e4fbca414f876dc084453e80969f18", + "bytes": 394 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-03.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-03.stdout": { + "sha256": "dfcb82d49f334b0344810f1f0bcf2669473ad310508529e09bc7d7db56d42eb1", + "bytes": 669 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-04.command.json": { + "sha256": "c239aa53ff6c43231d3d5db6cf247a15a3dc7dab2cc3053a8944742568b03cb5", + "bytes": 393 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-04.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-04.stdout": { + "sha256": "be0ce753748c33e06db528c96582a8fcd09b075090705a425ddbaad5ec924000", + "bytes": 669 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-05.command.json": { + "sha256": "86c8622f98a3ed9469e68094efb6a762ddf2d13373e1a19d4de1c32aa21bed97", + "bytes": 393 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-05.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-05.stdout": { + "sha256": "912572a5393b15e106742684ef0295dcc9d98371ae730ec20738fe91898ed968", + "bytes": 646 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-06.command.json": { + "sha256": "b30472c4e21a9a85e126c0638a51e9692ba75ba5859276d7552166a4e79c719e", + "bytes": 395 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-06.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-06.stdout": { + "sha256": "1f009737630b0a9383f453690758f0ab523e395e921b163f711ee7c361a4e3c3", + "bytes": 204 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay.stdout": { + "sha256": "ae8b7e6b4aaeb7505f427d7ec2c6f147c6579e81dacf3779e936328c5a145cb3", + "bytes": 215 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.json": { + "sha256": "fef437686da90fb30c1695bf24857511ab673fd3433fde6e2f9fc08b1945edde", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.png": { + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "bytes": 35614 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.json": { + "sha256": "570231f3dcf9edb056c264107537aff3355767bbf55b03ce4a7746e27e4e191c", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.json": { + "sha256": "d024eeecbb79068c08c972afdd4a8d3ddfe32dd74e4bddcadf0a3456b4c8d254", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.png": { + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "bytes": 38890 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.html": { + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.json": { + "sha256": "a25457e20907bfb6d736e476b94a79b57c4a319f09d74649179e9b81e6be2466", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.png": { + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "bytes": 27800 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.json": { + "sha256": "2f08689787e6860b5d9423a2cd3e159db596db8834ae60d84b3db90084612fc9", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.html": { + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.json": { + "sha256": "be0f1a4a8e09376b3fdd294b0a71164fb4dc27ab75f71d7ad7f15d0d7b56278c", + "bytes": 780 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.png": { + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "bytes": 34212 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.html": { + "sha256": "08af8eabc5c206dc1df038ad7e626d2391afac007ff41095b01e20072db8013a", + "bytes": 13979 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.json": { + "sha256": "4611766c84391fb828b9b8dbfaa8d102afb105feb6d8f4763cf8eea3908c2227", + "bytes": 1677 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.png": { + "sha256": "db5b14a2d4e77e3545d129ee6413f70874b349de7c7d67fe60ff75b23e824174", + "bytes": 56598 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.html": { + "sha256": "793461c26c95da766166fdb577844fca1443237da6ada15fc94f2685e44f83a5", + "bytes": 13979 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.json": { + "sha256": "2111cab62fbf611ed9b809b45d2428acbeb22dae793b9fd4934e9f2a1330a093", + "bytes": 1677 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.png": { + "sha256": "0bc2f3246755af576a03fd013a3f79acb377261ab1b0b7a2ae0be65d99110ffb", + "bytes": 58800 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.html": { + "sha256": "73dea16d9f1347b2a8789cd1bd94ccc8c18ac0df1f3dc2770a63020e691a9fba", + "bytes": 13979 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.json": { + "sha256": "24c927e26722f21d7dbb66d43375b3fcf16df9ec580abc95af5bfff9fc183f96", + "bytes": 1677 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.png": { + "sha256": "f35bc072e2f56b00950ad4a12abd14df26e1562deb707c54e460123d022714bc", + "bytes": 61278 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.html": { + "sha256": "c0a6b20980d2272a9b2fe2c39a84c9e0e608609c3046742015f801f74dd7034c", + "bytes": 13979 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.json": { + "sha256": "a0a233af0d13d1bfe6a59c721b97a19d33e0a9c884a8f675f90f78aedfcf7122", + "bytes": 1667 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.png": { + "sha256": "62b1ec0fc69fb0c4b1c4caf0c3705c8d6f552402e50c611a8625aed21690b64c", + "bytes": 29749 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.html": { + "sha256": "4abbc70660c6b45b9453913d3483682d83810c7c29f35493e9a6434aa1eb5f1d", + "bytes": 13979 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.json": { + "sha256": "b1e150f695d7ada8904a8059483be051293418ce5079af34aa1e20c781ac02c6", + "bytes": 1667 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.png": { + "sha256": "382ec6f9a7846cc694a7ffb848dccb1ded561a8d64e2c2ff5c5e7834d499cc6f", + "bytes": 31073 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.html": { + "sha256": "ffa36bfdc179d8065687805be10642a1ab38553049691ec5cfa4b94056994fff", + "bytes": 13979 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.json": { + "sha256": "4f908d7aad0b43c938864ab320afb5e90741607744de0675e078859eb22f39c5", + "bytes": 1676 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.png": { + "sha256": "8f39389bb97178ffa7148afde59ec70d87173744f8188295f37726a0250d7ee0", + "bytes": 53412 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.json": { + "sha256": "fef437686da90fb30c1695bf24857511ab673fd3433fde6e2f9fc08b1945edde", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.png": { + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "bytes": 35614 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.json": { + "sha256": "570231f3dcf9edb056c264107537aff3355767bbf55b03ce4a7746e27e4e191c", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.json": { + "sha256": "d024eeecbb79068c08c972afdd4a8d3ddfe32dd74e4bddcadf0a3456b4c8d254", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.png": { + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "bytes": 38890 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.html": { + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.json": { + "sha256": "a25457e20907bfb6d736e476b94a79b57c4a319f09d74649179e9b81e6be2466", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.png": { + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "bytes": 27800 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.json": { + "sha256": "2f08689787e6860b5d9423a2cd3e159db596db8834ae60d84b3db90084612fc9", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.html": { + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.json": { + "sha256": "be0f1a4a8e09376b3fdd294b0a71164fb4dc27ab75f71d7ad7f15d0d7b56278c", + "bytes": 780 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.png": { + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "bytes": 34212 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.html": { + "sha256": "279c5b5fec35dd8d4e46f4c362fa86b0cd6c690a31abaa02a9085312bc9fff07", + "bytes": 11513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.json": { + "sha256": "a9b9aac93faf2f230f0af32b49d022f83748e2a1f5301ce0f33ae36896811d5f", + "bytes": 630 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.png": { + "sha256": "9fc2d4e713fd9535791513e5091d0de8996203dc06e2b7fb09a1987088742f4d", + "bytes": 30783 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.html": { + "sha256": "a9826b49566c311d5a9ef2af25e6a21720d44f34d60b3bfa72d11ca9524bcd9e", + "bytes": 11513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.json": { + "sha256": "f2df5710790fd3c84c38228f5f3ab4306f08e07bdf3dca9ec6e2c8b9d345b082", + "bytes": 630 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.png": { + "sha256": "35af4cbe6bbec6c1162e77e788b645ed9f41d0d579e2f9a4e26cfaf1c113bdcf", + "bytes": 32109 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.html": { + "sha256": "c4ed8eb882cb0d9450fccb0727c65c55566d95305710b04acddc229e0926de41", + "bytes": 11513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.json": { + "sha256": "1d687c735c43b60b405b61e1cc35fc6063fc95da089757727475f3af69c002aa", + "bytes": 630 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.png": { + "sha256": "8f132143a465e72aab76b3d538be286fd5086d5489eb4ec3cb86ed5caba9eabb", + "bytes": 33534 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.html": { + "sha256": "556f310301df656811f63f7a3c39381537a8271411a651045c52e65433006883", + "bytes": 11513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.json": { + "sha256": "7a31d5b1bb58afcb24b781c84e97764284b877ce50aaa15f85762e9aa8954239", + "bytes": 620 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.png": { + "sha256": "2463b6b0dd814a68aa8a11add62698f312dc14965a58d3fd1e4cae25f0d95dce", + "bytes": 25919 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.html": { + "sha256": "050cc89d76579291b5c5eb4f5e5a4ecd5b4eaeec9d028397b812f954a3220268", + "bytes": 11513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.json": { + "sha256": "4dcee313bacf29c80513a6f8d9d889b17cc7b1606d701fe680499f1a788e3dc0", + "bytes": 620 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.png": { + "sha256": "481085b6770cbd83d8ad02ff39cd2092363b987a419579ce37a6272b3c3828f9", + "bytes": 26556 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.html": { + "sha256": "1013ffce65391aa4031c6ba8b071b843e1288c903437f6b12246a6d16df3d5f0", + "bytes": 11513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.json": { + "sha256": "8294a7d40d6695029d36a14b021fdb16d349e1d5393b8b3011681f61d65e8f76", + "bytes": 629 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.png": { + "sha256": "e8dae771111a83055368058a7fd6e1fca1e8b7fdddec46e31e98bdd9ac2278f8", + "bytes": 30386 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.html": { + "sha256": "c0fbc071bf0bf60a14580f706be1c97037923078c664a117dc2fc2b203b06fbf", + "bytes": 34380 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.json": { + "sha256": "f5453e29c2451fba43df437a73399c3a7f896983fdd11f41ab866b4d0bb292a5", + "bytes": 6513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.png": { + "sha256": "9edf791fc10d37996214708c197022e52134cae4af28e9b7b4d2d404946a763e", + "bytes": 30267 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/report.json": { + "sha256": "67e4a2f55c64c5cacb076009260b6db7ac85b291c4d36a2489d323d2888383fd", + "bytes": 128638 + }, + "evidence/current-consumer-20260905/operator/d3-worker-visual-inspection.json": { + "sha256": "1bf7cf2bed41b89fe4e77b31b008e6421c51e0ef1274968c93c02646c719c476", + "bytes": 5548 + }, + "evidence/current-consumer-20260905/operator/dependency-repair-freeze/HANDOFF.md.txt": { + "sha256": "17e983697edaf77f341bf588e4618e0cb53f46d6e04ef8e8f9f4914c3ab00d98", + "bytes": 3118 + }, + "evidence/current-consumer-20260905/operator/dependency-repair-freeze/e2e/current-consumer-proof.mjs.txt": { + "sha256": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "bytes": 9566 + }, + "evidence/current-consumer-20260905/operator/dependency-repair-freeze/examples/apps/chat-ui/template/package-lock.json": { + "sha256": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "bytes": 235233 + }, + "evidence/current-consumer-20260905/operator/diagnose-d3-enlargement-02.mjs.txt": { + "sha256": "d927ddd3fcf0359e0df5be937aa35d084a6f06ad16c4f718337e596e72467e8a", + "bytes": 18412 + }, + "evidence/current-consumer-20260905/operator/diagnose-d3-enlargement.mjs.txt": { + "sha256": "222fc550f2c5f7db79bc9bc24383da74102da817355082341f04e9e7cc312094", + "bytes": 18303 + }, + "evidence/current-consumer-20260905/operator/diagnose-d3-keyboard-scroll.mjs.txt": { + "sha256": "d19e7a45d98d37bf58a926f7c5d775011e550e5f3e4bb89f07441fe332f23511", + "bytes": 18648 + }, + "evidence/current-consumer-20260905/operator/diagnose-dependency-comparison.mjs.txt": { + "sha256": "af193a6c3fdf45800eacad574a1d794390cad26a2a79758f1f44b64a398f5b26", + "bytes": 7149 + }, + "evidence/current-consumer-20260905/operator/diagnose-first-submit.mjs.txt": { + "sha256": "31544790508aba81975972f1e7f1309156d9b289fea0cb80397413a882a948ea", + "bytes": 6491 + }, + "evidence/current-consumer-20260905/operator/durable.json": { + "sha256": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "bytes": 798 + }, + "evidence/current-consumer-20260905/operator/durable.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/durable.stdout": { + "sha256": "63c4aa3726029258df491bb45b000952202358eb18952fb55badccdfd25174ff", + "bytes": 119 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.html": { + "sha256": "d894f372a4684549965b43175343fbc84cb9dd2f742528136fbaec13aaad958b", + "bytes": 13614 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.png": { + "sha256": "dfe6dac19f02fa877e68d2f7b2ab9bd34b63e40672b97f03f1e10817643cdf76", + "bytes": 48118 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.md.txt": { + "sha256": "fd72dcc3e3aa36dba9cd7fb8b99c5cfe99dfc6c3ff80fc1472d12af2910f9fa0", + "bytes": 2287 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.png": { + "sha256": "1f293044017241177f2d0309a4d38666354094aa0d89a795a391872a1f72313a", + "bytes": 50055 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.html": { + "sha256": "c48d41aec4b70653d1332500c71ddb48206c00ebd0ee17b71e3725d0d485f98f", + "bytes": 13614 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.png": { + "sha256": "8b93816c80e6a031e5c3ef55f59908de5aabe94deb66a689f0c85aa33053be09", + "bytes": 36326 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.md.txt": { + "sha256": "076356849f3dac9ed2bbdf468f204451a030d18f8cfdcea78185bf2979d70e2d", + "bytes": 2286 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.png": { + "sha256": "d67b6e1aa81d6ff5faa4145a7788a14b8df5fdacc00c5680c8ff5a31371262ea", + "bytes": 38148 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.html": { + "sha256": "761fd28a3263db95a2a84d562098e5b4159d57b9ded1eb6ee19dafc84cc940c7", + "bytes": 11046 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.png": { + "sha256": "eda7a7723d479187fb0619ca86cefed2f1d9823b58384b13791a3b2b3f9b5eff", + "bytes": 28307 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.md.txt": { + "sha256": "20ff3ba4e0960bec3ac05ba539ad1b56982aeaf8ff1dd2a5a3334fc61c668f29", + "bytes": 2289 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.png": { + "sha256": "ba11f02e651c2aed2d457cd399ca65e2cc47ffe9758968ced9704edef32e1fac", + "bytes": 30441 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.html": { + "sha256": "18c21072f507296df813237d77664c79e2ca96af59888f36b60364872f44d9fb", + "bytes": 11046 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.png": { + "sha256": "f7572cfed5aac624f85da0982a77a257cb4ffb734e4a62f1f0f83df785b2d5a5", + "bytes": 22898 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.md.txt": { + "sha256": "c8319944cc77c6ea945680c9ad7bbfb5b82218e3c19a0554c5413e939d682e27", + "bytes": 2288 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.png": { + "sha256": "3d2adb7dc5324fea59764955b7b5b880b36924fff4de9c20cc34ce70a54ce7e8", + "bytes": 24761 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.html": { + "sha256": "9ccdedbb36c9831763cd818531941ced8aa40ef2bb383c2d9e4c62e1a22e881a", + "bytes": 24798 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.png": { + "sha256": "3d883b2f102989efad6aa4db4d01f6d6011686080a400fa011afc09af248ca20", + "bytes": 122472 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.md.txt": { + "sha256": "18e6d7be52d41e4456ffc908babd4fe09b5cc8041bf68dee6b7f4def573c86d8", + "bytes": 2197 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.png": { + "sha256": "835986f05145c79da8c42d8198702795cc83d4b0cfa382f9cb825e83268a2a36", + "bytes": 123664 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.html": { + "sha256": "c8ef7c6661e61f00522ffc8029d161a4f00c129aa76357ca459b2239bfb10854", + "bytes": 24798 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.png": { + "sha256": "cb8f8708db77c224540ab29df4c5ccea80154c0c670a1913bd12332065c65e37", + "bytes": 66921 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.md.txt": { + "sha256": "1afe921376e9e4241d61153ffa2903387f7d4e57423359e0a4b66a7cdea9715b", + "bytes": 2196 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.png": { + "sha256": "02217ecb45988088b5c8a329d439cf1edf36daff0c94485eaad75edbd58406ec", + "bytes": 68240 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.html": { + "sha256": "c1b66551d2d8e0cb2f23ab9f851daef0ffa3038a339c371bbce1b51094f47136", + "bytes": 18200 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.png": { + "sha256": "5b01100cf1f778ff6d40bab901e78c1eb8fa9e66a639d6347a2b7b9a4d594c37", + "bytes": 53671 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.md.txt": { + "sha256": "3a3d36d5efe8398f1d2590e2cffe21bf6a83caa2826b228043da203238bcdb97", + "bytes": 2199 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.png": { + "sha256": "f5e8fbf4b550ddf1270bb4b1dd2ba01677aae3b586cde19143a55651b8d08ef4", + "bytes": 55404 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.html": { + "sha256": "d85ebdfe201f4b84132465fecd094e047aaf63d8eb79d72d9e67dcf023b50998", + "bytes": 18200 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.png": { + "sha256": "5a9c04c5e13b4d0fd042195ad1b085e9983dc4c64ceea89b16f98ee074d2f51f", + "bytes": 37104 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.md.txt": { + "sha256": "0188548c94d2f20e5457ddb1618a24ba6e220c1553b6d1f64900fb22937a6507", + "bytes": 2198 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.png": { + "sha256": "0e61aa353c714c586a86f780e6edee68d43e5d4a26b68b8b98ae0d4ebfaea873", + "bytes": 38466 + }, + "evidence/current-consumer-20260905/operator/existing-target-refusal.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/existing-target-refusal.stdout": { + "sha256": "c86fbc0b75aaf748e98f15c1d9164a987178241b6305db389b148321d418c998", + "bytes": 510 + }, + "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.command.json": { + "sha256": "6d1af5393673ee710d1cc3548719ac70b009c8b70fbd41d03b3ff703e675d995", + "bytes": 53 + }, + "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.stdout": { + "sha256": "288ec9e5389b4a42284451223ed0c055f40e3ff50f439d2755c5e210c4325851", + "bytes": 254 + }, + "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.command.json": { + "sha256": "7249780c8f8ce5e6657a1dfcab481617c22124482f1b0077bc19faad316f71d8", + "bytes": 53 + }, + "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stderr": { + "sha256": "0f0101da9e13b0b9ff730a51a7fc8f97a48df7578a0446eafb8608a6649cb606", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stdout": { + "sha256": "cab47cf593ac8b76b0895c10b2defc9d94d131c6f3a783cf1b1a9c28e3326362", + "bytes": 627 + }, + "evidence/current-consumer-20260905/operator/frame.json": { + "sha256": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "bytes": 513 + }, + "evidence/current-consumer-20260905/operator/frame.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/frame.stdout": { + "sha256": "3930a6e7a06514d750370d57d4c847d207e7e65ad7cb37ec7e6a427a57102137", + "bytes": 92 + }, + "evidence/current-consumer-20260905/operator/host-install.stderr": { + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "bytes": 150 + }, + "evidence/current-consumer-20260905/operator/host-install.stdout": { + "sha256": "9c0a23925ed0f61c116e515f3ac86f72484b07c39ca88f666e1308367904c430", + "bytes": 144 + }, + "evidence/current-consumer-20260905/operator/install-consumer-commands.json": { + "sha256": "efdddba96f40774206af664cc1b000d44c5542aca22a4eec7665d6f469e6a8b8", + "bytes": 3987 + }, + "evidence/current-consumer-20260905/operator/installed-apps.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/installed-apps.stdout": { + "sha256": "8e1a0749d92500e1c135eca70a6d0de1d72cfa69a1bbb2616c7d156a9fb9f7dd", + "bytes": 453 + }, + "evidence/current-consumer-20260905/operator/installed-consumer.json": { + "sha256": "2c8795ab4e1631cb87b71a470b6a665cc9c22c6e94cbf3b2bd95cdc48a6ff481", + "bytes": 667 + }, + "evidence/current-consumer-20260905/operator/installed-doctor.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/installed-doctor.stdout": { + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "bytes": 1118 + }, + "evidence/current-consumer-20260905/operator/installed-scaffold.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/installed-scaffold.stdout": { + "sha256": "fa6d77785236eab1b2afc92aa364673c47c9ca6c8f3d80790e50016f2b48ac24", + "bytes": 2028 + }, + "evidence/current-consumer-20260905/operator/locked-browser-01-harness.mjs.txt": { + "sha256": "16497d628f5bec3dfae29f522f2702c9966bbcb4cbbbb78204db1dcd969662ef", + "bytes": 14004 + }, + "evidence/current-consumer-20260905/operator/locked-browser-01.command.json": { + "sha256": "888a86630c4ba453cbf632af6e36de5787e5a3b4c0a2a35f970e0600e2132703", + "bytes": 386 + }, + "evidence/current-consumer-20260905/operator/locked-browser-01.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-browser-01.stdout": { + "sha256": "b297de53b8051524a0e517517205efa1ea56a9c840059ac2683956042d5afcc1", + "bytes": 601 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02.command.json": { + "sha256": "9dc13fab78e72c70dafeea9ff0f435054fe5bdf3fea090e5b68bd533685ad4d6", + "bytes": 361 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02.stdout": { + "sha256": "9d32b1bff4d343703e17fac68be10081276fd299dc23b7a377d6647129c633fc", + "bytes": 204 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.html": { + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.json": { + "sha256": "20472708b8e160864ed2c59112089c060a39d29536f9883cc4c66fdbd2bbb3a1", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.png": { + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "bytes": 35614 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.html": { + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.json": { + "sha256": "7ef87274b0a92f189bbe41a853b0c9a7036b4e165efeedf976812f01fb15b014", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.html": { + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.json": { + "sha256": "1a29b3e2698a1ca8e44b68769bc0d4e820520eee04991f58af82e9381c1fab91", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.png": { + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "bytes": 38890 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.html": { + "sha256": "ea0f8421cb234cdbf7828496ee341b0cd90f56d91b9e91e016a14df74b871e69", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.json": { + "sha256": "13772bc5a2d076ba18c595eac522a49fbd6e82c6e08ad376f3080d2e116ddbf9", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.png": { + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "bytes": 27800 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.html": { + "sha256": "0c376ea4fa6e3709fffb76aaf77e5d7938ae941f74e64e0182bcfd282bbc8e42", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.json": { + "sha256": "5e88f45ae5a4624760dd89f10284284574699bf6a0f67b72fd4b6fd0a04a8fc2", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.html": { + "sha256": "116ece6fc1a4651fcf5c94a5cb818d3032c335e7a63bc52f10cc88875cf0a680", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.json": { + "sha256": "dcc42f10b4d8b7581db9ad2b758750b17a3119c783d3d56917145561f3de4f8b", + "bytes": 780 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.png": { + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "bytes": 34212 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.html": { + "sha256": "932bd9519c8d38b5e35b503c172f80035e2509992d351c246c2d1ca4d2bb219e", + "bytes": 13112 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.json": { + "sha256": "51686d3ac465d75e318db0c05a56c67c54601b88a07bb0974a3ac85a9133ea30", + "bytes": 1677 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.png": { + "sha256": "db5b14a2d4e77e3545d129ee6413f70874b349de7c7d67fe60ff75b23e824174", + "bytes": 56598 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.html": { + "sha256": "5ef2d07b3f7f9e9291ad25f265cbd7a67384e07e43fabc946601a9fad1cf392c", + "bytes": 13112 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.json": { + "sha256": "fdba9ca269ec34af9d0202f2c7e81cc3294bcae2e02cfc35b6123154c3b8f15e", + "bytes": 1677 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.png": { + "sha256": "0bc2f3246755af576a03fd013a3f79acb377261ab1b0b7a2ae0be65d99110ffb", + "bytes": 58800 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.html": { + "sha256": "58ae7362a88ce6b6dc5de1999ae6295bb566b6c0622322a8ee6ed81eb528d2c4", + "bytes": 13112 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.json": { + "sha256": "28f2a28b81229dd3c15189ce62e73b2c8bedcabfad22e5cb88ae81f95e1ff70b", + "bytes": 1677 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.png": { + "sha256": "f35bc072e2f56b00950ad4a12abd14df26e1562deb707c54e460123d022714bc", + "bytes": 61278 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.html": { + "sha256": "1c7cfa5ffc46f66c135f85cc2d431a7678fd8e79d4a644e56f6d50dbb4e3f40e", + "bytes": 13112 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.json": { + "sha256": "ab3020b59a546744f990f4f0e95a4e5267fdd9eb513e2a3b7cb263bdb06bd8be", + "bytes": 1667 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.png": { + "sha256": "62b1ec0fc69fb0c4b1c4caf0c3705c8d6f552402e50c611a8625aed21690b64c", + "bytes": 29749 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.html": { + "sha256": "d549ad323a9802ff3f4ab4857270de8129c79026d7e21d449f0c33b0d11cc669", + "bytes": 13112 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.json": { + "sha256": "6a00ae537c6e45fddb576f7cf5480ee2772df51bff88b7a244344d3bd081d51e", + "bytes": 1667 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.png": { + "sha256": "382ec6f9a7846cc694a7ffb848dccb1ded561a8d64e2c2ff5c5e7834d499cc6f", + "bytes": 31073 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.html": { + "sha256": "b796ffb3289eab304678df257bd62a87d970bfd644b56a852dd315719356d614", + "bytes": 13112 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.json": { + "sha256": "ad6672150db00d25b65209a6b261788739e14a664fdd62a567be945466b46302", + "bytes": 1676 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.png": { + "sha256": "8f39389bb97178ffa7148afde59ec70d87173744f8188295f37726a0250d7ee0", + "bytes": 53412 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.html": { + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.json": { + "sha256": "20472708b8e160864ed2c59112089c060a39d29536f9883cc4c66fdbd2bbb3a1", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.png": { + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "bytes": 35614 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.html": { + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.json": { + "sha256": "7ef87274b0a92f189bbe41a853b0c9a7036b4e165efeedf976812f01fb15b014", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.html": { + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.json": { + "sha256": "1a29b3e2698a1ca8e44b68769bc0d4e820520eee04991f58af82e9381c1fab91", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.png": { + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "bytes": 38890 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.html": { + "sha256": "ea0f8421cb234cdbf7828496ee341b0cd90f56d91b9e91e016a14df74b871e69", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.json": { + "sha256": "13772bc5a2d076ba18c595eac522a49fbd6e82c6e08ad376f3080d2e116ddbf9", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.png": { + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "bytes": 27800 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.html": { + "sha256": "0c376ea4fa6e3709fffb76aaf77e5d7938ae941f74e64e0182bcfd282bbc8e42", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.json": { + "sha256": "5e88f45ae5a4624760dd89f10284284574699bf6a0f67b72fd4b6fd0a04a8fc2", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.html": { + "sha256": "116ece6fc1a4651fcf5c94a5cb818d3032c335e7a63bc52f10cc88875cf0a680", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.json": { + "sha256": "dcc42f10b4d8b7581db9ad2b758750b17a3119c783d3d56917145561f3de4f8b", + "bytes": 780 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.png": { + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "bytes": 34212 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.html": { + "sha256": "b45ac31b9a71c27b8459a4952bf4263ce3d17b7e4fc05b6563729ab95643b010", + "bytes": 11130 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.json": { + "sha256": "c6f4b04eea6f95f4562cf06d405516509407b1cbc1077dfd42bafb63051bd115", + "bytes": 612 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.png": { + "sha256": "062ef6da15f30947243870a7bffe86fe8ecb4db036898c06ff489858bbb5f129", + "bytes": 30690 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.html": { + "sha256": "69bff0e4026d05d159febe1d52f6f954e7392150eb61b192891491390889d5de", + "bytes": 11130 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.json": { + "sha256": "310acac4a182958f95a8300c8aa74529401e50177bc430e313ca58c2579ee483", + "bytes": 612 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.png": { + "sha256": "94f72a9e74a6f3d21a53afa9bafabd4880c43eb995a6808dd7a2256b37b4abba", + "bytes": 32015 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.html": { + "sha256": "9733aaaed09782f87b7a0d5c8a81ecb2b57d8a379f527f884810201e767e25ba", + "bytes": 11130 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.json": { + "sha256": "42446b64ce987f10520c142cbda41a6bc072879513aef5f1650d4dc06a2f8f5f", + "bytes": 612 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.png": { + "sha256": "9026f07501136fdfe942540c9dd4fed895f234a2c4ed0bc9ab9c2850663a68ca", + "bytes": 33425 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.html": { + "sha256": "0861ae69d373f933470a3f35d7350aee4988e58f109a044e686c8d9067c2211c", + "bytes": 11130 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.json": { + "sha256": "c0a4e79d899225de037ebbb1937067ae893f044925957d42d5c4f8cac8f2f969", + "bytes": 602 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.png": { + "sha256": "df3e7ffedf6384aa56ca2e0fbabd285f2210fcbb98f3a0832038cd8cfb946abe", + "bytes": 25672 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.html": { + "sha256": "3c6b033744a6c35b2c8e1a207b0d4922527c31f6ad531bb7961ded8cccf7c21f", + "bytes": 11130 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.json": { + "sha256": "b094f41ffa57289a109747745e57f00a915d894877bc6d2f8291bbca404d2785", + "bytes": 602 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.png": { + "sha256": "fe40295325c3942cd1bfcf179d9fd626f7699c7dc65c84da7c4ad5a2a8f38e01", + "bytes": 26301 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.html": { + "sha256": "ebfa0b72d027cd6fcbed5aecd18eb9f97bb8f38ac903f40bd173b1d18514f4e1", + "bytes": 11130 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.json": { + "sha256": "6c3f4b899b288288c21b74ef518e0cf682919927e7c94c68edf51db97904af3f", + "bytes": 611 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.png": { + "sha256": "582683ea8ece2702fb4a096498cc00861998dcbc02f2a77a7f81523d397eb17a", + "bytes": 30274 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.html": { + "sha256": "71681a8101483faea00e02990f3b69edb972d43e2f2bf24f0b0319c996689a9a", + "bytes": 32813 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.json": { + "sha256": "dd7cc235cbe5dd263e284bbf24c4f6c624157d6bf0ac5e12c1340979a4c9c011", + "bytes": 6513 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.png": { + "sha256": "9edf791fc10d37996214708c197022e52134cae4af28e9b7b4d2d404946a763e", + "bytes": 30267 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/report.json": { + "sha256": "0679d7de20d2694aa81c760a6be7637c3307591c81ec18638a47a0d70ab1b71e", + "bytes": 128704 + }, + "evidence/current-consumer-20260905/operator/locked-consumer-commands.json": { + "sha256": "dba7894afaf603c3ff3b04bc6b2c11023eab9d1faf5d96f707fd776ee01a13b2", + "bytes": 2271 + }, + "evidence/current-consumer-20260905/operator/locked-existing-target-refusal.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-existing-target-refusal.stdout": { + "sha256": "46ba9c6dec43dd03241dfb1f296e335cd1ed7fb940809642c7284c151b4fc954", + "bytes": 507 + }, + "evidence/current-consumer-20260905/operator/locked-final-checks.json": { + "sha256": "c603d7a3138079428ef76de92aa2299084d415a2a5cff6ede9d63d3b6349391a", + "bytes": 855 + }, + "evidence/current-consumer-20260905/operator/locked-generated-audit.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-generated-audit.stdout": { + "sha256": "4d1456a71597d6eeb8573095e09bb2f7368c85626a769ef5a3e2dac782b8ab47", + "bytes": 5325 + }, + "evidence/current-consumer-20260905/operator/locked-generated-production-audit.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-generated-production-audit.stdout": { + "sha256": "75206656b5cfd245d6c7e6cd2f4f579d10db9fa0b708b19c6bbc29263526b379", + "bytes": 366 + }, + "evidence/current-consumer-20260905/operator/locked-host-install.stderr": { + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "bytes": 150 + }, + "evidence/current-consumer-20260905/operator/locked-host-install.stdout": { + "sha256": "b64e473f55f7adaafacfdcd0ce0ba844fd7496be03de1add6c2675ade86bf52a", + "bytes": 144 + }, + "evidence/current-consumer-20260905/operator/locked-installed-consumer.json": { + "sha256": "e555920ab2721acffc061072fe60240033b0210473e3ddc2243b91601a2316d9", + "bytes": 40428 + }, + "evidence/current-consumer-20260905/operator/locked-installed-doctor.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-installed-doctor.stdout": { + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "bytes": 1118 + }, + "evidence/current-consumer-20260905/operator/locked-installed-scaffold.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-installed-scaffold.stdout": { + "sha256": "4e0549fd844a62d3c3686d0014f3f41cc70adb95ebdc0eb2fd61e7babca21674", + "bytes": 2021 + }, + "evidence/current-consumer-20260905/operator/locked-source-pack.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-source-pack.stdout": { + "sha256": "6bec63aa0aada6cc4036f4031a8b9c2df6e1e44a12e245f0c5e0fadbbd1d675c", + "bytes": 28575 + }, + "evidence/current-consumer-20260905/operator/locked-source-test.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-source-test.stdout": { + "sha256": "7f8f2b93171f9c40c250c321864b7a5ab9a3b2d72b00f0b0db7e24a7fddf4418", + "bytes": 1251 + }, + "evidence/current-consumer-20260905/operator/package-installed-bindings.json": { + "sha256": "29e64cdfa39615640cbef7cc0eb8eb25ca04c7a6c29b8d00001d22c3e41f00d9", + "bytes": 60840 + }, + "evidence/current-consumer-20260905/operator/primary-head.after": { + "sha256": "60f857286c031a8172d111c183c1c2424aea72ad167f65a7eb0f13343712efce", + "bytes": 41 + }, + "evidence/current-consumer-20260905/operator/primary-index-nul.after": { + "sha256": "76673f16be2d2376a07251eb459f191fa9d254c54e7ad9fe0e88eb5f9b812ed3", + "bytes": 13245 + }, + "evidence/current-consumer-20260905/operator/primary-index.after": { + "sha256": "0d7c23b38f63ed4c17a9fd7a2b93fc797a2062bfb4e5090214ad277fa5f171ea", + "bytes": 13245 + }, + "evidence/current-consumer-20260905/operator/primary-index.before": { + "sha256": "76673f16be2d2376a07251eb459f191fa9d254c54e7ad9fe0e88eb5f9b812ed3", + "bytes": 13245 + }, + "evidence/current-consumer-20260905/operator/primary-refs.after": { + "sha256": "66c33b755dd5ab353501b08720e282584bbfc643331375bb49b45e09fdb45007", + "bytes": 576 + }, + "evidence/current-consumer-20260905/operator/primary-refs.before": { + "sha256": "b9d66cb9cc694da245d342b96cd63a5ba0055c54eeda5706be40549cdc5a1407", + "bytes": 482 + }, + "evidence/current-consumer-20260905/operator/primary-status.after": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/primary-status.before": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/primary-worktrees.after": { + "sha256": "960d0ec942afbfd80194e5e9c9febf8a0ae9fa7cd1e588817df50df4e8352c8a", + "bytes": 398 + }, + "evidence/current-consumer-20260905/operator/primary-worktrees.before": { + "sha256": "bfac049f183713aa28c3cf8dd6c85ab47f38276cd87a4c6bac3810a029e1787b", + "bytes": 171 + }, + "evidence/current-consumer-20260905/operator/source-audit.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/source-audit.stdout": { + "sha256": "0507abc50afeaaf68af460c5d475d106c4749a1fdda75812c327823c36cf59ab", + "bytes": 11986 + }, + "evidence/current-consumer-20260905/operator/source-custody.json": { + "sha256": "98d925bb27fd407671c82302d9f143ae2099fac70cd0a751bc3f700e26b53c85", + "bytes": 638 + }, + "evidence/current-consumer-20260905/operator/source-npm-ci.json": { + "sha256": "3b37194d316b953f547f7878e040c132b881e0368f43b2fc59f252c267e05bf9", + "bytes": 706 + }, + "evidence/current-consumer-20260905/operator/source-npm-ci.stderr": { + "sha256": "da370bd608ea0f37ee2141f76cc040fe073f2665c7130ec0d3eb441b3a077804", + "bytes": 358 + }, + "evidence/current-consumer-20260905/operator/source-npm-ci.stdout": { + "sha256": "a7cc1fc56bd4557bcba245d99a30bcbf76f7fc2f8347c9af41826f3d2c8d5624", + "bytes": 354 + }, + "evidence/current-consumer-20260905/operator/source-pack.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/source-pack.stdout": { + "sha256": "d2d9f05091633befdb449cb5d572c882d710855117ce7acd3045c33b0dda2a59", + "bytes": 28336 + }, + "evidence/current-consumer-20260905/operator/sqlite-reopen.json": { + "sha256": "46e8a29bc91f337c1aa4e7de5e913675be6d6f2409df3594ba1edb9e0e0c622d", + "bytes": 967 + }, + "evidence/current-consumer-20260905/operator/sqlite-reopen.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/sqlite-reopen.stdout": { + "sha256": "a6c95f2898e8b8f6d9aef94111b98fbe47a16d152b03a83d6b8dca54c0915a24", + "bytes": 124 + }, + "evidence/current-consumer-20260905/operator/template-lock-construction.command.json": { + "sha256": "75a028c63d52564c8e08ad181ea3add979943b77ec8a5edb21012e71e5576bd0", + "bytes": 177 + }, + "evidence/current-consumer-20260905/operator/template-lock-construction.result.json": { + "sha256": "7cd1f55ba3bace5b4a6c454b8f09016f4a661c24f72c4cbc1a4edf9c22718048", + "bytes": 824 + }, + "evidence/current-consumer-20260905/operator/template-lock-construction.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/template-lock-construction.stdout": { + "sha256": "22a980973d787e806a54ff17f2a351e2f7a8bbf4c7165a85eaf428ddee087ab6", + "bytes": 134 + }, + "evidence/current-consumer-20260905/operator/template-lock-seed.json": { + "sha256": "a708387eded0f5da3fe57d97750d8f79ed563e4fb1e12c1837ef233544d79268", + "bytes": 327367 + }, + "evidence/current-consumer-20260905/operator/worktree-create.stderr": { + "sha256": "412d092f7f9a8341ab1e36010ff5f6f355174dfde58b060c221af47cee0fdcc0", + "bytes": 76 + }, + "evidence/current-consumer-20260905/operator/worktree-create.stdout": { + "sha256": "1ad1748a5ad6b4de45732f83b76313c42e8568c93ff2d91f97c0d804ed6216a4", + "bytes": 97 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_CURRENT_CONSUMER_PLAN.md.txt": { + "sha256": "2b446c2d9af46eacae1a800e7ebfc8096426023d7af804562fda7f8868716f14", + "bytes": 3852 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.json": { + "sha256": "b06c4479e59945c68dec77488d48690b0155063e8c831f51f6468663d3284120", + "bytes": 5218 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.md.txt": { + "sha256": "f128cea4b359b583e2df85a3d3faa253ef96d87166034d52f8edbcd732f3821c", + "bytes": 4157 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.json": { + "sha256": "e6ceec482df252cb28f6bed66f643da10c39618ff5cd2c4706f5679004096220", + "bytes": 3665 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.md.txt": { + "sha256": "a72f6e4ddc3885a992cd606d7e56b92f63a1639b5938078d374cb5d9de9caae5", + "bytes": 3138 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.json": { + "sha256": "85c6640a3b4cbd95c428c0a2658a138751573ecaf42267316672b3a1a074a30a", + "bytes": 3433 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.md.txt": { + "sha256": "c4dd4d688b37e8046782e349b293db0d37b2e8564b5e1472f555297f10e95229", + "bytes": 1740 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_ENLARGEMENT_ADDENDUM.json": { + "sha256": "012658e5de2e590f7be123d41f8613afe7df5ef860eaaa73267c5a917ac6c86f", + "bytes": 1067 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_KEYBOARD_VISIBILITY_ADDENDUM.json": { + "sha256": "3ee3473b4bfb7fb22039b59e6e44844189f53c1ce274455021c0c62d44d59873", + "bytes": 1332 + }, + "evidence/current-consumer-20260905/manifest.json": { + "sha256": "c3601b7021e3d7d5a1b233b620f6952422b98828de791492de393e4776dc8210", + "bytes": 401243 + } + }, + "rawCopiesExact": 937, + "portableArtifactsExcludingManifest": 938, + "portableBytesExcludingManifest": 21279473, + "futureFilteredBlobMismatches": [ + { + "path": "evidence/current-consumer-20260905/manifest.json", + "rawBlob": "dcbd7b1dd0b12fda1db0fb6c10224ceea66b00ec", + "futureFilteredBlob": "78a69528eea85b8b25e4921f5d3ee63150b78403", + "crlfCount": 5874 + }, + { + "path": "evidence/current-consumer-20260905/operator/D3_SOURCE_BEFORE_BINDINGS.json", + "rawBlob": "05ba5ad748293621c09ebeeb08ea1b665398bd85", + "futureFilteredBlob": "db57d88c1ab923e0d624eed89ceb8a6add0d8b2c", + "crlfCount": 32 + }, + { + "path": "evidence/current-consumer-20260905/operator/browser-before-01-command.json", + "rawBlob": "418ba66374b50f25a3d8bb4efcd838d2ac05f5b9", + "futureFilteredBlob": "d10d31880da07341f443e320e69d8616fb54f1b3", + "crlfCount": 10 + }, + { + "path": "evidence/current-consumer-20260905/operator/browser-before-02-command.json", + "rawBlob": "263a04d86b34d14c182bc5fbbe4b07c7f8fefc9a", + "futureFilteredBlob": "85190f6c68d0cd45876b1bb25802ae9774f41403", + "crlfCount": 10 + }, + { + "path": "evidence/current-consumer-20260905/operator/browser-before-03-command.json", + "rawBlob": "97667ca123e01f43217af6fac89e08c8e1010b3e", + "futureFilteredBlob": "f97868a6b61b7c294539a3f45372065e82834de7", + "crlfCount": 10 + }, + { + "path": "evidence/current-consumer-20260905/operator/canonical-checks.json", + "rawBlob": "b9f670defd7cfc837b56fa807dd6cd460440b272", + "futureFilteredBlob": "2650bcbd496d9dd5b6e2ee1a3d93c4f3336e0403", + "crlfCount": 83 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-citation-correctness-addendum.json", + "rawBlob": "83fdf6d3308c8ec38c4e125e9b2fd96300e4156e", + "futureFilteredBlob": "fe881e8aca8a931274d9b4b2faf00ba10db0e434", + "crlfCount": 21 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-consumer-02-commands.json", + "rawBlob": "402b1254e07843ac03478628ba032c5f467b27cb", + "futureFilteredBlob": "66000fd93202d58b4e4e454b1c6f645642657f35", + "crlfCount": 53 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-consumer-preservation.json", + "rawBlob": "04fed132194d3f76c3f080d1f3c6d5b9cb0ebcf2", + "futureFilteredBlob": "18b2d3f24f35541d1952a493302b3661345139d0", + "crlfCount": 86 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.command.json", + "rawBlob": "d8392196995b1d27a0df35879e2080aa11901917", + "futureFilteredBlob": "34a9ffbbef5c66dcb02e41f5722e0b337c54ebe9", + "crlfCount": 9 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/change-boundary.md.txt", + "rawBlob": "7e95ffd630634a3c7a4f7bcf1a22f1867dd7b5df", + "futureFilteredBlob": "18412692d8b5742d156440350e31c5f658f19378", + "crlfCount": 5 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.command.json", + "rawBlob": "c360ffafb0b13a46b8b03661387891bcaf9caebd", + "futureFilteredBlob": "5b39da6e6a282901c969b22c7c35a64012c4685e", + "crlfCount": 9 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-03-commands.json", + "rawBlob": "67b12a11fefd972ddebb69e4b8ffa22612e0b6c4", + "futureFilteredBlob": "80e0316ca9236a2a09912d0e12ccba3c9b603432", + "crlfCount": 110 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-browser-01.command.json", + "rawBlob": "65ef4ce8693f0ad58e6f04d47ea65d4167ebda72", + "futureFilteredBlob": "4440626316e309fbf522776efc366c97a5cd1a93", + "crlfCount": 9 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-browser-02.command.json", + "rawBlob": "3297eaf7c65ce8175c59fc09a3022c7167d117ea", + "futureFilteredBlob": "97e340151fd65fccaa11f740a9f5d6de34a559dc", + "crlfCount": 9 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-commands.json", + "rawBlob": "694b6146eafef2d47739e93a0b9e5cce8a059ac4", + "futureFilteredBlob": "79ef5857dd9a475a5fbcdd9c8d6c0ffd1990bacc", + "crlfCount": 108 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-lf-normalization.json", + "rawBlob": "03b79dd0cd2bfce95fa689be811d98bf501549ed", + "futureFilteredBlob": "8d9eb8ea829f0ffc053badd7b976304e1724d218", + "crlfCount": 43 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-metadata-checks.json", + "rawBlob": "90cf2dd739fa0124baefbc69f513e2886c343753", + "futureFilteredBlob": "7507f5e1c47a23330ce6e092e487e0258bb4778b", + "crlfCount": 21 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-typecheck.command.json", + "rawBlob": "50e7d401ffde0804618a9046a0f10cca3883564e", + "futureFilteredBlob": "1a6dfea582428873e59eec33e252af77056f332b", + "crlfCount": 8 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.command.json", + "rawBlob": "c547e3507ec6d11ec87dabbcce1235b390876fa1", + "futureFilteredBlob": "7e6d74c7ccf889c0d0dc70b732471580b98f509d", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.command.json", + "rawBlob": "4992a59c18ac469b9d50eb428b4f72ea08fc812c", + "futureFilteredBlob": "3f0927a8f72d2886b6d4359151bc2192f3834903", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.command.json", + "rawBlob": "98eae896ecf50226f4f1c9d780a06694ae946c7f", + "futureFilteredBlob": "bda9b0caed86bd3c1eda7dfbcb17e462f0dcf9a4", + "crlfCount": 7 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-generated-matched-after.command.json", + "rawBlob": "cff2af40239cfe874e97d51253c327c7f1eb5f21", + "futureFilteredBlob": "9c5022ee3c998b0a417da08ad9c0a117b03c86ef", + "crlfCount": 7 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-generated-matched-after.stderr", + "rawBlob": "57cc9ca38d93a52f6d845e83ee5153493086dc5c", + "futureFilteredBlob": "9cf2ed6800d22f34edb66cce2e5065ef27a9440b", + "crlfCount": 16 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-installed-consumer-02.json", + "rawBlob": "30df8d1d3dd66da244fc7ccb89ef8394a90e1806", + "futureFilteredBlob": "2c67ce8973d6d8af929857851ddc4f2748ee62cb", + "crlfCount": 977 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-installed-consumer-03.json", + "rawBlob": "cd29bf20c46c87c25f56497e411f53c22c87cf34", + "futureFilteredBlob": "446a248d575cd15ed29421cf08c21c47f608f39a", + "crlfCount": 977 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-installed-consumer.json", + "rawBlob": "af4c1f635d8bae92f190991068783738375e8d30", + "futureFilteredBlob": "55ef93b180c005d653b697c5720239776bbd7a78", + "crlfCount": 977 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-keyboard-citation-relocation.json", + "rawBlob": "4eb23a6d43c47f32bd5ac48adb691e37d8c8f597", + "futureFilteredBlob": "8937b2cb9e2fcdd4570b447cd8d5a77083f4b0a4", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.command.json", + "rawBlob": "8cc7983536a6a41ce0759a20cff09619c8e9ec4a", + "futureFilteredBlob": "becb0d2037083596b79096b503bb0100e0122a44", + "crlfCount": 9 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.md.txt", + "rawBlob": "187036e16ba7bf8233da16669f9febbb9372101f", + "futureFilteredBlob": "f6ba300edc58cdf2a1b7d34729b608967d53814e", + "crlfCount": 5 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-primary-preservation-readback.json", + "rawBlob": "53b5705aba4fa0f0ae5f4022ec5500deca055446", + "futureFilteredBlob": "f937076a5ba79e32021bf59f25a7415258d520e0", + "crlfCount": 31 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-primary-preservation-verified.json", + "rawBlob": "59df70f24e0c45cbda67451b4b7b0886a24362b6", + "futureFilteredBlob": "8a5efd4d64efc0b7739a49b61124dfec800b6b80", + "crlfCount": 13 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-boundary-01.command.json", + "rawBlob": "29f04aca6c13c1d6245a272f038808aecca31761", + "futureFilteredBlob": "d2b7869c13e282718238acaef3882f3d2e633dba", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-boundary-02.command.json", + "rawBlob": "cf09c5a7707a0ef1497e284b54033c9bd74d2b31", + "futureFilteredBlob": "8aad6e4251358240a5711f6840d43a46af46eaef", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-boundary-03.command.json", + "rawBlob": "39cebb47755e929ef2fbb5493e44876f2246f45a", + "futureFilteredBlob": "2990d23a943e27c2fbef3a185d8a9339b35241ce", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-matched-after.command.json", + "rawBlob": "b5fbdab93b6372e74819263d2c200ee64c8e0627", + "futureFilteredBlob": "3bd50d1620ce3001092245b4687f4c7627c451c9", + "crlfCount": 7 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-smoke-01.command.json", + "rawBlob": "8a9f366e2504eca054a8e2d621c7b33cabd95959", + "futureFilteredBlob": "fca0e41d2e0608d3060cdd80f0eb873a93a8f72d", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-smoke-02.command.json", + "rawBlob": "f688442dcb85d613c6e359df2cb75416c9570091", + "futureFilteredBlob": "0afce6e2c4d36b58a1a6c3f27e8a09ea7bf4b2cc", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-smoke-03.command.json", + "rawBlob": "c8ae82a9ea7b0d8586e0b13139feca24b3bcea89", + "futureFilteredBlob": "6c656c2f9fbfd2a2adbd20cab79303efc8709a62", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-smoke-04.command.json", + "rawBlob": "f7aba7e955e10ddef022c8f3826471c1e05cd580", + "futureFilteredBlob": "397d7bf8442774372c6cd453eacf068d7e5c65dd", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-smoke-05.command.json", + "rawBlob": "df418170e16183f8c4d191ff135defa24201a7a1", + "futureFilteredBlob": "75a23b15158e75bd43d9fb083e821588e7f674ea", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-smoke-06.command.json", + "rawBlob": "eef07aba10357c88b48228cfbc240e11b2476d53", + "futureFilteredBlob": "b2fa67b729e3cdaa69660db5e26d70ea939d3af4", + "crlfCount": 10 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-worker-visual-inspection.json", + "rawBlob": "cb63f4214664eaa36270d434ab39a9d299dd3ec1", + "futureFilteredBlob": "e1e67409c999491929c63805a2e5e2abccd96977", + "crlfCount": 134 + }, + { + "path": "evidence/current-consumer-20260905/operator/diagnose-d3-enlargement-02.mjs.txt", + "rawBlob": "c4991432afbc05e0710288f0c02efacea09dc9b2", + "futureFilteredBlob": "6f790453c554f4f9cbbd9489ffd51c683f640292", + "crlfCount": 179 + }, + { + "path": "evidence/current-consumer-20260905/operator/diagnose-d3-keyboard-scroll.mjs.txt", + "rawBlob": "08a5dec05d5d00a961e93a94b187b376bf3bd924", + "futureFilteredBlob": "41bfdb3b0914cbe26a5d70356e08db9ad63e797b", + "crlfCount": 182 + }, + { + "path": "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.command.json", + "rawBlob": "214334ab2fd93b14db735f70583e6d572b849ece", + "futureFilteredBlob": "49063fea1ce4ef9c21d27bde1811ca144a0fbd48", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.command.json", + "rawBlob": "2c2f5d40b1dc5e7aaa22ce1c5e8e31474bccd246", + "futureFilteredBlob": "6707f818047236fb53135fea0bb2106d926494ac", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/install-consumer-commands.json", + "rawBlob": "73c56781a547867205928c08258b517a23263d8e", + "futureFilteredBlob": "fe0d285146fe242a2b3c5fc4e733efa014a0e91b", + "crlfCount": 106 + }, + { + "path": "evidence/current-consumer-20260905/operator/installed-consumer.json", + "rawBlob": "35f8502326051f5fea416f30abcfd58db64cc781", + "futureFilteredBlob": "b6aff97b3b3390b5962c42e2814c1455d989c865", + "crlfCount": 12 + }, + { + "path": "evidence/current-consumer-20260905/operator/locked-browser-01.command.json", + "rawBlob": "ce54794a7ebbf5001f8b080c5fff3bb1747e81c2", + "futureFilteredBlob": "bfa1c272ba3a54b15fd27e6ea326ae7268a484d3", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/locked-browser-02.command.json", + "rawBlob": "b264399f5ce351e7e63712f583ab58af2ad499f4", + "futureFilteredBlob": "59ba15de45b7f44482ca017f892df63bc0570663", + "crlfCount": 10 + }, + { + "path": "evidence/current-consumer-20260905/operator/locked-consumer-commands.json", + "rawBlob": "58373f4e7a13f27677403b6e5c40749bcca4c528", + "futureFilteredBlob": "6c4b2c6da02d7df86d82f69e3704150f2f110588", + "crlfCount": 69 + }, + { + "path": "evidence/current-consumer-20260905/operator/locked-final-checks.json", + "rawBlob": "b8993f3816c84f2d88ff3c6353cb5c64bd958094", + "futureFilteredBlob": "20d950f237fcd3b7a57cdafb8056974f8adf7555", + "crlfCount": 35 + }, + { + "path": "evidence/current-consumer-20260905/operator/locked-installed-consumer.json", + "rawBlob": "f9fc417026741057713520719311dfe216e433a3", + "futureFilteredBlob": "a79b90e7d3c611ee674c45310a8112479f2198fe", + "crlfCount": 1040 + }, + { + "path": "evidence/current-consumer-20260905/operator/package-installed-bindings.json", + "rawBlob": "50b66fdbd141cbdcaf1b1ec3ab5e4f7e932085e7", + "futureFilteredBlob": "cc1f73e64e43e3ab14fa44406d616af488acd579", + "crlfCount": 1746 + }, + { + "path": "evidence/current-consumer-20260905/operator/source-custody.json", + "rawBlob": "ce641a1957913dd3fb5a6ca4f685ada1cfc6c3a4", + "futureFilteredBlob": "fda442023c76c9994ad7be0dfb0a8159f453739e", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/source-npm-ci.json", + "rawBlob": "c4c18d460ec0cea8b402213abc12b656c0c5ee35", + "futureFilteredBlob": "b04c12ef24444688c495afef5f6f1f312a3ac6a0", + "crlfCount": 32 + }, + { + "path": "evidence/current-consumer-20260905/operator/template-lock-construction.command.json", + "rawBlob": "5a4d4c38a139bc1a9054b469727662331c2d23ac", + "futureFilteredBlob": "b37fb2b234585a313daf0a3b1fd8858ad89b52e0", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_ENLARGEMENT_ADDENDUM.json", + "rawBlob": "b4d56ae20615a961fac73f19c98a7814a1f0a54d", + "futureFilteredBlob": "252ff2d8faa1c818910f522b170a654ec5c5c0ab", + "crlfCount": 14 + }, + { + "path": "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_KEYBOARD_VISIBILITY_ADDENDUM.json", + "rawBlob": "44511d6840a260572f5edf55d8209a3ec27f2e7d", + "futureFilteredBlob": "1ddd3a53762702f59e73e7c44f9f9de860dd577c", + "crlfCount": 12 + } + ], + "sourceTarInstalled": { + "files": 242, + "tarSha256": "1a6e980a684f433fcdc80021eb5569fa5c4b94e09a71e8a2adbe5d821e654c69", + "installedRoot": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery installed host 03\\node_modules\\nodeagent", + "currentSourceDifferences": [ + "HANDOFF.md" + ], + "scope": "HANDOFF only changed after package capture; all 242 tar/installed bytes exact, 241 current source bytes exact." + }, + "retainedConsumers": [ + { + "root": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Generated Chat app", + "hashes": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "f185d6cd0889ef7ea8974f0c73f31c352a52e4c18b7e7394ceded0cf230ef101", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + } + }, + { + "root": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked Chat app", + "hashes": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + } + }, + { + "root": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app", + "hashes": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + } + }, + { + "root": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app 02", + "hashes": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + } + }, + { + "root": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app 03", + "hashes": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + } + } + ], + "currentGeneratedInputsExactSourceTemplate": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "candidatePaths": [ + ".tours/01-primary-user-flow.tour", + "HANDOFF.md", + "docs/START_HERE.md", + "e2e/current-consumer-proof.mjs", + "e2e/current-consumer-recovery-proof.mjs", + "evidence/current-consumer-20260905/README.md", + "evidence/current-consumer-20260905/historical/browser-before-03/report.json", + "evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.html", + "evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.png", + "evidence/current-consumer-20260905/historical/d3-final-browser-01/generated-error-text-200-390.png", + "evidence/current-consumer-20260905/historical/d3-final-browser-01/report.json", + "evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.html", + "evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.png", + "evidence/current-consumer-20260905/historical/d3-final-browser-02/generated-error-text-200-390.png", + "evidence/current-consumer-20260905/historical/d3-final-browser-02/report.json", + "evidence/current-consumer-20260905/historical/d3-final-browser-02/source-error-text-200-390.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.html", + "evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-01/report.json", + "evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.html", + "evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-02/report.json", + "evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.html", + "evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-03/report.json", + "evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.html", + "evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-04/report.json", + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.html", + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/report.json", + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/source-text-200-390.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-06/report.json", + "evidence/current-consumer-20260905/historical/d3-source-smoke-06/source-error-text-200-390.png", + "evidence/current-consumer-20260905/historical/first-submit-dependency-comparison-01/report.json", + "evidence/current-consumer-20260905/historical/first-submit-diagnosis-01/report.json", + "evidence/current-consumer-20260905/historical/locked-browser-01/failure.html", + "evidence/current-consumer-20260905/historical/locked-browser-01/failure.png", + "evidence/current-consumer-20260905/historical/locked-browser-01/report.json", + "evidence/current-consumer-20260905/manifest.json", + "evidence/current-consumer-20260905/operator/D3_SOURCE_BEFORE_BINDINGS.json", + "evidence/current-consumer-20260905/operator/browser-before-01-command.json", + "evidence/current-consumer-20260905/operator/browser-before-01-harness.mjs.txt", + "evidence/current-consumer-20260905/operator/browser-before-01.stderr", + "evidence/current-consumer-20260905/operator/browser-before-01.stdout", + "evidence/current-consumer-20260905/operator/browser-before-02-command.json", + "evidence/current-consumer-20260905/operator/browser-before-02-command.stderr", + "evidence/current-consumer-20260905/operator/browser-before-02-command.stdout", + "evidence/current-consumer-20260905/operator/browser-before-02-harness.mjs.txt", + "evidence/current-consumer-20260905/operator/browser-before-03-command.json", + "evidence/current-consumer-20260905/operator/browser-before-03-command.stderr", + "evidence/current-consumer-20260905/operator/browser-before-03-command.stdout", + "evidence/current-consumer-20260905/operator/browser-before-03-harness.mjs.txt", + "evidence/current-consumer-20260905/operator/canonical-audit-production.stderr", + "evidence/current-consumer-20260905/operator/canonical-audit-production.stdout", + "evidence/current-consumer-20260905/operator/canonical-build.stderr", + "evidence/current-consumer-20260905/operator/canonical-build.stdout", + "evidence/current-consumer-20260905/operator/canonical-checks.json", + "evidence/current-consumer-20260905/operator/canonical-tests.stderr", + "evidence/current-consumer-20260905/operator/canonical-tests.stdout", + "evidence/current-consumer-20260905/operator/capture-generated-d3-before-01.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-generated-d3-before.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after-syntax-failure.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-source-d3-before-01.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-source-d3-before-02.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-source-d3-before.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-source-d3-matched-after.mjs.txt", + "evidence/current-consumer-20260905/operator/d3-citation-before/.tours/01-primary-user-flow.tour", + "evidence/current-consumer-20260905/operator/d3-citation-before/docs/START_HERE.md.txt", + "evidence/current-consumer-20260905/operator/d3-citation-correctness-addendum.json", + "evidence/current-consumer-20260905/operator/d3-consumer-02-commands.json", + "evidence/current-consumer-20260905/operator/d3-consumer-preservation.json", + "evidence/current-consumer-20260905/operator/d3-corrected-tours-validate.stderr", + "evidence/current-consumer-20260905/operator/d3-corrected-tours-validate.stdout", + "evidence/current-consumer-20260905/operator/d3-enlargement-css-before.txt", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.command.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.stderr", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.stdout", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/change-boundary.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/failure.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/failure.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/intrinsic-width-diagnosis.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/report.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.command.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.stderr", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.stdout", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/change-boundary.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/intrinsic-width-diagnosis.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/report.json", + "evidence/current-consumer-20260905/operator/d3-final-03-build.stderr", + "evidence/current-consumer-20260905/operator/d3-final-03-build.stdout", + "evidence/current-consumer-20260905/operator/d3-final-03-commands.json", + "evidence/current-consumer-20260905/operator/d3-final-03-test.stderr", + "evidence/current-consumer-20260905/operator/d3-final-03-test.stdout", + "evidence/current-consumer-20260905/operator/d3-final-03-tours-validate.stderr", + "evidence/current-consumer-20260905/operator/d3-final-03-tours-validate.stdout", + "evidence/current-consumer-20260905/operator/d3-final-browser-01.command.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-01.stderr", + "evidence/current-consumer-20260905/operator/d3-final-browser-01.stdout", + "evidence/current-consumer-20260905/operator/d3-final-browser-02.command.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-02.stderr", + "evidence/current-consumer-20260905/operator/d3-final-browser-02.stdout", + "evidence/current-consumer-20260905/operator/d3-final-browser-03.stderr", + "evidence/current-consumer-20260905/operator/d3-final-browser-03.stdout", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/report.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.png", + "evidence/current-consumer-20260905/operator/d3-final-build.stderr", + "evidence/current-consumer-20260905/operator/d3-final-build.stdout", + "evidence/current-consumer-20260905/operator/d3-final-commands.json", + "evidence/current-consumer-20260905/operator/d3-final-diff-check.stderr", + "evidence/current-consumer-20260905/operator/d3-final-diff-check.stdout", + "evidence/current-consumer-20260905/operator/d3-final-examples-guidance-smoke.stderr", + "evidence/current-consumer-20260905/operator/d3-final-examples-guidance-smoke.stdout", + "evidence/current-consumer-20260905/operator/d3-final-lf-normalization.json", + "evidence/current-consumer-20260905/operator/d3-final-metadata-checks.json", + "evidence/current-consumer-20260905/operator/d3-final-prose.txt", + "evidence/current-consumer-20260905/operator/d3-final-secret-scan.stderr", + "evidence/current-consumer-20260905/operator/d3-final-secret-scan.stdout", + "evidence/current-consumer-20260905/operator/d3-final-test.stderr", + "evidence/current-consumer-20260905/operator/d3-final-test.stdout", + "evidence/current-consumer-20260905/operator/d3-final-tours-validate.stderr", + "evidence/current-consumer-20260905/operator/d3-final-tours-validate.stdout", + "evidence/current-consumer-20260905/operator/d3-final-typecheck.command.json", + "evidence/current-consumer-20260905/operator/d3-final-typecheck.stderr", + "evidence/current-consumer-20260905/operator/d3-final-typecheck.stdout", + "evidence/current-consumer-20260905/operator/d3-first-typecheck.stderr", + "evidence/current-consumer-20260905/operator/d3-first-typecheck.stdout", + "evidence/current-consumer-20260905/operator/d3-focus-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "evidence/current-consumer-20260905/operator/d3-focus-before/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.command.json", + "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.stderr", + "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.stdout", + "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.command.json", + "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.stderr", + "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.stdout", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.command.json", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.stderr", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.stdout", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after.command.json", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after.stderr", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after.stdout", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.after.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.png", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.after.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.png", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.after.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.png", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.after.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.before.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.png", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/report.json", + "evidence/current-consumer-20260905/operator/d3-handoff-packaged-before.md.txt", + "evidence/current-consumer-20260905/operator/d3-host-install-02.stderr", + "evidence/current-consumer-20260905/operator/d3-host-install-02.stdout", + "evidence/current-consumer-20260905/operator/d3-host-install-03.stderr", + "evidence/current-consumer-20260905/operator/d3-host-install-03.stdout", + "evidence/current-consumer-20260905/operator/d3-host-install.stderr", + "evidence/current-consumer-20260905/operator/d3-host-install.stdout", + "evidence/current-consumer-20260905/operator/d3-installed-consumer-02.json", + "evidence/current-consumer-20260905/operator/d3-installed-consumer-03.json", + "evidence/current-consumer-20260905/operator/d3-installed-consumer.json", + "evidence/current-consumer-20260905/operator/d3-installed-doctor-02.stderr", + "evidence/current-consumer-20260905/operator/d3-installed-doctor-02.stdout", + "evidence/current-consumer-20260905/operator/d3-installed-doctor-03.stderr", + "evidence/current-consumer-20260905/operator/d3-installed-doctor-03.stdout", + "evidence/current-consumer-20260905/operator/d3-installed-doctor.stderr", + "evidence/current-consumer-20260905/operator/d3-installed-doctor.stdout", + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-02.stderr", + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-02.stdout", + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-03.stderr", + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-03.stdout", + "evidence/current-consumer-20260905/operator/d3-installed-scaffold.stderr", + "evidence/current-consumer-20260905/operator/d3-installed-scaffold.stdout", + "evidence/current-consumer-20260905/operator/d3-keyboard-citation-relocation.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-focus-before.tsx.txt", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.command.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stderr", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stdout", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.before.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/keyboard-scroll-diagnosis.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/report.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.before.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.before.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.before.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.before.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.png", + "evidence/current-consumer-20260905/operator/d3-pack-02.stderr", + "evidence/current-consumer-20260905/operator/d3-pack-02.stdout", + "evidence/current-consumer-20260905/operator/d3-pack-03.stderr", + "evidence/current-consumer-20260905/operator/d3-pack-03.stdout", + "evidence/current-consumer-20260905/operator/d3-pack.stderr", + "evidence/current-consumer-20260905/operator/d3-pack.stdout", + "evidence/current-consumer-20260905/operator/d3-primary-preservation-readback.json", + "evidence/current-consumer-20260905/operator/d3-primary-preservation-verified.json", + "evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx.txt", + "evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/styles.css", + "evidence/current-consumer-20260905/operator/d3-product-before-custody/src/app/styles.css", + "evidence/current-consumer-20260905/operator/d3-product-before-custody/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "evidence/current-consumer-20260905/operator/d3-product-before-custody/src/features/node-agent/components/toolUIs.tsx.txt", + "evidence/current-consumer-20260905/operator/d3-retry-guard-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "evidence/current-consumer-20260905/operator/d3-retry-guard-before/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "evidence/current-consumer-20260905/operator/d3-runtime-state-guard-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "evidence/current-consumer-20260905/operator/d3-runtime-state-guard-before/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "evidence/current-consumer-20260905/operator/d3-source-boundary-01.command.json", + "evidence/current-consumer-20260905/operator/d3-source-boundary-01.stderr", + "evidence/current-consumer-20260905/operator/d3-source-boundary-01.stdout", + "evidence/current-consumer-20260905/operator/d3-source-boundary-02.command.json", + "evidence/current-consumer-20260905/operator/d3-source-boundary-02.stderr", + "evidence/current-consumer-20260905/operator/d3-source-boundary-02.stdout", + "evidence/current-consumer-20260905/operator/d3-source-boundary-03.command.json", + "evidence/current-consumer-20260905/operator/d3-source-boundary-03.stderr", + "evidence/current-consumer-20260905/operator/d3-source-boundary-03.stdout", + "evidence/current-consumer-20260905/operator/d3-source-matched-after.command.json", + "evidence/current-consumer-20260905/operator/d3-source-matched-after.stderr", + "evidence/current-consumer-20260905/operator/d3-source-matched-after.stdout", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/report.json", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.png", + "evidence/current-consumer-20260905/operator/d3-source-smoke-01-harness.mjs.txt", + "evidence/current-consumer-20260905/operator/d3-source-smoke-01.command.json", + "evidence/current-consumer-20260905/operator/d3-source-smoke-01.stderr", + "evidence/current-consumer-20260905/operator/d3-source-smoke-01.stdout", + "evidence/current-consumer-20260905/operator/d3-source-smoke-02-harness.mjs.txt", + "evidence/current-consumer-20260905/operator/d3-source-smoke-02.command.json", + "evidence/current-consumer-20260905/operator/d3-source-smoke-02.stderr", + "evidence/current-consumer-20260905/operator/d3-source-smoke-02.stdout", + "evidence/current-consumer-20260905/operator/d3-source-smoke-03.command.json", + "evidence/current-consumer-20260905/operator/d3-source-smoke-03.stderr", + "evidence/current-consumer-20260905/operator/d3-source-smoke-03.stdout", + "evidence/current-consumer-20260905/operator/d3-source-smoke-04.command.json", + "evidence/current-consumer-20260905/operator/d3-source-smoke-04.stderr", + "evidence/current-consumer-20260905/operator/d3-source-smoke-04.stdout", + "evidence/current-consumer-20260905/operator/d3-source-smoke-05.command.json", + "evidence/current-consumer-20260905/operator/d3-source-smoke-05.stderr", + "evidence/current-consumer-20260905/operator/d3-source-smoke-05.stdout", + "evidence/current-consumer-20260905/operator/d3-source-smoke-06.command.json", + "evidence/current-consumer-20260905/operator/d3-source-smoke-06.stderr", + "evidence/current-consumer-20260905/operator/d3-source-smoke-06.stdout", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay.stderr", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay.stdout", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/report.json", + "evidence/current-consumer-20260905/operator/d3-worker-visual-inspection.json", + "evidence/current-consumer-20260905/operator/dependency-repair-freeze/HANDOFF.md.txt", + "evidence/current-consumer-20260905/operator/dependency-repair-freeze/e2e/current-consumer-proof.mjs.txt", + "evidence/current-consumer-20260905/operator/dependency-repair-freeze/examples/apps/chat-ui/template/package-lock.json", + "evidence/current-consumer-20260905/operator/diagnose-d3-enlargement-02.mjs.txt", + "evidence/current-consumer-20260905/operator/diagnose-d3-enlargement.mjs.txt", + "evidence/current-consumer-20260905/operator/diagnose-d3-keyboard-scroll.mjs.txt", + "evidence/current-consumer-20260905/operator/diagnose-dependency-comparison.mjs.txt", + "evidence/current-consumer-20260905/operator/diagnose-first-submit.mjs.txt", + "evidence/current-consumer-20260905/operator/durable.json", + "evidence/current-consumer-20260905/operator/durable.stderr", + "evidence/current-consumer-20260905/operator/durable.stdout", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.png", + "evidence/current-consumer-20260905/operator/existing-target-refusal.stderr", + "evidence/current-consumer-20260905/operator/existing-target-refusal.stdout", + "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.command.json", + "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.stderr", + "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.stdout", + "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.command.json", + "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stderr", + "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stdout", + "evidence/current-consumer-20260905/operator/frame.json", + "evidence/current-consumer-20260905/operator/frame.stderr", + "evidence/current-consumer-20260905/operator/frame.stdout", + "evidence/current-consumer-20260905/operator/host-install.stderr", + "evidence/current-consumer-20260905/operator/host-install.stdout", + "evidence/current-consumer-20260905/operator/install-consumer-commands.json", + "evidence/current-consumer-20260905/operator/installed-apps.stderr", + "evidence/current-consumer-20260905/operator/installed-apps.stdout", + "evidence/current-consumer-20260905/operator/installed-consumer.json", + "evidence/current-consumer-20260905/operator/installed-doctor.stderr", + "evidence/current-consumer-20260905/operator/installed-doctor.stdout", + "evidence/current-consumer-20260905/operator/installed-scaffold.stderr", + "evidence/current-consumer-20260905/operator/installed-scaffold.stdout", + "evidence/current-consumer-20260905/operator/locked-browser-01-harness.mjs.txt", + "evidence/current-consumer-20260905/operator/locked-browser-01.command.json", + "evidence/current-consumer-20260905/operator/locked-browser-01.stderr", + "evidence/current-consumer-20260905/operator/locked-browser-01.stdout", + "evidence/current-consumer-20260905/operator/locked-browser-02.command.json", + "evidence/current-consumer-20260905/operator/locked-browser-02.stderr", + "evidence/current-consumer-20260905/operator/locked-browser-02.stdout", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/report.json", + "evidence/current-consumer-20260905/operator/locked-consumer-commands.json", + "evidence/current-consumer-20260905/operator/locked-existing-target-refusal.stderr", + "evidence/current-consumer-20260905/operator/locked-existing-target-refusal.stdout", + "evidence/current-consumer-20260905/operator/locked-final-checks.json", + "evidence/current-consumer-20260905/operator/locked-generated-audit.stderr", + "evidence/current-consumer-20260905/operator/locked-generated-audit.stdout", + "evidence/current-consumer-20260905/operator/locked-generated-production-audit.stderr", + "evidence/current-consumer-20260905/operator/locked-generated-production-audit.stdout", + "evidence/current-consumer-20260905/operator/locked-host-install.stderr", + "evidence/current-consumer-20260905/operator/locked-host-install.stdout", + "evidence/current-consumer-20260905/operator/locked-installed-consumer.json", + "evidence/current-consumer-20260905/operator/locked-installed-doctor.stderr", + "evidence/current-consumer-20260905/operator/locked-installed-doctor.stdout", + "evidence/current-consumer-20260905/operator/locked-installed-scaffold.stderr", + "evidence/current-consumer-20260905/operator/locked-installed-scaffold.stdout", + "evidence/current-consumer-20260905/operator/locked-source-pack.stderr", + "evidence/current-consumer-20260905/operator/locked-source-pack.stdout", + "evidence/current-consumer-20260905/operator/locked-source-test.stderr", + "evidence/current-consumer-20260905/operator/locked-source-test.stdout", + "evidence/current-consumer-20260905/operator/package-installed-bindings.json", + "evidence/current-consumer-20260905/operator/primary-head.after", + "evidence/current-consumer-20260905/operator/primary-index-nul.after", + "evidence/current-consumer-20260905/operator/primary-index.after", + "evidence/current-consumer-20260905/operator/primary-index.before", + "evidence/current-consumer-20260905/operator/primary-refs.after", + "evidence/current-consumer-20260905/operator/primary-refs.before", + "evidence/current-consumer-20260905/operator/primary-status.after", + "evidence/current-consumer-20260905/operator/primary-status.before", + "evidence/current-consumer-20260905/operator/primary-worktrees.after", + "evidence/current-consumer-20260905/operator/primary-worktrees.before", + "evidence/current-consumer-20260905/operator/source-audit.stderr", + "evidence/current-consumer-20260905/operator/source-audit.stdout", + "evidence/current-consumer-20260905/operator/source-custody.json", + "evidence/current-consumer-20260905/operator/source-npm-ci.json", + "evidence/current-consumer-20260905/operator/source-npm-ci.stderr", + "evidence/current-consumer-20260905/operator/source-npm-ci.stdout", + "evidence/current-consumer-20260905/operator/source-pack.stderr", + "evidence/current-consumer-20260905/operator/source-pack.stdout", + "evidence/current-consumer-20260905/operator/sqlite-reopen.json", + "evidence/current-consumer-20260905/operator/sqlite-reopen.stderr", + "evidence/current-consumer-20260905/operator/sqlite-reopen.stdout", + "evidence/current-consumer-20260905/operator/template-lock-construction.command.json", + "evidence/current-consumer-20260905/operator/template-lock-construction.result.json", + "evidence/current-consumer-20260905/operator/template-lock-construction.stderr", + "evidence/current-consumer-20260905/operator/template-lock-construction.stdout", + "evidence/current-consumer-20260905/operator/template-lock-seed.json", + "evidence/current-consumer-20260905/operator/worktree-create.stderr", + "evidence/current-consumer-20260905/operator/worktree-create.stdout", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_CURRENT_CONSUMER_PLAN.md.txt", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.json", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.md.txt", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.json", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.md.txt", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.json", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.md.txt", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_ENLARGEMENT_ADDENDUM.json", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_KEYBOARD_VISIBILITY_ADDENDUM.json", + "examples/apps/chat-ui/template/package-lock.json", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "examples/apps/chat-ui/template/src/styles.css", + "src/app/styles.css", + "src/features/node-agent/components/NodeAgentThread.tsx", + "src/features/node-agent/components/toolUIs.tsx" + ], + "noMutations": true +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/custody-before.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/custody-before.json new file mode 100644 index 0000000..91e26d6 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/custody-before.json @@ -0,0 +1,5197 @@ +{ + "at": "2026-09-05T09:26:35.056801+00:00", + "phase": "before", + "state": { + "head": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "index": "32423ff3a8a3cd745ac285ce51730b139a2344c14a40a67b43ace4dfbc271a51", + "refs": "66c33b755dd5ab353501b08720e282584bbfc643331375bb49b45e09fdb45007", + "status": "7bc88e40de9c3bf6a846190738ef6e299a80b994252d643a07e718e414064512" + }, + "receiptSha256": "dc94f74670c577ebf98619e36e60060bb9889341fdb3728b79be1449ea00062e", + "authoredDigest": "fe828a524641e727499e575836929cfc38130bcf873693a061173c68485b5e10", + "sourceProofDigest": "a913d12a999e90e4017dca957b69ad7a6d6a5ea671c2ab562b8ce5b3f46939b9", + "authoredPaths": { + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + "HANDOFF.md": "03513bef1b7e6ef34c285472e7701b959f18352241f3e5fe87ac790020eb50be", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e" + }, + "portableManifestSha256": "c3601b7021e3d7d5a1b233b620f6952422b98828de791492de393e4776dc8210", + "portableBindings": { + "evidence/current-consumer-20260905/README.md": { + "sha256": "dd25393b9d34f1635c50a3911603e98b57e658263673b6268be2aedfe8235b80", + "bytes": 3505 + }, + "evidence/current-consumer-20260905/historical/browser-before-03/report.json": { + "sha256": "509f4f14ba05b96ae17fa2b8d23d25ab11c5a66975756d128622dc681ccdcf8c", + "bytes": 31866 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.html": { + "sha256": "7cee54fd73c476992d29dbd03cd53be84978ffd5ce026fcd0c79df6c92653d5d", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.png": { + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "bytes": 48450 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-01/generated-error-text-200-390.png": { + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "bytes": 48450 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-01/report.json": { + "sha256": "e36764e37db2649fbef0908e65208b4fbf309a63e949b8b0a5a0cecad796469d", + "bytes": 84861 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.html": { + "sha256": "7bef1ff5cd4ed944b73e92031c37bb3ad285fde2062d33e861faa950dd9fa5cf", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.png": { + "sha256": "cb45fbca1d0d5a23a76c726235a0f53f68b1e82b2959528c156fe518b6885dee", + "bytes": 75461 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-02/generated-error-text-200-390.png": { + "sha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "bytes": 49228 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-02/report.json": { + "sha256": "ba38b0cc4391635b1aca9b5affd8570951ade9fe72c36ad94ca820d123b73835", + "bytes": 320226 + }, + "evidence/current-consumer-20260905/historical/d3-final-browser-02/source-error-text-200-390.png": { + "sha256": "193b20dd5900f7101a9707bab577835645a619596a2b5d76489decf915f42bb8", + "bytes": 75482 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.html": { + "sha256": "8b20b95d6b8854a3706d1c600d4f4230aed58a36c670e23b3149ab1d560c040b", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.png": { + "sha256": "619972dd54365a8402662a7f84336792d6eaca4333354336656acea3b30cb56c", + "bytes": 45131 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-01/report.json": { + "sha256": "3e5149702e84d223bc8d005d25bd455a3bb135e189fe9889a862c22a1025fa2f", + "bytes": 39838 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.html": { + "sha256": "65071a02e617be4861abc4c7ce5e1b2289be1a9dc7ba3735b20c57c70c5f458c", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.png": { + "sha256": "3fe4ba8d90b13c14affaffdf358a1339f898335c1f17ab767d0ff7c2f7e14a93", + "bytes": 47665 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-02/report.json": { + "sha256": "25790c3eff05cc321bb7db465c0c17b66953e97d6f9d534518e611765985da40", + "bytes": 49152 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.html": { + "sha256": "d394a476f68e2ab347209a80f2ff56480030eefefda0f5c1b9c7ec4657ef502a", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.png": { + "sha256": "2e59ebc5923b6a4372d35ce13edd12c09e95acaa1c8a12c356c8a6604d117485", + "bytes": 47537 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-03/report.json": { + "sha256": "628c9d434f0f04fde80d6c26f518c94f9127c901addfc63d5c2441ebb70799c0", + "bytes": 49186 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.html": { + "sha256": "fa164c86bc3c7e205e58ef9b6b2c587fd210333d94949435957d028caeea343e", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.png": { + "sha256": "3fe4ba8d90b13c14affaffdf358a1339f898335c1f17ab767d0ff7c2f7e14a93", + "bytes": 47665 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-04/report.json": { + "sha256": "07523b9fc8936cf10b2b9886ee103d0092ae8962c6eec27b4e54233a316c1e70", + "bytes": 49186 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.html": { + "sha256": "aad2ce2325693e765154b80d05bbd655a769549f5d97f46e86ab9a7faf75f3ec", + "bytes": 105248 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.png": { + "sha256": "5a405fbcc7753997cbe4a830b64d4d7d6b032295891d39b781c9fe0d26d33586", + "bytes": 77272 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/report.json": { + "sha256": "5d3f540caf94cb8b1e8fcc824f24008a00a688f394280c044d9558e68181793f", + "bytes": 152063 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/source-text-200-390.png": { + "sha256": "b9f14a4ecc6115041985c2074697fc0220d0f135a30a93e9b609c049d232d796", + "bytes": 77313 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-06/report.json": { + "sha256": "fc18836185b6b326b94fe7a13e209c835fbac3de843638c669e46ded045cca9c", + "bytes": 359511 + }, + "evidence/current-consumer-20260905/historical/d3-source-smoke-06/source-error-text-200-390.png": { + "sha256": "56b259eda21b5dfaf35dc3cf4fa1805de6647b760a8a572b778fd63471888c5a", + "bytes": 71011 + }, + "evidence/current-consumer-20260905/historical/first-submit-dependency-comparison-01/report.json": { + "sha256": "99693bc6140469572d3821b30642b6d3a395c45f12a96a0a8ebd8dd0044aaf1c", + "bytes": 64220 + }, + "evidence/current-consumer-20260905/historical/first-submit-diagnosis-01/report.json": { + "sha256": "27741aacc74b04bb19380e0c6354f20d8db768414689edcee557674d7567cfa8", + "bytes": 85904 + }, + "evidence/current-consumer-20260905/historical/locked-browser-01/failure.html": { + "sha256": "e412f7230502f3d6f735a0272e0145032d6e49b6d3bbdbc4517213aa28d724c7", + "bytes": 13141 + }, + "evidence/current-consumer-20260905/historical/locked-browser-01/failure.png": { + "sha256": "5dce8e4f033659ce22a46d99519690d746b5470cbc4dee32fa11557eded7ab93", + "bytes": 33108 + }, + "evidence/current-consumer-20260905/historical/locked-browser-01/report.json": { + "sha256": "c1c9e0f1a4b1b08b3e25d672d76bf3f0954dab40ddcdbf4e8fa6028ef7a2eda3", + "bytes": 93753 + }, + "evidence/current-consumer-20260905/operator/D3_SOURCE_BEFORE_BINDINGS.json": { + "sha256": "11866c9e365fe8617a32e726c9d038d4b81392ba19ab25ae8c88f24c5d691b6b", + "bytes": 1140 + }, + "evidence/current-consumer-20260905/operator/browser-before-01-command.json": { + "sha256": "f3349585a17450163e6b1ee081b3f2af6e37fca0e775a8ea207dbb3d368383f1", + "bytes": 366 + }, + "evidence/current-consumer-20260905/operator/browser-before-01-harness.mjs.txt": { + "sha256": "364cfa15c6b176407b7afe8caec2f555f718ca09886e86d0596d481031a48a02", + "bytes": 12067 + }, + "evidence/current-consumer-20260905/operator/browser-before-01.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/browser-before-01.stdout": { + "sha256": "a9d110ed6d6282c7238008f2c51a5a544121b91f2830a629ee7e5cd3af1c8f69", + "bytes": 753 + }, + "evidence/current-consumer-20260905/operator/browser-before-02-command.json": { + "sha256": "7a3a79f21864cec996ae8e838057c3431ae1a7c73a76be6746f3dd1f565c97c3", + "bytes": 364 + }, + "evidence/current-consumer-20260905/operator/browser-before-02-command.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/browser-before-02-command.stdout": { + "sha256": "3ee598d331df710a361076a47c5591cb83863ef2220f62015986b17c28cef06f", + "bytes": 1003 + }, + "evidence/current-consumer-20260905/operator/browser-before-02-harness.mjs.txt": { + "sha256": "211987d2ea5c21337226155501cf79a665db0ee88f05e0adf71d5d2704eeb54e", + "bytes": 12356 + }, + "evidence/current-consumer-20260905/operator/browser-before-03-command.json": { + "sha256": "ada89b022af7aa6ec91acb627b6882b0d7927702fd7893dbdb7975ef546f68fb", + "bytes": 365 + }, + "evidence/current-consumer-20260905/operator/browser-before-03-command.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/browser-before-03-command.stdout": { + "sha256": "1c6472a5aaea3e4e56e36d017b4bfe5844d3d0709aed0f276e328b839b936d1d", + "bytes": 533 + }, + "evidence/current-consumer-20260905/operator/browser-before-03-harness.mjs.txt": { + "sha256": "1f74cbdf16dd807444c0986cc65063732b273c49eb48c260dabedbaa4d6e0c4d", + "bytes": 12436 + }, + "evidence/current-consumer-20260905/operator/canonical-audit-production.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/canonical-audit-production.stdout": { + "sha256": "63c0065f6900d02e8b63ffecedfe68547d17db39d991d7f67869cbf3abce2e49", + "bytes": 366 + }, + "evidence/current-consumer-20260905/operator/canonical-build.stderr": { + "sha256": "aa9b7207d2d2d42fbf4e013331ee76fc39b9b042505b38551893c1f60f35b63a", + "bytes": 342 + }, + "evidence/current-consumer-20260905/operator/canonical-build.stdout": { + "sha256": "dcfd2e31e77842b1f9278c39d812c5433a5f87b4090579b40019e649e8052722", + "bytes": 604 + }, + "evidence/current-consumer-20260905/operator/canonical-checks.json": { + "sha256": "36fefaf8774eb0b53302640f6779e09bca9293d0c01b34d53a93d1758974299d", + "bytes": 2804 + }, + "evidence/current-consumer-20260905/operator/canonical-tests.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/canonical-tests.stdout": { + "sha256": "b939a31d2f0eb38e23b00706c1d8216c85d1571302137207f611de7b98072cf7", + "bytes": 1253 + }, + "evidence/current-consumer-20260905/operator/capture-generated-d3-before-01.mjs.txt": { + "sha256": "ca239549202a427b9f4a6bccf05fe4646876801f73f8d05f964357cde017ce1d", + "bytes": 9017 + }, + "evidence/current-consumer-20260905/operator/capture-generated-d3-before.mjs.txt": { + "sha256": "fade830ebb8a90c4bb82c1a5fcb0f9f27f5a7660904ac39b4a86184a95bbb61d", + "bytes": 9076 + }, + "evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after-syntax-failure.mjs.txt": { + "sha256": "d668a20bdbdd2e0d660e7d93a6fd74e2db99e9c6841070dc910eed91764a3c22", + "bytes": 7609 + }, + "evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after.mjs.txt": { + "sha256": "c2ca4153af05e4e128d6cd6fb38258e6dc9827f48dafa13f5119f8aa40d6af4b", + "bytes": 7608 + }, + "evidence/current-consumer-20260905/operator/capture-source-d3-before-01.mjs.txt": { + "sha256": "a1039f2f9f4b737c7d2b055325aee9f54ffb022e682d71c1bddc7f0edd860f7a", + "bytes": 8554 + }, + "evidence/current-consumer-20260905/operator/capture-source-d3-before-02.mjs.txt": { + "sha256": "f6c05c18f4577a14cb1adec9b403b6f9eeb0e6de28f47cbf792b5676e8159e14", + "bytes": 8962 + }, + "evidence/current-consumer-20260905/operator/capture-source-d3-before.mjs.txt": { + "sha256": "5a50d40dbe8380cc366c46c289cb67c06f3bbee4de8b867d651f0a9efc3cd539", + "bytes": 8964 + }, + "evidence/current-consumer-20260905/operator/capture-source-d3-matched-after.mjs.txt": { + "sha256": "a358ba9166caae7baf5b59e22f598817dbb472854b16b0bcdd8b154b62ee1113", + "bytes": 7015 + }, + "evidence/current-consumer-20260905/operator/d3-citation-before/.tours/01-primary-user-flow.tour": { + "sha256": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + "bytes": 4743 + }, + "evidence/current-consumer-20260905/operator/d3-citation-before/docs/START_HERE.md.txt": { + "sha256": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "bytes": 17384 + }, + "evidence/current-consumer-20260905/operator/d3-citation-correctness-addendum.json": { + "sha256": "82c548892018bec4225826ab29d9f7e989fe04dbbd6fba021715fd516cc0da32", + "bytes": 923 + }, + "evidence/current-consumer-20260905/operator/d3-consumer-02-commands.json": { + "sha256": "b0296d34c5fecec7f11e0b16ee1ee1ff9b9ca340021a2e3864ef64df0fdbaabb", + "bytes": 1831 + }, + "evidence/current-consumer-20260905/operator/d3-consumer-preservation.json": { + "sha256": "69a91e38f0001e57b2effbd7988d55302365f878235e81d81e328b7f591437df", + "bytes": 5441 + }, + "evidence/current-consumer-20260905/operator/d3-corrected-tours-validate.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-corrected-tours-validate.stdout": { + "sha256": "8b91eaa9d523522537255352c11c4861181d47d8559a7cfee65ebd89e731476a", + "bytes": 188 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-css-before.txt": { + "sha256": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "bytes": 7126 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.command.json": { + "sha256": "9add5c59d39b69db716453b518ea2f4914a4af3df50b6c7b85edfa77c3cb1871", + "bytes": 512 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.stdout": { + "sha256": "621db98d4563e6f931f5784daad4d057d0e424b42ddf76b8471129a9d78a640e", + "bytes": 476 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/change-boundary.md.txt": { + "sha256": "655de20425af950dd8a7608433711266bbbe39e40e534650eade81d9ca82e27c", + "bytes": 714 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/change-boundary.png": { + "sha256": "e3a84fa9f8010add7871ab196f8abccfbbaab4046b6aec08bbae8aac4c2f163d", + "bytes": 50135 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/failure.html": { + "sha256": "6a0ef3e833cb1ec1d5e81b8fa865a22606aaebf4a6325a094f80965776d3b39a", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/failure.png": { + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "bytes": 48450 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.before.html": { + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "bytes": 12122 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.html": { + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "bytes": 12122 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.json": { + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "bytes": 1429 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.before.html": { + "sha256": "20fc61c6350ca9aa39bf487c4ac4e86f042e715f214a89db813495cb80515d17", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.html": { + "sha256": "20fc61c6350ca9aa39bf487c4ac4e86f042e715f214a89db813495cb80515d17", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.png": { + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "bytes": 29688 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.before.html": { + "sha256": "0d30220b7fa640f71b8a64f3d0a727d23a6fc0605d687ae357c3ea3343b8fdb2", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.html": { + "sha256": "0d30220b7fa640f71b8a64f3d0a727d23a6fc0605d687ae357c3ea3343b8fdb2", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.png": { + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "bytes": 29700 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.before.html": { + "sha256": "6a0ef3e833cb1ec1d5e81b8fa865a22606aaebf4a6325a094f80965776d3b39a", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.html": { + "sha256": "6a0ef3e833cb1ec1d5e81b8fa865a22606aaebf4a6325a094f80965776d3b39a", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.json": { + "sha256": "5f25fcb3438e23c8da82b4f56aea5e3fca094692a605db0ee8c63d26f72e17d9", + "bytes": 4504 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.png": { + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "bytes": 48450 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.before.html": { + "sha256": "1ff85a39dce2635dc005f360f43a98d69256836561e7ee0ee5a14e3317c32f68", + "bytes": 14721 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.html": { + "sha256": "1ff85a39dce2635dc005f360f43a98d69256836561e7ee0ee5a14e3317c32f68", + "bytes": 14721 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.json": { + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "bytes": 2958 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.png": { + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "bytes": 31695 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/intrinsic-width-diagnosis.json": { + "sha256": "5f9d141b22c820efc00df05e432b6dbe77d693a7a14198307b9948c5513b3978", + "bytes": 1681 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/report.json": { + "sha256": "9c1c9d90b1d55864b66bb9b0da33b2fbd05e85d6ecf5e70ceab6ed3771d39859", + "bytes": 53784 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.command.json": { + "sha256": "713a05e8c3bb6ee8ed85fc49562871e1a4f5bf28ab544ffee13ec33eabfd343e", + "bytes": 514 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.stdout": { + "sha256": "31db5f264364bb7962a150434032aed09130b22f2a0032b2d362e7d59f4516d8", + "bytes": 479 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/change-boundary.png": { + "sha256": "e3a84fa9f8010add7871ab196f8abccfbbaab4046b6aec08bbae8aac4c2f163d", + "bytes": 50135 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.html": { + "sha256": "1667d0a2ba7a05ad13378eab6f004b32c23aeee890e3de24b954d9ba3bd349e4", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.png": { + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "bytes": 48450 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.before.html": { + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "bytes": 12122 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.html": { + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "bytes": 12122 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.json": { + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "bytes": 1429 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.before.html": { + "sha256": "e4e90a0c6a9b2ebd6593de15327a2163a1cae502a20b4b080565549429485ac4", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.html": { + "sha256": "e4e90a0c6a9b2ebd6593de15327a2163a1cae502a20b4b080565549429485ac4", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.png": { + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "bytes": 29688 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.before.html": { + "sha256": "ac8a9f57bd49edeebff13e4e752f20d89731066258cd296196539d3e387aa1ea", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.html": { + "sha256": "ac8a9f57bd49edeebff13e4e752f20d89731066258cd296196539d3e387aa1ea", + "bytes": 18195 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.png": { + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "bytes": 29700 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.before.html": { + "sha256": "1667d0a2ba7a05ad13378eab6f004b32c23aeee890e3de24b954d9ba3bd349e4", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.html": { + "sha256": "1667d0a2ba7a05ad13378eab6f004b32c23aeee890e3de24b954d9ba3bd349e4", + "bytes": 21043 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.json": { + "sha256": "5f25fcb3438e23c8da82b4f56aea5e3fca094692a605db0ee8c63d26f72e17d9", + "bytes": 4504 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.png": { + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "bytes": 48450 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.before.html": { + "sha256": "c99d225b4a798c7f17d79360f3044b707d2491a03d913fe1cfdf022becafa36a", + "bytes": 14721 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.html": { + "sha256": "c99d225b4a798c7f17d79360f3044b707d2491a03d913fe1cfdf022becafa36a", + "bytes": 14721 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.json": { + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "bytes": 2958 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.png": { + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "bytes": 31695 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/intrinsic-width-diagnosis.json": { + "sha256": "b7ab84e026c8a4785f4e64f61f68ae15c945607f0dcc1f691d89ae29e3641952", + "bytes": 1094 + }, + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/report.json": { + "sha256": "310d33643208d5887ab00fdc9f6374d682f0067f9b1edbfd1b0bf5c3742388d3", + "bytes": 53787 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-build.stderr": { + "sha256": "aa9b7207d2d2d42fbf4e013331ee76fc39b9b042505b38551893c1f60f35b63a", + "bytes": 342 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-build.stdout": { + "sha256": "e726ba3b108ddbd360c358c54c04154c2dd89dc90e7003bca255b8db23f9f7b0", + "bytes": 604 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-commands.json": { + "sha256": "cd80bf5203ea3c863f77fc5190a937e0fbe2c2a3221f4a9806ee4500cf457892", + "bytes": 3910 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-test.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-test.stdout": { + "sha256": "5e876ce8972556a35b75a101d275324ab2d4c244b41f088b157d019d98609c57", + "bytes": 1251 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-tours-validate.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-03-tours-validate.stdout": { + "sha256": "8b91eaa9d523522537255352c11c4861181d47d8559a7cfee65ebd89e731476a", + "bytes": 188 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-01.command.json": { + "sha256": "2f49fc84dc4bc4a20d172320eb19637a2395a6ba071344982e1d02f91ae9028b", + "bytes": 383 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-01.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-01.stdout": { + "sha256": "fa4b3733d14708ea7862f4d4432d2dcb771a1e3d2e7b4c48c9935066c41100c2", + "bytes": 654 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-02.command.json": { + "sha256": "65e27ecda84be3e5c05b7fa9c9218015bdeda8d816e20bec678c65f658ce261c", + "bytes": 387 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-02.stderr": { + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-02.stdout": { + "sha256": "b05bf8785f7d5e963a38b1a0c1fa99626ee5cd225adb964fff134f6f6623e420", + "bytes": 675 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03.stderr": { + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03.stdout": { + "sha256": "a592d7c4ae366440302991fd057976fa66727bc0590b5759b58e686eeedbcd05", + "bytes": 205 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.before.html": { + "sha256": "59eb34ea0435ce840d70eb48a59adac70759497f3ae7a4b5584bc2488ffecbf2", + "bytes": 54536 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.html": { + "sha256": "59eb34ea0435ce840d70eb48a59adac70759497f3ae7a4b5584bc2488ffecbf2", + "bytes": 54536 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.json": { + "sha256": "6935b87a602d818b983454526a9b2b3e9d5d1c996fbed4318014aab143995adf", + "bytes": 20228 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.png": { + "sha256": "58ba9e90d8ee08e3e4de36315520230539a85f7a6f7aa00c00d551d1faeca633", + "bytes": 31563 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.json": { + "sha256": "bf71f827c6258d6850a61ffd3f44d5d49a579a8f50533c7e5b8995e599227732", + "bytes": 1441 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.png": { + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "bytes": 35614 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.json": { + "sha256": "ec64ee186c5090fb5b13eb0536c3d88caa2a51f55cf313b5321ef224d3ba7bf1", + "bytes": 1447 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.json": { + "sha256": "784b057efcc06117428ff64e758febd96fcead440f76cfd8bb1149a843077a42", + "bytes": 1447 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.png": { + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "bytes": 38890 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.before.html": { + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.html": { + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.json": { + "sha256": "797209909becf655017daaaa1aa4c3561deb375c2cd86132540d874cdbc9a31d", + "bytes": 1429 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.png": { + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "bytes": 27800 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.before.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.json": { + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "bytes": 1429 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.before.html": { + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.html": { + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.json": { + "sha256": "c75f981b06d8509b77afe350c14ea252bc96e3ed341a3746f43eddc6746e6c33", + "bytes": 1438 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.png": { + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "bytes": 34212 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.before.html": { + "sha256": "31b63a4a1677db645819b3a8282212e35c49694d781bde3e1ee7fc0a7eac7a89", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.html": { + "sha256": "31b63a4a1677db645819b3a8282212e35c49694d781bde3e1ee7fc0a7eac7a89", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.json": { + "sha256": "b763d3a5d040ed75ab1034fa9b2a2c86503f719947d9bc57c800440ff9fb55b4", + "bytes": 4521 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.png": { + "sha256": "8771217ee4017d80a0d96770f8b6102ca307e466c9ce9bc892b162b00d43af5f", + "bytes": 50960 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.before.html": { + "sha256": "ff05f89650666f1a056ae7e94f9f5af7bed3077ea79ee74541717eee2d09c0c2", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.html": { + "sha256": "ff05f89650666f1a056ae7e94f9f5af7bed3077ea79ee74541717eee2d09c0c2", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.json": { + "sha256": "33ce1d3d8501c0c9bdf34e0f37ca1f9a3a2f39d0b5637f20594dff67c69b053f", + "bytes": 4528 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.png": { + "sha256": "0b0b4496efe9ccd09e844a4e75afb7ff74e37dc54ce08f64911ee322ed830d60", + "bytes": 53157 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.before.html": { + "sha256": "7d4b324f47c6ae4f1a28be373c8f48bae4bddee948e7b02b5101f564988e5015", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.html": { + "sha256": "7d4b324f47c6ae4f1a28be373c8f48bae4bddee948e7b02b5101f564988e5015", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.json": { + "sha256": "2bc6cca0a819ca19908d7a4cc21e7803f649b224a1020f141090e8f703e4da75", + "bytes": 4528 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.png": { + "sha256": "04ea13ef9f7347a8b3f69e0c6d8cbe277197c38ea5c31a4571154504696a7207", + "bytes": 55209 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.before.html": { + "sha256": "8b29c5d26da3aeedb4ecee0b4b40a189d1a3470160fae0ac23af5c5c49d704c1", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.html": { + "sha256": "8b29c5d26da3aeedb4ecee0b4b40a189d1a3470160fae0ac23af5c5c49d704c1", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.json": { + "sha256": "acbd3eb3b7d0890f2c42ee7c2de5651a0e3b47a40719f0a65f953adbd372ddba", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.png": { + "sha256": "914d34e5c4e3c77a75568bda1683fcad1e85d27ec995dd45cb9ab945c04b56b7", + "bytes": 27882 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.before.html": { + "sha256": "831bd2526f3ebdbd1795616642137818fc6f4df8fd64c06d989098c8bb667685", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.html": { + "sha256": "831bd2526f3ebdbd1795616642137818fc6f4df8fd64c06d989098c8bb667685", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.png": { + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "bytes": 29688 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.before.html": { + "sha256": "bc1685eeb14ac6dde0ceb78f3bb834213d7b02ee5ce55204cc1825589165191b", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.html": { + "sha256": "bc1685eeb14ac6dde0ceb78f3bb834213d7b02ee5ce55204cc1825589165191b", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.json": { + "sha256": "629a509368163ec0675ab696b8317dd4d79c305a22ca9871b6874e4a3b9ec075", + "bytes": 4528 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.png": { + "sha256": "7b29501873ba5b601f6bbb3ef55468f49a159347bf4839eeeb181e5d7bba9710", + "bytes": 49649 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.before.html": { + "sha256": "1b70b093669a29e7c913b7fd5cd19aa3804f90d1c205e31b217003d6f701f9e1", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.html": { + "sha256": "1b70b093669a29e7c913b7fd5cd19aa3804f90d1c205e31b217003d6f701f9e1", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.json": { + "sha256": "b763d3a5d040ed75ab1034fa9b2a2c86503f719947d9bc57c800440ff9fb55b4", + "bytes": 4521 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.png": { + "sha256": "56f0f5a4352c57b7c56842dcd6da1f6c90d04dfb46cfae4995994a48995ec2e2", + "bytes": 50971 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.before.html": { + "sha256": "96661f580c686a2b16cecee3997a37c008cb26218824900b238512b4e52b80e9", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.html": { + "sha256": "96661f580c686a2b16cecee3997a37c008cb26218824900b238512b4e52b80e9", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.json": { + "sha256": "51378138438aa879575cff6711662990b1d2dcf1d417c4a9b85ba0a0c3c09421", + "bytes": 4524 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.png": { + "sha256": "07765375ec1a2f2786cd335ef09b11e6daf43b5625483e646f3c722a6f5b291b", + "bytes": 53122 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.before.html": { + "sha256": "38f2d9548bd5544e0002105ed7bef8c6b1b25365855291c95f2cbb67dfe91045", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.html": { + "sha256": "38f2d9548bd5544e0002105ed7bef8c6b1b25365855291c95f2cbb67dfe91045", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.json": { + "sha256": "2bc6cca0a819ca19908d7a4cc21e7803f649b224a1020f141090e8f703e4da75", + "bytes": 4528 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.png": { + "sha256": "8af7493a48bb6c6c5c98e4bcc94edf71d35ffe14af6a3db4b696e2923f5f123b", + "bytes": 55222 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.before.html": { + "sha256": "2a635423912976e0f7d6cc99e47ff9e669b8b355b542faa27b62924d68971a28", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.html": { + "sha256": "2a635423912976e0f7d6cc99e47ff9e669b8b355b542faa27b62924d68971a28", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.json": { + "sha256": "188c5498ec6159003e143423834a7aa6938d9f49a3ec7c85d742a2a4d453e52d", + "bytes": 4498 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.png": { + "sha256": "937c54b96421ca35ca308d9de0682e87350da227de26184abb7a3754220c5cd8", + "bytes": 27824 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.before.html": { + "sha256": "da528412b4f08c62c8ba769cd9b9dfc478a84976c339b57c9743fafd91e4ebac", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.html": { + "sha256": "da528412b4f08c62c8ba769cd9b9dfc478a84976c339b57c9743fafd91e4ebac", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.png": { + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "bytes": 29700 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.before.html": { + "sha256": "332daa0d255caa5899f7aa121dfca63d9691a6ea22b08be21b36fe358125c200", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.html": { + "sha256": "332daa0d255caa5899f7aa121dfca63d9691a6ea22b08be21b36fe358125c200", + "bytes": 18235 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.json": { + "sha256": "dd95ca6fc9d1cd2bc995e8a97c30ae72c37bed8c09b38cf869c8263355556adc", + "bytes": 4524 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.png": { + "sha256": "b04709917a1a7c0571b29d18e84a1f98b2dbc9071ac2689281b8f7e2bde61968", + "bytes": 49582 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.before.html": { + "sha256": "f3e85102aecc9303d5ff25eaffda807cf41d3444ed8bf1d6f72fce2f13565175", + "bytes": 21083 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.html": { + "sha256": "f3e85102aecc9303d5ff25eaffda807cf41d3444ed8bf1d6f72fce2f13565175", + "bytes": 21083 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.json": { + "sha256": "f623528e34fb1e7fccd23e840e1c9502f91966ba01d204592b1ecf7ad4a3aca3", + "bytes": 4506 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.png": { + "sha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "bytes": 49228 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.before.html": { + "sha256": "9bce97b3f946570ac670b7ba0e5cbe0ec0dd2dc0cb3fd0159fe91a5f51dbe0c1", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.html": { + "sha256": "9bce97b3f946570ac670b7ba0e5cbe0ec0dd2dc0cb3fd0159fe91a5f51dbe0c1", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.json": { + "sha256": "09ed69e83dee153dcfcf86b3396f0a8bceb7b8513b51014c8a57262cf4b7e6d6", + "bytes": 4898 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.png": { + "sha256": "a0f976461b91b9595c61523d38a92ffeb29812b08ec7e43a9539782a8bbb1ad9", + "bytes": 51830 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.before.html": { + "sha256": "9cd399a50921668f33cde1ed70df59b680ac9282a44dcacaf7b479b9ea865cbe", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.html": { + "sha256": "9cd399a50921668f33cde1ed70df59b680ac9282a44dcacaf7b479b9ea865cbe", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.json": { + "sha256": "a113dd2bc8fce82da49447e11f2427ae3799c57e868e815d31a3cedc660b770e", + "bytes": 4900 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.png": { + "sha256": "a11ca95732178919c8ec6f957d8c8ce1e30376525fda5a4aace5b1870ac31dd2", + "bytes": 54055 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.before.html": { + "sha256": "14874ab71f36c95ca64bdcd3eb5f656f6c5a6f0fb72ff9f5f5adc57bd4a46e6b", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.html": { + "sha256": "14874ab71f36c95ca64bdcd3eb5f656f6c5a6f0fb72ff9f5f5adc57bd4a46e6b", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.json": { + "sha256": "f9784ce6975cbf0006b7e526e08a1fd7f67487354962cca52ac0163001f0db22", + "bytes": 4904 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.png": { + "sha256": "ef4cc1b5a4d754bcc95061400b93152dc8aa9b536e221e8b9dec376b3623860d", + "bytes": 56277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.before.html": { + "sha256": "f009a1ec5c5538c0c5bc1f078ce8070c810d3fa3709e6705ba2dfb4faee0042c", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.html": { + "sha256": "f009a1ec5c5538c0c5bc1f078ce8070c810d3fa3709e6705ba2dfb4faee0042c", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.json": { + "sha256": "eba49027b686d051cfec574abc3d529fb6e1738c01367c32f3cdc66485e1f7ba", + "bytes": 4882 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.png": { + "sha256": "1ffeaf2cc5fcbb17e9fbc1dd7cfa1d46a42c460804fb45953b888760756df998", + "bytes": 28623 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.before.html": { + "sha256": "b633586e65ea1710c3179a50fba99b6c286530fa0d2180104b4f43e54e7d46e0", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.html": { + "sha256": "b633586e65ea1710c3179a50fba99b6c286530fa0d2180104b4f43e54e7d46e0", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.json": { + "sha256": "919f9b1861ed7e8b243b04a43d3fb579c36cc962ff43b30fb6f562ee52fd4c5c", + "bytes": 4886 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.png": { + "sha256": "33ee4ebc7c01a3f826e4b66b873fa57610fce8cd9120df361172a40c3def033d", + "bytes": 31565 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.before.html": { + "sha256": "9f2c704770b4c42340d3598da93093bda55cf79ea910ad205ef68a8644db7532", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.html": { + "sha256": "9f2c704770b4c42340d3598da93093bda55cf79ea910ad205ef68a8644db7532", + "bytes": 19736 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.json": { + "sha256": "7e4b9963215262a407359174f1f42d59d60322a631832e1b86df469081dec80b", + "bytes": 4871 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.png": { + "sha256": "335650ac40dab0dbf9289b21fea9191ed2ed072bd43d63847810d026edb53f08", + "bytes": 49385 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.json": { + "sha256": "bf71f827c6258d6850a61ffd3f44d5d49a579a8f50533c7e5b8995e599227732", + "bytes": 1441 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.png": { + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "bytes": 35614 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.json": { + "sha256": "ec64ee186c5090fb5b13eb0536c3d88caa2a51f55cf313b5321ef224d3ba7bf1", + "bytes": 1447 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.json": { + "sha256": "784b057efcc06117428ff64e758febd96fcead440f76cfd8bb1149a843077a42", + "bytes": 1447 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.png": { + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "bytes": 38890 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.before.html": { + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.html": { + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.json": { + "sha256": "797209909becf655017daaaa1aa4c3561deb375c2cd86132540d874cdbc9a31d", + "bytes": 1429 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.png": { + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "bytes": 27800 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.before.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.json": { + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "bytes": 1429 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.before.html": { + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.html": { + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.json": { + "sha256": "c75f981b06d8509b77afe350c14ea252bc96e3ed341a3746f43eddc6746e6c33", + "bytes": 1438 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.png": { + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "bytes": 34212 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.before.html": { + "sha256": "6a2b277861fddc1c9b8d5d5c04608675e87cb1b0ff1dba099145b98805a064b7", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.html": { + "sha256": "6a2b277861fddc1c9b8d5d5c04608675e87cb1b0ff1dba099145b98805a064b7", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.json": { + "sha256": "5f0bf8dea5cd58549821744d98ac9f95da73d00b8f2f5217e60e13af57411751", + "bytes": 2960 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.png": { + "sha256": "37d80b33fdd0769336860ba760072bca9682e6bef5d683e318a3f1752f3d6596", + "bytes": 45309 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.before.html": { + "sha256": "f6a7d50b138436bd6d5ad5bcf72adb62568d19d43707a19193c7e3fa3070857f", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.html": { + "sha256": "f6a7d50b138436bd6d5ad5bcf72adb62568d19d43707a19193c7e3fa3070857f", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.json": { + "sha256": "a28da15d369adaad05e18e10240035df47bd14c334728dd0214a97b54b8d3b5e", + "bytes": 2967 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.png": { + "sha256": "83264c4288a5f0b7240a757a12571f7f292902ea890b426b9f4b5318dd3a85c7", + "bytes": 47515 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.before.html": { + "sha256": "f64f501220f8a0276d7a3bc5ab741d6c7a5c941a0cd77f2d75ccb7bc61131316", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.html": { + "sha256": "f64f501220f8a0276d7a3bc5ab741d6c7a5c941a0cd77f2d75ccb7bc61131316", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.json": { + "sha256": "5706a5988c38ce0d152a829c6e6f4dd7452998b3c4912bd0a8fe99e5194acc08", + "bytes": 2967 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.png": { + "sha256": "c6e314e7866c16a0a9fb893ab53e708b69d01cf1dfc91e175171021ad1563339", + "bytes": 49151 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.before.html": { + "sha256": "3fdff8dd2ec426a7eb057f3929eaa848287d708d6ef03d2056c72a6312eb5e81", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.html": { + "sha256": "3fdff8dd2ec426a7eb057f3929eaa848287d708d6ef03d2056c72a6312eb5e81", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.json": { + "sha256": "de17fa92bb7fb042e84db8d007b906105914069aa8eebc1c5fab248601a3b8e1", + "bytes": 2958 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.png": { + "sha256": "652934d39f0e3eb65357e59ab2312c57f16fe9c2c2c0e4791e407dc9303dc6ec", + "bytes": 28849 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.before.html": { + "sha256": "9a6ae3a3b3ee5cfccf5b18dd2b430d95c8947deae9ed3f387c09e263b13d0cde", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.html": { + "sha256": "9a6ae3a3b3ee5cfccf5b18dd2b430d95c8947deae9ed3f387c09e263b13d0cde", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.json": { + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "bytes": 2958 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.png": { + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "bytes": 31695 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.before.html": { + "sha256": "c10e18c5db05e195233a32d1edf484a915bed44fce4e84742a91f9498c76833c", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.html": { + "sha256": "c10e18c5db05e195233a32d1edf484a915bed44fce4e84742a91f9498c76833c", + "bytes": 14761 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.json": { + "sha256": "608dcc480ad05aa2d6f509de3185c8b78a85123b58ffe0e7d509776dba1bdf41", + "bytes": 2975 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.png": { + "sha256": "d2e9ff544a462e6031dbfed0f425caf9bf1472afdadc02b5bd94ef233e6bb442", + "bytes": 43950 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/report.json": { + "sha256": "76dd8ca1416225bd0f9abe0b524ced0299a86c975fb839cafa18551d04759f24", + "bytes": 577947 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.before.html": { + "sha256": "cda586085a94bd048abe0d6a5d01f8ba4d47021806584558790352f4b67508b8", + "bytes": 86122 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.html": { + "sha256": "cda586085a94bd048abe0d6a5d01f8ba4d47021806584558790352f4b67508b8", + "bytes": 86122 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.json": { + "sha256": "8977d05241f0529107d785c5d2536e2896258bd583088176086cff623edc0365", + "bytes": 28403 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.png": { + "sha256": "a98d959fb951441de714ee82308450b40628fdf83a422dba3ab14604d078d46f", + "bytes": 63085 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.before.html": { + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.html": { + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.json": { + "sha256": "ede2876f19713dc531795df79fae94f1e4be1e6e59dde4c890d5a15c437dd3d5", + "bytes": 1709 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.png": { + "sha256": "1f1dcb02d9a8bc787a3c8f34284a37db509fe3c713c8cd2f1a0be280bec536bb", + "bytes": 76719 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.before.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.json": { + "sha256": "44f9802ac671da13c467ad5fd9e3283586cd10703eaa3cc653202c61ffe74a1f", + "bytes": 1715 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.png": { + "sha256": "d76544c99d3ac4bf70171cb55a4a984f5abb833b1b31ab3f17c971fb8ee13e3c", + "bytes": 84811 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.before.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.json": { + "sha256": "260c343e2494c57f66afb214a65220b03398ea2ca995d675370604361cb9632f", + "bytes": 1717 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.png": { + "sha256": "d15109fef507a1ff5c03ee7e219148e97c5d4cea7087eac04d48f8145a750aeb", + "bytes": 87564 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.before.html": { + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.html": { + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.json": { + "sha256": "8c49d01652d8a2b38a4b49aa70554305b1b5c5a5f9c8dffc59a28619cdee5568", + "bytes": 1702 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.png": { + "sha256": "a62e4eb88af10918e0ad7ad40deb6f0c6e3e9482bada71e9a316054d12f14e44", + "bytes": 57493 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.before.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.json": { + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "bytes": 1702 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.png": { + "sha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "bytes": 58620 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.before.html": { + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.html": { + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.json": { + "sha256": "727077405ce6cf0d1b2b56d4dc0b62cd2cf8f91a0c13ec45e7d14f912ac6a880", + "bytes": 1723 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.png": { + "sha256": "0e831f09beeba076c2b20de1a4d87afd5e312efe5ad5a0c82f8b76842de7463b", + "bytes": 77232 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.before.html": { + "sha256": "e553008bedfc8c779e1aca0aed9f21f0f71892bd41833c89af142313a4e45176", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.html": { + "sha256": "e553008bedfc8c779e1aca0aed9f21f0f71892bd41833c89af142313a4e45176", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.json": { + "sha256": "47f71ee461942f04a9f20ea9761d21911e447ed777780023eeb75627027b87ab", + "bytes": 5908 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.png": { + "sha256": "b381afd9f7491eacf6a037ceccdb12f2569d41517d332d0de8f32c54f0efc544", + "bytes": 128884 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.before.html": { + "sha256": "41fcbe79d81022e7a960a8bb9328923fc34cb7defdbdb84796d4fe76ecb53ac3", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.html": { + "sha256": "41fcbe79d81022e7a960a8bb9328923fc34cb7defdbdb84796d4fe76ecb53ac3", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.json": { + "sha256": "5ee19e2c30ca7a72425d05c7933872c423762cb05903081c441f9b5a296b7cd7", + "bytes": 5922 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.png": { + "sha256": "7c4827c0c1db231e6bc77de6fad921d2a49e101088f96d5d9b15118b23a663cb", + "bytes": 144304 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.before.html": { + "sha256": "cf319e2bddb9dd1617bfcda584096781a0c8ebe4531e20b4adcafd2e1bd25950", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.html": { + "sha256": "cf319e2bddb9dd1617bfcda584096781a0c8ebe4531e20b4adcafd2e1bd25950", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.json": { + "sha256": "3e3f387a51adf6b75f054e02682f15c9e69f67df0a20b1ac550cb7a208f501f5", + "bytes": 5925 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.png": { + "sha256": "0dd49d3a3361769a55fd9b85464a8c162131053d49cc9dbd332fbe3354bfbe36", + "bytes": 147532 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.before.html": { + "sha256": "6c386eb711883bbe758651a97d5cd1a34c7253abadc9702adaa845b70a6a75fc", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.html": { + "sha256": "6c386eb711883bbe758651a97d5cd1a34c7253abadc9702adaa845b70a6a75fc", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.json": { + "sha256": "a76329ce047c1f2b281868ea0ae4f4a44a8da8652f61da354c8a6b3bfe7e99c4", + "bytes": 5904 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.png": { + "sha256": "44c7e1467f62779beab1c0183ffe4514eb6fe13b34535663c9c38b6f1933a2f9", + "bytes": 43791 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.before.html": { + "sha256": "e41e344d41614a74f81c12b6048d07a41aa37dcb2cac3d496a6f04b4399a2958", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.html": { + "sha256": "e41e344d41614a74f81c12b6048d07a41aa37dcb2cac3d496a6f04b4399a2958", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.json": { + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "bytes": 5899 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.png": { + "sha256": "4c0ec09af5cd6b81a74dc757af114d0b0af8298d7f1554eea6175132903036e8", + "bytes": 58164 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.before.html": { + "sha256": "3cea10bb8724cf16065e3590a9f84e673f06344cd2a01444221b56cad60372cd", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.html": { + "sha256": "3cea10bb8724cf16065e3590a9f84e673f06344cd2a01444221b56cad60372cd", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.json": { + "sha256": "913126dff6202cfe9571f31351c74fe36bd9243cc5ca45be239d4debb11f0448", + "bytes": 5927 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.png": { + "sha256": "53662466a8e63ee63c22ef3048470ef87953482e9a26f76930cd0c8794b75328", + "bytes": 95358 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.before.html": { + "sha256": "335a0b2107d52542902df88b616c64a58489fff420c320d3164bc0c7e4a31db1", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.html": { + "sha256": "335a0b2107d52542902df88b616c64a58489fff420c320d3164bc0c7e4a31db1", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.json": { + "sha256": "47f71ee461942f04a9f20ea9761d21911e447ed777780023eeb75627027b87ab", + "bytes": 5908 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.png": { + "sha256": "97835197502d12bd65dd9a1fe6e859da8892a2251871bf263c1daae2808b3033", + "bytes": 128461 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.before.html": { + "sha256": "677b47b9f59f62898a937fb9833211778e512d32468a25af7f8be58c3570bd51", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.html": { + "sha256": "677b47b9f59f62898a937fb9833211778e512d32468a25af7f8be58c3570bd51", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.json": { + "sha256": "ff0a36f9e62a3e0e18996d3645809fdbd0b7d38dc8b7352c737f930779c43375", + "bytes": 5918 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.png": { + "sha256": "2d93b1676903b446f2e89ef6d62d674198ad1b5daf033ab2c0398ea48c348537", + "bytes": 143678 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.before.html": { + "sha256": "5f6d472525009ad331ac226f5afb0595b46f7e8ae5abd33efc26dfb25dfa424a", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.html": { + "sha256": "5f6d472525009ad331ac226f5afb0595b46f7e8ae5abd33efc26dfb25dfa424a", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.json": { + "sha256": "3e3f387a51adf6b75f054e02682f15c9e69f67df0a20b1ac550cb7a208f501f5", + "bytes": 5925 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.png": { + "sha256": "fd6ec63d65548c8b6d3ca5558fe5f8758dc84134daa518e3aa7d31d74748f580", + "bytes": 148281 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.before.html": { + "sha256": "fe4794d61ddb453b58bb3a0574c0a44a7fcc6be535f490c14c94049a960f92d0", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.html": { + "sha256": "fe4794d61ddb453b58bb3a0574c0a44a7fcc6be535f490c14c94049a960f92d0", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.json": { + "sha256": "82dfea2ac32f8f1fe1d03d22017e0f602fe1e0f94b8bd86153a9835acc6a61f3", + "bytes": 5900 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.png": { + "sha256": "1de10380e5438e19a7e0c6e19690cfdbb24cc1822a01dc28fd8dc411c937a2ca", + "bytes": 44396 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.before.html": { + "sha256": "10c7b663d6011ac66410f6ebbce0e2f3ff147ba78a4f6edeedd162e17fad42cd", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.html": { + "sha256": "10c7b663d6011ac66410f6ebbce0e2f3ff147ba78a4f6edeedd162e17fad42cd", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.json": { + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "bytes": 5899 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.png": { + "sha256": "1d8241a055cfaeb73eb0a25a1cc110e4ac50c9409e58035754c1896fb8bd1e8e", + "bytes": 58882 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.before.html": { + "sha256": "d892de46b7fbe83d7641f8318d7921ea185d885ea811a9a76fb268b6ffd8ba2b", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.html": { + "sha256": "d892de46b7fbe83d7641f8318d7921ea185d885ea811a9a76fb268b6ffd8ba2b", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.json": { + "sha256": "1ee677e15820c0634a102a07dd99781030db38f7dd86cfe815eaaf88053fc74f", + "bytes": 5923 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.png": { + "sha256": "0e9234dad7bd90d049e43078933c4d4e9caf3196d44c94f89b7409be6c6e7cac", + "bytes": 95382 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.before.html": { + "sha256": "635ad2633109d1b6c14560008a5610cb4140883b4f2e64b8aa8df364056e2370", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.html": { + "sha256": "635ad2633109d1b6c14560008a5610cb4140883b4f2e64b8aa8df364056e2370", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.json": { + "sha256": "9e7860273aad6cb70d41aa493f23df595335e8b9b7f32cfa74208bca04c4f0ab", + "bytes": 5891 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.png": { + "sha256": "2d2c6213cf705762e21755eabebddcf2d20c07c01a2e505125107c95c0e77f4b", + "bytes": 73249 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.before.html": { + "sha256": "f02a4a6fccf701e01a35aa8c39e857ac0f832610164e934d66bbe3b0d60337a3", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.html": { + "sha256": "f02a4a6fccf701e01a35aa8c39e857ac0f832610164e934d66bbe3b0d60337a3", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.json": { + "sha256": "7fb180c6286013944831d8ddef09b36883ba273908b8f74ff1ae8a1f8da6eba7", + "bytes": 6720 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.png": { + "sha256": "92ccbdfce3e0995faf70ad1939d12f8d6f8ad2ecf9727ee11df9f51467879343", + "bytes": 135585 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.before.html": { + "sha256": "154964016222b6c1a1e7aae1d5a39ac1c1b4bf5fc18d99a9e8c7bdaf164cc1fa", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.html": { + "sha256": "154964016222b6c1a1e7aae1d5a39ac1c1b4bf5fc18d99a9e8c7bdaf164cc1fa", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.json": { + "sha256": "06b0c8772672c8c540bdf19a9a6998610ec44597c062617bb734e19dea24c7cf", + "bytes": 6723 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.png": { + "sha256": "ccf4f2074df5b75ae9e53203f6683046d4a07119c0aa39cf40cd234ed1972516", + "bytes": 149978 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.before.html": { + "sha256": "13230db9d544e4360191b568e56ea867b0bd65f60669a8947b55fd4c07696bdd", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.html": { + "sha256": "13230db9d544e4360191b568e56ea867b0bd65f60669a8947b55fd4c07696bdd", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.json": { + "sha256": "76e4f68e794708d8b4be5f8c4b1f2082272f5617e7276993b76b289c43bd2dcf", + "bytes": 6729 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.png": { + "sha256": "c54cc28181262b58434cc5ef9d1eedefa4b339d341e06a6659ce8ae1b20d64d0", + "bytes": 153852 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.before.html": { + "sha256": "de3c5a3ee1edb4fe3a58890088d96d9a37e86e1134cb3c577bdda5dd0b414a54", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.html": { + "sha256": "de3c5a3ee1edb4fe3a58890088d96d9a37e86e1134cb3c577bdda5dd0b414a54", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.json": { + "sha256": "107dd9fba874a78c5b9b2d70c0a016ebb76554ae2c5335a661626d8c7ed34bb7", + "bytes": 6713 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.png": { + "sha256": "f710fb7b3a81a6b996172ecad176745a6aca8fa6ed8cabfc1beed3553c6c3415", + "bytes": 47462 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.before.html": { + "sha256": "4d08085c951fa3fa1f428eb8bcd6fdb9113fa8c027c8805fa8265644b88a6151", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.html": { + "sha256": "4d08085c951fa3fa1f428eb8bcd6fdb9113fa8c027c8805fa8265644b88a6151", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.json": { + "sha256": "2f228584dd5b101347fecb1ac11f22ce41b69b7e55636bcd677337c1e5b65aec", + "bytes": 6717 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.png": { + "sha256": "3be1d4d87ab86cd042f7a2e2409df9521bcd3d0185e5490a9bdebdfc2322c589", + "bytes": 62410 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.before.html": { + "sha256": "8cbb83779555a7a2883e88841c0fd2d1d8492c0786620cb122ae6b73fff148cc", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.html": { + "sha256": "8cbb83779555a7a2883e88841c0fd2d1d8492c0786620cb122ae6b73fff148cc", + "bytes": 33646 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.json": { + "sha256": "cf4917458a2da22f6713825f75bf94fb9638d0f0cfefd2a8bd356f3f5bb6b69a", + "bytes": 6725 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.png": { + "sha256": "d6426e2c8551db0ea54785c9752fd126c43dadc7c68a6639b7ae762cf9e2ded0", + "bytes": 102890 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.before.html": { + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.html": { + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.json": { + "sha256": "ede2876f19713dc531795df79fae94f1e4be1e6e59dde4c890d5a15c437dd3d5", + "bytes": 1709 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.png": { + "sha256": "28a5b8cbc04f9676ec6e93efc0abef0dc688bfc28e428e1f11dde8ad94a15047", + "bytes": 76675 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.before.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.json": { + "sha256": "44f9802ac671da13c467ad5fd9e3283586cd10703eaa3cc653202c61ffe74a1f", + "bytes": 1715 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.png": { + "sha256": "af46f2737897dc01909a26e05dfcc40315a367b28e8cd459750e635793859608", + "bytes": 84775 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.before.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.json": { + "sha256": "260c343e2494c57f66afb214a65220b03398ea2ca995d675370604361cb9632f", + "bytes": 1717 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.png": { + "sha256": "bbe8000a70f12ef30e269a508730b96a71569d75555526ae2c85cc1c29434a9b", + "bytes": 87561 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.before.html": { + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.html": { + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.json": { + "sha256": "8c49d01652d8a2b38a4b49aa70554305b1b5c5a5f9c8dffc59a28619cdee5568", + "bytes": 1702 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.png": { + "sha256": "79fb416362b6d91c86f3287cf855f7c98c746abe4be85d9bfba3f7cd670956f2", + "bytes": 57478 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.before.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.json": { + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "bytes": 1702 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.png": { + "sha256": "ff6103598e731b2f89b6f9eec44f4d3f1e901d905cb37c4b3139d4a30aa31de8", + "bytes": 58601 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.before.html": { + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.html": { + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.json": { + "sha256": "727077405ce6cf0d1b2b56d4dc0b62cd2cf8f91a0c13ec45e7d14f912ac6a880", + "bytes": 1723 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.png": { + "sha256": "8ff8dc987409066bd07225af18517486c5b5c6f813cfdd5504cc76c2ad83942e", + "bytes": 77201 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.before.html": { + "sha256": "67ae30f361414c14a0e3370ac1374545310b84031cdf10867fbc07a27e9a535d", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.html": { + "sha256": "67ae30f361414c14a0e3370ac1374545310b84031cdf10867fbc07a27e9a535d", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.json": { + "sha256": "f856be09c38311c976f3fa8bced7e7e691c824bee145f46918deadd9b8d9b2e7", + "bytes": 3794 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.png": { + "sha256": "974cf22ed8518165144d257bc4eb9a4b179f7ec79baa5badb74038deb6ecd39f", + "bytes": 131813 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.before.html": { + "sha256": "e99e9e91522bd3e50baaf80dc8633bfb85aa7dfe53f8cbb2d52c593ba9b2c406", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.html": { + "sha256": "e99e9e91522bd3e50baaf80dc8633bfb85aa7dfe53f8cbb2d52c593ba9b2c406", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.json": { + "sha256": "d5b8ffa3745e3270bbbf6b26325c4cc6ec1c089a8367934ffbe3ae86ea6762ed", + "bytes": 3811 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.png": { + "sha256": "e370868af0ecaaca436356008fc24545265e37c63ecb2e8b9fdfdd99fd1a8212", + "bytes": 142862 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.before.html": { + "sha256": "adb8e6f298ffe081b6c79523af3996bb2e95ccbaf9c1dc31d2968862cc63895f", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.html": { + "sha256": "adb8e6f298ffe081b6c79523af3996bb2e95ccbaf9c1dc31d2968862cc63895f", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.json": { + "sha256": "0ae98020ee1f42f82bd2deb850ddb436256ac8777fb87e3ebdb94f462f6047d5", + "bytes": 3814 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.png": { + "sha256": "ce6b21480ba81a5c5b0d172dcd7b44b4fcaf999c4fcd7696fbc3b63305ca6dc3", + "bytes": 147287 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.before.html": { + "sha256": "4b4a1f56a824d930787f3288ee8ce29e1013d2ed61757a94ea68932c7e29af60", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.html": { + "sha256": "4b4a1f56a824d930787f3288ee8ce29e1013d2ed61757a94ea68932c7e29af60", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.json": { + "sha256": "a520606f96c1a0e08d83b3f0c1821bd1e74c514aa2bb5a85cddbc7d66165a077", + "bytes": 3791 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.png": { + "sha256": "12ff4ab7c4bf5c9d15fa6cd71d5b5d43d2684f73b2ff6dc4d84e26ff711ea8a8", + "bytes": 44734 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.before.html": { + "sha256": "c3cef1789fbc8e9e327a86ffdea8e54bb90d062fb7813c5bc18caba4768fb6b6", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.html": { + "sha256": "c3cef1789fbc8e9e327a86ffdea8e54bb90d062fb7813c5bc18caba4768fb6b6", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.json": { + "sha256": "1aff41667b5c71a7a8837fd32990a1da65f759dd33eeb51427d048c26e2372d1", + "bytes": 3790 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.png": { + "sha256": "75dfacf045b4fb2ef8fb3e8aec88f3f5662bbfe513fed7cddfd1dfa2bd31a642", + "bytes": 61815 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.before.html": { + "sha256": "7e37c2ab68fe793a202f44c3b6cbd5e04d8e3d07086a79e33c0b7dd2bb5a4c1a", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.html": { + "sha256": "7e37c2ab68fe793a202f44c3b6cbd5e04d8e3d07086a79e33c0b7dd2bb5a4c1a", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.json": { + "sha256": "5ea3551f00031a2024574e1cd3306b6889ab70d488ccd409f8d3210ed568f8a2", + "bytes": 3818 + }, + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.png": { + "sha256": "b2466d0ff97cf542a63593b904a50661332abb1189084f966d03a1152ad93396", + "bytes": 109462 + }, + "evidence/current-consumer-20260905/operator/d3-final-build.stderr": { + "sha256": "aa9b7207d2d2d42fbf4e013331ee76fc39b9b042505b38551893c1f60f35b63a", + "bytes": 342 + }, + "evidence/current-consumer-20260905/operator/d3-final-build.stdout": { + "sha256": "be9dc75957812cac470f8d40434ab7baf382dd612a5cd87ba1297ade132c181c", + "bytes": 604 + }, + "evidence/current-consumer-20260905/operator/d3-final-commands.json": { + "sha256": "c50027c7830d7e61e42fdd3c18cbd4dbb96e42793f187d2f05a5e1f79f554f69", + "bytes": 3360 + }, + "evidence/current-consumer-20260905/operator/d3-final-diff-check.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-diff-check.stdout": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-examples-guidance-smoke.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-examples-guidance-smoke.stdout": { + "sha256": "a76988d0455da311e5797878cecd1be495ffe63b33e13660346e8e5c9e6d4145", + "bytes": 140 + }, + "evidence/current-consumer-20260905/operator/d3-final-lf-normalization.json": { + "sha256": "ad3946ae3f0820a256a0b839baa87ee13cbe90af699928eb835e1b4d23449a2f", + "bytes": 1911 + }, + "evidence/current-consumer-20260905/operator/d3-final-metadata-checks.json": { + "sha256": "97bfce3ca8caf4426cbed16abd81411f11bc5e5c542128767a2edcd700e1a3fa", + "bytes": 352 + }, + "evidence/current-consumer-20260905/operator/d3-final-prose.txt": { + "sha256": "2f4a73aadbf1e87b479d202c9bf5e7a1cd936f159dc5292844f59c18048f91d0", + "bytes": 5982 + }, + "evidence/current-consumer-20260905/operator/d3-final-secret-scan.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-secret-scan.stdout": { + "sha256": "1574dfc9f9dc1c7175652ec851b5944d2d6b0ee97ad1afbcf989783f2090ce34", + "bytes": 141 + }, + "evidence/current-consumer-20260905/operator/d3-final-test.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-test.stdout": { + "sha256": "415a30904771db5a1a8eaeea6001ef3d5022750dbef6055a0f08d881afc20279", + "bytes": 1251 + }, + "evidence/current-consumer-20260905/operator/d3-final-tours-validate.stderr": { + "sha256": "578309586345b873d69f513fcf383357afb83fdbf8edc8fddbda8774c7ec7d8d", + "bytes": 925 + }, + "evidence/current-consumer-20260905/operator/d3-final-tours-validate.stdout": { + "sha256": "dc8b18d469f3ea284dc0a307e769a6bb99d249514925c4d43c316425248704a9", + "bytes": 69 + }, + "evidence/current-consumer-20260905/operator/d3-final-typecheck.command.json": { + "sha256": "9b888dae88823ee1d9e4938e3a961e5bd033289f3979451e04f40dda55541787", + "bytes": 117 + }, + "evidence/current-consumer-20260905/operator/d3-final-typecheck.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-final-typecheck.stdout": { + "sha256": "1611f2f8467e52eeae9fc30b4f851e7b429aec602524637ddd6f4a9a58d6ae5f", + "bytes": 45 + }, + "evidence/current-consumer-20260905/operator/d3-first-typecheck.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-first-typecheck.stdout": { + "sha256": "1611f2f8467e52eeae9fc30b4f851e7b429aec602524637ddd6f4a9a58d6ae5f", + "bytes": 45 + }, + "evidence/current-consumer-20260905/operator/d3-focus-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt": { + "sha256": "8c3c452e944de438b6449be63f5cbc9b38102fa50dc7c5a8e50c2699914c552f", + "bytes": 5320 + }, + "evidence/current-consumer-20260905/operator/d3-focus-before/src/features/node-agent/components/NodeAgentThread.tsx.txt": { + "sha256": "04e64097b0c543254f59694d6a85e86f5892ba245ad308780af3013ef1284fb8", + "bytes": 4444 + }, + "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.command.json": { + "sha256": "35d95e32b577ec1614b54f2a181df91e87f05eb2be066a165df2666d8ccdef56", + "bytes": 52 + }, + "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.stdout": { + "sha256": "d3207ae164ec553d27128337bafcf866847453c57306650b5584846eeeac432a", + "bytes": 206 + }, + "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.command.json": { + "sha256": "23a0c22580d00eaa8f0f616d4f1cb4c29c70eab2010a093bec6252b5cd5fa5fe", + "bytes": 52 + }, + "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.stdout": { + "sha256": "d3207ae164ec553d27128337bafcf866847453c57306650b5584846eeeac432a", + "bytes": 206 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.command.json": { + "sha256": "dbf4e6f44970b71deb31420fd656478fa3771c0f2371a606f26ae0a0e34837d2", + "bytes": 262 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.stdout": { + "sha256": "81849c8fc4e0f312f9f700a75b64872b1c7ccc07f3603f3708e4af2a49e8f90a", + "bytes": 200 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after.command.json": { + "sha256": "4965158868507ed28ce0c9713c0bbafb94297a53377f185f33ba5fc12effdaf1", + "bytes": 264 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after.stderr": { + "sha256": "a6262f3bc18d1e059bbe7c260ae0dfa6f35ae37facac2d98ca69231ca4cb97e4", + "bytes": 1621 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after.stdout": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.after.html": { + "sha256": "93802404a4ff289806f9540d10a8841cec309d644c1021fadbd2db2133b97be7", + "bytes": 14623 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.before.html": { + "sha256": "93802404a4ff289806f9540d10a8841cec309d644c1021fadbd2db2133b97be7", + "bytes": 14623 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.html": { + "sha256": "93802404a4ff289806f9540d10a8841cec309d644c1021fadbd2db2133b97be7", + "bytes": 14623 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.png": { + "sha256": "5a572d368b6e666892fa186814393ec7db29a4801bf9a048fcb9a74b84391528", + "bytes": 47462 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.after.html": { + "sha256": "fc96fe9a6a8f6823aae8e6e2d51cd087c2f139e9cb71818f1e0a704ed81916fb", + "bytes": 14623 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.before.html": { + "sha256": "fc96fe9a6a8f6823aae8e6e2d51cd087c2f139e9cb71818f1e0a704ed81916fb", + "bytes": 14623 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.html": { + "sha256": "fc96fe9a6a8f6823aae8e6e2d51cd087c2f139e9cb71818f1e0a704ed81916fb", + "bytes": 14623 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.png": { + "sha256": "b36a7a967eef092af86ff1417cc142b8182bf05e335915027c18b31f530e95e2", + "bytes": 35598 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.after.html": { + "sha256": "5c123d864606c7128fd6393efee5afc385ef6b19507e1f264507ac8e8ea43754", + "bytes": 11429 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.before.html": { + "sha256": "5c123d864606c7128fd6393efee5afc385ef6b19507e1f264507ac8e8ea43754", + "bytes": 11429 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.html": { + "sha256": "5c123d864606c7128fd6393efee5afc385ef6b19507e1f264507ac8e8ea43754", + "bytes": 11429 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.png": { + "sha256": "4f9cb8fedbf3fb25f07292e9624c521a078c1cce713fe440b36d8479b8a409cc", + "bytes": 28413 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.after.html": { + "sha256": "477a30d738a7db9e316dd46450d85ab47b260a34f3f561dbf0a352c7af29fb56", + "bytes": 11429 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.before.html": { + "sha256": "477a30d738a7db9e316dd46450d85ab47b260a34f3f561dbf0a352c7af29fb56", + "bytes": 11429 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.html": { + "sha256": "477a30d738a7db9e316dd46450d85ab47b260a34f3f561dbf0a352c7af29fb56", + "bytes": 11429 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.png": { + "sha256": "c3c92b4a3907ad40dbc766b7d20ac8449228fcbeb6f47e1cacb1962b2330314e", + "bytes": 23160 + }, + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/report.json": { + "sha256": "0ac3c1b23adee9509c4af8d3bd38bda1299767760cfba8ca02d9bb4ff9dc328c", + "bytes": 67162 + }, + "evidence/current-consumer-20260905/operator/d3-handoff-packaged-before.md.txt": { + "sha256": "17e983697edaf77f341bf588e4618e0cb53f46d6e04ef8e8f9f4914c3ab00d98", + "bytes": 3118 + }, + "evidence/current-consumer-20260905/operator/d3-host-install-02.stderr": { + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "bytes": 150 + }, + "evidence/current-consumer-20260905/operator/d3-host-install-02.stdout": { + "sha256": "9c0a23925ed0f61c116e515f3ac86f72484b07c39ca88f666e1308367904c430", + "bytes": 144 + }, + "evidence/current-consumer-20260905/operator/d3-host-install-03.stderr": { + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "bytes": 150 + }, + "evidence/current-consumer-20260905/operator/d3-host-install-03.stdout": { + "sha256": "f42cbf23e239333ad2c9df50f1b39047eb7f0135eaccd1f8890010b7afba7002", + "bytes": 144 + }, + "evidence/current-consumer-20260905/operator/d3-host-install.stderr": { + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "bytes": 150 + }, + "evidence/current-consumer-20260905/operator/d3-host-install.stdout": { + "sha256": "38d4a818c8f81e88f34d665cd8e9a9684dd2d78fabf44910dea82f70b3b52487", + "bytes": 144 + }, + "evidence/current-consumer-20260905/operator/d3-installed-consumer-02.json": { + "sha256": "62b48f27af6329f3122d4d578a11dc654189edb5c87cc3b2650992ce93396912", + "bytes": 38387 + }, + "evidence/current-consumer-20260905/operator/d3-installed-consumer-03.json": { + "sha256": "1e04ecb75be184c4669c8d3fd3e8f3e1fb498e05366d4fbc43f970dcb7560200", + "bytes": 38387 + }, + "evidence/current-consumer-20260905/operator/d3-installed-consumer.json": { + "sha256": "fae10ad9b9215f01e61d6f54131a151c4bc6e954d0e445efdde0cae90ffb43fd", + "bytes": 38384 + }, + "evidence/current-consumer-20260905/operator/d3-installed-doctor-02.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-installed-doctor-02.stdout": { + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "bytes": 1118 + }, + "evidence/current-consumer-20260905/operator/d3-installed-doctor-03.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-installed-doctor-03.stdout": { + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "bytes": 1118 + }, + "evidence/current-consumer-20260905/operator/d3-installed-doctor.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-installed-doctor.stdout": { + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "bytes": 1118 + }, + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-02.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-02.stdout": { + "sha256": "e6a0b0802dcae37f0871edbb9529c6de8c267fbdd76e7d25d778fdac29399465", + "bytes": 2049 + }, + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-03.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-03.stdout": { + "sha256": "97ee1203b2491dd31963beb8a254e988303431bd1c7774216518701d2a29bdcb", + "bytes": 2049 + }, + "evidence/current-consumer-20260905/operator/d3-installed-scaffold.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-installed-scaffold.stdout": { + "sha256": "d6c942e15a568d6f223322b485ad439264f825f12ae3ac6fda097d6e0fe1fe9b", + "bytes": 2043 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-citation-relocation.json": { + "sha256": "245409157ef54aebccec0e58ffd6fcc482f9dd9335a8969daaaaa49193ff455a", + "bytes": 197 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-focus-before.tsx.txt": { + "sha256": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "bytes": 5161 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.command.json": { + "sha256": "36e5322b09a2fd127ece84b5c6962544670eb635df7414ff603b30db0d2a5a0e", + "bytes": 523 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stderr": { + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stdout": { + "sha256": "5192efce398ea8e42e0e5491510d7c15ed129e70bcb99c148c4f6506be061d81", + "bytes": 484 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.md.txt": { + "sha256": "d91dfa0a68b04f01cc66b0bcc67d7726e502616618789a8128a8bbe0ef966310", + "bytes": 715 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.png": { + "sha256": "8559c7727d6c0a1750d7ffe7e6dc4bb2f7ede81c6c0180dfa9c582dff95cdf38", + "bytes": 76297 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.before.html": { + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.html": { + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.json": { + "sha256": "9e7860273aad6cb70d41aa493f23df595335e8b9b7f32cfa74208bca04c4f0ab", + "bytes": 5891 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.png": { + "sha256": "846136dc3a855a4191839ce33ca98e9d79dd476dca996256865edd6a140b6c36", + "bytes": 72889 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.html": { + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.png": { + "sha256": "544ccbfcb162c1441025eba9bb53f26b7de351a07c7704c135c886a782d658a7", + "bytes": 72872 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/keyboard-scroll-diagnosis.json": { + "sha256": "55db54af6a77501aafffad8d4ae2acb9111e17a4c1817e2c322e990e37b82414", + "bytes": 1143 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/report.json": { + "sha256": "007dfcf15b7c2d539101b54b3bce3b1a6b75a6b6530f9bd2683d7976eed87118", + "bytes": 69620 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.before.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.json": { + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "bytes": 1702 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.png": { + "sha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "bytes": 58620 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.before.html": { + "sha256": "1777b797c4ab6d7213fa74ec2f5e54382191bddd132644b81d6bdc5acf022151", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.html": { + "sha256": "1777b797c4ab6d7213fa74ec2f5e54382191bddd132644b81d6bdc5acf022151", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.json": { + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "bytes": 5899 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.png": { + "sha256": "29a7493e6ac3a9eb3cba4804f8040d2827c465c2a5d05b2660e22c8857f63916", + "bytes": 58202 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.before.html": { + "sha256": "aeb966646b5d6076442f56e8ed8b7830d2e701cd094036b90c5251a9e933b700", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.html": { + "sha256": "aeb966646b5d6076442f56e8ed8b7830d2e701cd094036b90c5251a9e933b700", + "bytes": 31169 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.json": { + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "bytes": 5899 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.png": { + "sha256": "c481e005cee97d17a7f53d59ecc2a544369e32a6235277d4366ed43e19dc9707", + "bytes": 58905 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.before.html": { + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.html": { + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "bytes": 34627 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.json": { + "sha256": "642561a152465d1c806c5fdcabc6f00a992ba7619cca8c90be7d25d5a633f9ab", + "bytes": 5898 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.png": { + "sha256": "654cf0d4f6001314c345f1b0251b004983cf16ffb0cca46f13d5a444ffdc4873", + "bytes": 75771 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.before.html": { + "sha256": "ed93ea49927d1848280dcb2f572f22e784e2c4d6cf48d999352530608ac460d8", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.html": { + "sha256": "ed93ea49927d1848280dcb2f572f22e784e2c4d6cf48d999352530608ac460d8", + "bytes": 25903 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.json": { + "sha256": "1aff41667b5c71a7a8837fd32990a1da65f759dd33eeb51427d048c26e2372d1", + "bytes": 3790 + }, + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.png": { + "sha256": "4f2e24a7795ce397f769657bf0374fc4dad5851cf2b0f37a83a9063fd25ef3b9", + "bytes": 61699 + }, + "evidence/current-consumer-20260905/operator/d3-pack-02.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-pack-02.stdout": { + "sha256": "e11980e1856109a5a49eeed701d54fe2a86c74074a9801d83ccf42112f48dc32", + "bytes": 28782 + }, + "evidence/current-consumer-20260905/operator/d3-pack-03.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-pack-03.stdout": { + "sha256": "1555caaa51c0d682e37026c24fd650a1182cc4b94d8d6dc15d7f63454db5324c", + "bytes": 28782 + }, + "evidence/current-consumer-20260905/operator/d3-pack.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-pack.stdout": { + "sha256": "9db89fc7edf9f219f4cdc0e43a08c601fe1aa98287b9add52f4dff1abe6d72f1", + "bytes": 28782 + }, + "evidence/current-consumer-20260905/operator/d3-primary-preservation-readback.json": { + "sha256": "f9d8db5add97926c73e771e38192c5c36eaf51e86d45ff48428863b101012288", + "bytes": 829 + }, + "evidence/current-consumer-20260905/operator/d3-primary-preservation-verified.json": { + "sha256": "ac19b4efa8e540a184852d9c2c21f3dff15171ec8fc481b3e9c86ca51bcb77ad", + "bytes": 630 + }, + "evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt": { + "sha256": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "bytes": 4280 + }, + "evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx.txt": { + "sha256": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "bytes": 3350 + }, + "evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/styles.css": { + "sha256": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "bytes": 6410 + }, + "evidence/current-consumer-20260905/operator/d3-product-before-custody/src/app/styles.css": { + "sha256": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "bytes": 13641 + }, + "evidence/current-consumer-20260905/operator/d3-product-before-custody/src/features/node-agent/components/NodeAgentThread.tsx.txt": { + "sha256": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "bytes": 3401 + }, + "evidence/current-consumer-20260905/operator/d3-product-before-custody/src/features/node-agent/components/toolUIs.tsx.txt": { + "sha256": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "bytes": 5635 + }, + "evidence/current-consumer-20260905/operator/d3-retry-guard-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt": { + "sha256": "1b13c028fb4db0bdf2a7ce91b2a3b9d185a2026b27c068492f3c122c0f1ad7e6", + "bytes": 5495 + }, + "evidence/current-consumer-20260905/operator/d3-retry-guard-before/src/features/node-agent/components/NodeAgentThread.tsx.txt": { + "sha256": "2d2644ae39e93b598d8386807d18fb886d1635e68dd38f5903e3a7b5f8be06fb", + "bytes": 4713 + }, + "evidence/current-consumer-20260905/operator/d3-runtime-state-guard-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt": { + "sha256": "737689cbaac3caae9670c023437877eefe34d611286947e8899e8e1ee6959efa", + "bytes": 5692 + }, + "evidence/current-consumer-20260905/operator/d3-runtime-state-guard-before/src/features/node-agent/components/NodeAgentThread.tsx.txt": { + "sha256": "90c6194898c4330a140b84731928e1573141e96db88158173539d93fe4de12c4", + "bytes": 4941 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-01.command.json": { + "sha256": "2bea3aefe25f049c940de1c8bebfb658d567b010717c6b156d69a669f4dfeecb", + "bytes": 53 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-01.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-01.stdout": { + "sha256": "63ea90dc4a68b1cd0a0595e10831a59565a4fbb4cefa849e31fad43232502b7c", + "bytes": 960 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-02.command.json": { + "sha256": "b6a94d61fceaf70c2198ff946038ab841f60b57616c1dfa638759686e338a26d", + "bytes": 53 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-02.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-02.stdout": { + "sha256": "e4f49b9ae665c31e6d5258505630bd35d85fe410861d66876acdbf66bfcdf1bf", + "bytes": 745 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-03.command.json": { + "sha256": "351f0aaa5dc66de62a8a176f5197da7d3731af51b661555d8e1db2ac71723a5f", + "bytes": 53 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-03.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-boundary-03.stdout": { + "sha256": "d3207ae164ec553d27128337bafcf866847453c57306650b5584846eeeac432a", + "bytes": 206 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after.command.json": { + "sha256": "32ca14e4c93bd39af98c01a748f3503483f2953cca1bd765183e601d8e69e8bf", + "bytes": 260 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after.stderr": { + "sha256": "f51f78c20b8fd4d325f92d97e6cb3d8bde61a8db6be8bdc118cd8fa4323b5cf3", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after.stdout": { + "sha256": "eb71d02b08461475c2bf895acb53c4cad3cd072b7565bf00feb0fc57c6bbcc36", + "bytes": 542 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/report.json": { + "sha256": "891b91c24dc53ac23392dd45044c9d8d2aff7303fe02e679a31746686d80e5b1", + "bytes": 113363 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.after.html": { + "sha256": "648ef36168785001c975a10566f14a820596fabc1284ec6e0219bf9f15607126", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.before.html": { + "sha256": "648ef36168785001c975a10566f14a820596fabc1284ec6e0219bf9f15607126", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.html": { + "sha256": "648ef36168785001c975a10566f14a820596fabc1284ec6e0219bf9f15607126", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.png": { + "sha256": "d6bffd8792afcf80f5ee707750829a0f9480757b2bc0ba4eb34c13eba3877a7c", + "bytes": 107187 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.after.html": { + "sha256": "c85ba3ce6249043c62be6bc73907d82f7f77c59fcefe8cde15fc18bc70d6c28e", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.before.html": { + "sha256": "c85ba3ce6249043c62be6bc73907d82f7f77c59fcefe8cde15fc18bc70d6c28e", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.html": { + "sha256": "c85ba3ce6249043c62be6bc73907d82f7f77c59fcefe8cde15fc18bc70d6c28e", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.png": { + "sha256": "dc646a03b5847107cabc0a8fbcc03df3860582d796ad05e246ea5e03afbb7f65", + "bytes": 115853 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.after.html": { + "sha256": "cbbb396c37407962f115ddfe0b60b2677e0a4550ea578a5b965e6b47538fefd8", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.before.html": { + "sha256": "cbbb396c37407962f115ddfe0b60b2677e0a4550ea578a5b965e6b47538fefd8", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.html": { + "sha256": "cbbb396c37407962f115ddfe0b60b2677e0a4550ea578a5b965e6b47538fefd8", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.png": { + "sha256": "235215a40fb09444529bf04720c3357e3b2be192edb2ffbdb36679a24539d506", + "bytes": 119769 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.after.html": { + "sha256": "10bc6c6eccd613e5980e1d2dffe9f87fd4861fd5c0928be378e91c4f26bfe128", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.before.html": { + "sha256": "10bc6c6eccd613e5980e1d2dffe9f87fd4861fd5c0928be378e91c4f26bfe128", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.html": { + "sha256": "10bc6c6eccd613e5980e1d2dffe9f87fd4861fd5c0928be378e91c4f26bfe128", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.png": { + "sha256": "1e25cfe2702214ae85b9e6b3f1a233102e3078b571d2daaab0bf82f7c5cdb08d", + "bytes": 51647 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.after.html": { + "sha256": "38c0b973540ae1f394c613bf605e4c211d720277a237dfd2f2322e0df598f016", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.before.html": { + "sha256": "38c0b973540ae1f394c613bf605e4c211d720277a237dfd2f2322e0df598f016", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.html": { + "sha256": "38c0b973540ae1f394c613bf605e4c211d720277a237dfd2f2322e0df598f016", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.png": { + "sha256": "133256ed2c9bfbfc6f02ef0da27411bb7c1a17e10edf1f8c401c9a451b15c63a", + "bytes": 67735 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.after.html": { + "sha256": "5879f1e8cc5ef03922d81fea089b44cabf585c09c8ea927a525499fe582e593c", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.before.html": { + "sha256": "5879f1e8cc5ef03922d81fea089b44cabf585c09c8ea927a525499fe582e593c", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.html": { + "sha256": "5879f1e8cc5ef03922d81fea089b44cabf585c09c8ea927a525499fe582e593c", + "bytes": 25598 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.png": { + "sha256": "10024c8bf9b57877ffb6e0cc7089fb96ef843f48a39eeea96c2a84da1bb02f31", + "bytes": 100489 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.after.html": { + "sha256": "270be4e7ec1b72ff3359a5956d42d56bf880f95843ab98af0298ec186857c4f1", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.before.html": { + "sha256": "270be4e7ec1b72ff3359a5956d42d56bf880f95843ab98af0298ec186857c4f1", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.html": { + "sha256": "270be4e7ec1b72ff3359a5956d42d56bf880f95843ab98af0298ec186857c4f1", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.png": { + "sha256": "b09b2b01f37a29dde76805aead4a0a07ea614a976f121738826c8f6a7df1b791", + "bytes": 46261 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.after.html": { + "sha256": "4ae6563bb2417d9d81491586bb997d04da76ba24f2493d8313ef14987b43d57e", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.before.html": { + "sha256": "4ae6563bb2417d9d81491586bb997d04da76ba24f2493d8313ef14987b43d57e", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.html": { + "sha256": "4ae6563bb2417d9d81491586bb997d04da76ba24f2493d8313ef14987b43d57e", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.png": { + "sha256": "3e75fbcf907d074f0a3487b34487f77eb976214f5b69a3c09cbb634f224288f1", + "bytes": 54475 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.after.html": { + "sha256": "65e0d482bcd46b46a782ee086b2e4ccd9d75d4dc5359b3421fb6c8f9494767d6", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.before.html": { + "sha256": "65e0d482bcd46b46a782ee086b2e4ccd9d75d4dc5359b3421fb6c8f9494767d6", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.html": { + "sha256": "65e0d482bcd46b46a782ee086b2e4ccd9d75d4dc5359b3421fb6c8f9494767d6", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.png": { + "sha256": "009fdbd78f0e6af1c107ca20f7bdbedac63f4c4c69015ab4f826a9f002fd0251", + "bytes": 57241 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.after.html": { + "sha256": "172585daf2cf4be2cf72e1bb853d58f363057206998043228e0d41b1f51acfa7", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.before.html": { + "sha256": "172585daf2cf4be2cf72e1bb853d58f363057206998043228e0d41b1f51acfa7", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.html": { + "sha256": "172585daf2cf4be2cf72e1bb853d58f363057206998043228e0d41b1f51acfa7", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.png": { + "sha256": "c9f0a54175296caf8ec1dac28b7efdafc2a48ba7b834b8ac3e1c0c8cb8020df6", + "bytes": 35556 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.after.html": { + "sha256": "03149366edbdd8514cdc62d9790e1f4cc6b26cb0fa8a2c802ecd557dd54ef8ac", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.before.html": { + "sha256": "03149366edbdd8514cdc62d9790e1f4cc6b26cb0fa8a2c802ecd557dd54ef8ac", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.html": { + "sha256": "03149366edbdd8514cdc62d9790e1f4cc6b26cb0fa8a2c802ecd557dd54ef8ac", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.png": { + "sha256": "02f3cdccee3dc97499d21ac9fabfc93c4720847dbc6651cad2080a6f5eb20400", + "bytes": 37795 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.after.html": { + "sha256": "2d463254009e7853685c0152595578a51b4e8ea7f935fc91432056ffe5aef54c", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.before.html": { + "sha256": "2d463254009e7853685c0152595578a51b4e8ea7f935fc91432056ffe5aef54c", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.html": { + "sha256": "2d463254009e7853685c0152595578a51b4e8ea7f935fc91432056ffe5aef54c", + "bytes": 18788 + }, + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.png": { + "sha256": "60b103f5712b7d02a41c96e65a727243a8306a755d5af9f75a03e41b94108aee", + "bytes": 49548 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-01-harness.mjs.txt": { + "sha256": "71d5cc86b7b7b6ed1334814a8c4c170ddf7fd354c1d42134bc98a36f48158ff7", + "bytes": 12958 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-01.command.json": { + "sha256": "4794c1786f09d2f2e348aa05d46beddb2a51dd9217191571cfa89a6227c818ca", + "bytes": 393 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-01.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-01.stdout": { + "sha256": "b5a5efccf2dfb0707d1e8b1e35e025f0fa88f1d257512b3eedb6b8f2d6536402", + "bytes": 653 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-02-harness.mjs.txt": { + "sha256": "ced9b544ccd3a5df3c45b55d3d48ce007da210a5583b055a2ef450f912fc443a", + "bytes": 13238 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-02.command.json": { + "sha256": "a4dcf8c89f09f6d22f1d28c3d924ddcd383616bd24d16fef763e3ae3d166e985", + "bytes": 394 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-02.stderr": { + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-02.stdout": { + "sha256": "927d6c44fc14d5701f1fd566887d6bb6989ac6f69133c32f6e93380f9265018c", + "bytes": 668 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-03.command.json": { + "sha256": "d4fb994f6a46cf8dc6b7619b963c1b3048e4fbca414f876dc084453e80969f18", + "bytes": 394 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-03.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-03.stdout": { + "sha256": "dfcb82d49f334b0344810f1f0bcf2669473ad310508529e09bc7d7db56d42eb1", + "bytes": 669 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-04.command.json": { + "sha256": "c239aa53ff6c43231d3d5db6cf247a15a3dc7dab2cc3053a8944742568b03cb5", + "bytes": 393 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-04.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-04.stdout": { + "sha256": "be0ce753748c33e06db528c96582a8fcd09b075090705a425ddbaad5ec924000", + "bytes": 669 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-05.command.json": { + "sha256": "86c8622f98a3ed9469e68094efb6a762ddf2d13373e1a19d4de1c32aa21bed97", + "bytes": 393 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-05.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-05.stdout": { + "sha256": "912572a5393b15e106742684ef0295dcc9d98371ae730ec20738fe91898ed968", + "bytes": 646 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-06.command.json": { + "sha256": "b30472c4e21a9a85e126c0638a51e9692ba75ba5859276d7552166a4e79c719e", + "bytes": 395 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-06.stderr": { + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/d3-source-smoke-06.stdout": { + "sha256": "1f009737630b0a9383f453690758f0ab523e395e921b163f711ee7c361a4e3c3", + "bytes": 204 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay.stdout": { + "sha256": "ae8b7e6b4aaeb7505f427d7ec2c6f147c6579e81dacf3779e936328c5a145cb3", + "bytes": 215 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.json": { + "sha256": "fef437686da90fb30c1695bf24857511ab673fd3433fde6e2f9fc08b1945edde", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.png": { + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "bytes": 35614 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.json": { + "sha256": "570231f3dcf9edb056c264107537aff3355767bbf55b03ce4a7746e27e4e191c", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.json": { + "sha256": "d024eeecbb79068c08c972afdd4a8d3ddfe32dd74e4bddcadf0a3456b4c8d254", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.png": { + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "bytes": 38890 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.html": { + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.json": { + "sha256": "a25457e20907bfb6d736e476b94a79b57c4a319f09d74649179e9b81e6be2466", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.png": { + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "bytes": 27800 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.json": { + "sha256": "2f08689787e6860b5d9423a2cd3e159db596db8834ae60d84b3db90084612fc9", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.html": { + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.json": { + "sha256": "be0f1a4a8e09376b3fdd294b0a71164fb4dc27ab75f71d7ad7f15d0d7b56278c", + "bytes": 780 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.png": { + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "bytes": 34212 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.html": { + "sha256": "08af8eabc5c206dc1df038ad7e626d2391afac007ff41095b01e20072db8013a", + "bytes": 13979 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.json": { + "sha256": "4611766c84391fb828b9b8dbfaa8d102afb105feb6d8f4763cf8eea3908c2227", + "bytes": 1677 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.png": { + "sha256": "db5b14a2d4e77e3545d129ee6413f70874b349de7c7d67fe60ff75b23e824174", + "bytes": 56598 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.html": { + "sha256": "793461c26c95da766166fdb577844fca1443237da6ada15fc94f2685e44f83a5", + "bytes": 13979 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.json": { + "sha256": "2111cab62fbf611ed9b809b45d2428acbeb22dae793b9fd4934e9f2a1330a093", + "bytes": 1677 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.png": { + "sha256": "0bc2f3246755af576a03fd013a3f79acb377261ab1b0b7a2ae0be65d99110ffb", + "bytes": 58800 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.html": { + "sha256": "73dea16d9f1347b2a8789cd1bd94ccc8c18ac0df1f3dc2770a63020e691a9fba", + "bytes": 13979 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.json": { + "sha256": "24c927e26722f21d7dbb66d43375b3fcf16df9ec580abc95af5bfff9fc183f96", + "bytes": 1677 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.png": { + "sha256": "f35bc072e2f56b00950ad4a12abd14df26e1562deb707c54e460123d022714bc", + "bytes": 61278 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.html": { + "sha256": "c0a6b20980d2272a9b2fe2c39a84c9e0e608609c3046742015f801f74dd7034c", + "bytes": 13979 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.json": { + "sha256": "a0a233af0d13d1bfe6a59c721b97a19d33e0a9c884a8f675f90f78aedfcf7122", + "bytes": 1667 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.png": { + "sha256": "62b1ec0fc69fb0c4b1c4caf0c3705c8d6f552402e50c611a8625aed21690b64c", + "bytes": 29749 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.html": { + "sha256": "4abbc70660c6b45b9453913d3483682d83810c7c29f35493e9a6434aa1eb5f1d", + "bytes": 13979 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.json": { + "sha256": "b1e150f695d7ada8904a8059483be051293418ce5079af34aa1e20c781ac02c6", + "bytes": 1667 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.png": { + "sha256": "382ec6f9a7846cc694a7ffb848dccb1ded561a8d64e2c2ff5c5e7834d499cc6f", + "bytes": 31073 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.html": { + "sha256": "ffa36bfdc179d8065687805be10642a1ab38553049691ec5cfa4b94056994fff", + "bytes": 13979 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.json": { + "sha256": "4f908d7aad0b43c938864ab320afb5e90741607744de0675e078859eb22f39c5", + "bytes": 1676 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.png": { + "sha256": "8f39389bb97178ffa7148afde59ec70d87173744f8188295f37726a0250d7ee0", + "bytes": 53412 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.json": { + "sha256": "fef437686da90fb30c1695bf24857511ab673fd3433fde6e2f9fc08b1945edde", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.png": { + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "bytes": 35614 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.json": { + "sha256": "570231f3dcf9edb056c264107537aff3355767bbf55b03ce4a7746e27e4e191c", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.json": { + "sha256": "d024eeecbb79068c08c972afdd4a8d3ddfe32dd74e4bddcadf0a3456b4c8d254", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.png": { + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "bytes": 38890 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.html": { + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.json": { + "sha256": "a25457e20907bfb6d736e476b94a79b57c4a319f09d74649179e9b81e6be2466", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.png": { + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "bytes": 27800 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.json": { + "sha256": "2f08689787e6860b5d9423a2cd3e159db596db8834ae60d84b3db90084612fc9", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.html": { + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "bytes": 12162 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.json": { + "sha256": "be0f1a4a8e09376b3fdd294b0a71164fb4dc27ab75f71d7ad7f15d0d7b56278c", + "bytes": 780 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.png": { + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "bytes": 34212 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.html": { + "sha256": "279c5b5fec35dd8d4e46f4c362fa86b0cd6c690a31abaa02a9085312bc9fff07", + "bytes": 11513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.json": { + "sha256": "a9b9aac93faf2f230f0af32b49d022f83748e2a1f5301ce0f33ae36896811d5f", + "bytes": 630 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.png": { + "sha256": "9fc2d4e713fd9535791513e5091d0de8996203dc06e2b7fb09a1987088742f4d", + "bytes": 30783 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.html": { + "sha256": "a9826b49566c311d5a9ef2af25e6a21720d44f34d60b3bfa72d11ca9524bcd9e", + "bytes": 11513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.json": { + "sha256": "f2df5710790fd3c84c38228f5f3ab4306f08e07bdf3dca9ec6e2c8b9d345b082", + "bytes": 630 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.png": { + "sha256": "35af4cbe6bbec6c1162e77e788b645ed9f41d0d579e2f9a4e26cfaf1c113bdcf", + "bytes": 32109 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.html": { + "sha256": "c4ed8eb882cb0d9450fccb0727c65c55566d95305710b04acddc229e0926de41", + "bytes": 11513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.json": { + "sha256": "1d687c735c43b60b405b61e1cc35fc6063fc95da089757727475f3af69c002aa", + "bytes": 630 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.png": { + "sha256": "8f132143a465e72aab76b3d538be286fd5086d5489eb4ec3cb86ed5caba9eabb", + "bytes": 33534 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.html": { + "sha256": "556f310301df656811f63f7a3c39381537a8271411a651045c52e65433006883", + "bytes": 11513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.json": { + "sha256": "7a31d5b1bb58afcb24b781c84e97764284b877ce50aaa15f85762e9aa8954239", + "bytes": 620 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.png": { + "sha256": "2463b6b0dd814a68aa8a11add62698f312dc14965a58d3fd1e4cae25f0d95dce", + "bytes": 25919 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.html": { + "sha256": "050cc89d76579291b5c5eb4f5e5a4ecd5b4eaeec9d028397b812f954a3220268", + "bytes": 11513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.json": { + "sha256": "4dcee313bacf29c80513a6f8d9d889b17cc7b1606d701fe680499f1a788e3dc0", + "bytes": 620 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.png": { + "sha256": "481085b6770cbd83d8ad02ff39cd2092363b987a419579ce37a6272b3c3828f9", + "bytes": 26556 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.html": { + "sha256": "1013ffce65391aa4031c6ba8b071b843e1288c903437f6b12246a6d16df3d5f0", + "bytes": 11513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.json": { + "sha256": "8294a7d40d6695029d36a14b021fdb16d349e1d5393b8b3011681f61d65e8f76", + "bytes": 629 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.png": { + "sha256": "e8dae771111a83055368058a7fd6e1fca1e8b7fdddec46e31e98bdd9ac2278f8", + "bytes": 30386 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.html": { + "sha256": "c0fbc071bf0bf60a14580f706be1c97037923078c664a117dc2fc2b203b06fbf", + "bytes": 34380 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.json": { + "sha256": "f5453e29c2451fba43df437a73399c3a7f896983fdd11f41ab866b4d0bb292a5", + "bytes": 6513 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.png": { + "sha256": "9edf791fc10d37996214708c197022e52134cae4af28e9b7b4d2d404946a763e", + "bytes": 30267 + }, + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/report.json": { + "sha256": "67e4a2f55c64c5cacb076009260b6db7ac85b291c4d36a2489d323d2888383fd", + "bytes": 128638 + }, + "evidence/current-consumer-20260905/operator/d3-worker-visual-inspection.json": { + "sha256": "1bf7cf2bed41b89fe4e77b31b008e6421c51e0ef1274968c93c02646c719c476", + "bytes": 5548 + }, + "evidence/current-consumer-20260905/operator/dependency-repair-freeze/HANDOFF.md.txt": { + "sha256": "17e983697edaf77f341bf588e4618e0cb53f46d6e04ef8e8f9f4914c3ab00d98", + "bytes": 3118 + }, + "evidence/current-consumer-20260905/operator/dependency-repair-freeze/e2e/current-consumer-proof.mjs.txt": { + "sha256": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "bytes": 9566 + }, + "evidence/current-consumer-20260905/operator/dependency-repair-freeze/examples/apps/chat-ui/template/package-lock.json": { + "sha256": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "bytes": 235233 + }, + "evidence/current-consumer-20260905/operator/diagnose-d3-enlargement-02.mjs.txt": { + "sha256": "d927ddd3fcf0359e0df5be937aa35d084a6f06ad16c4f718337e596e72467e8a", + "bytes": 18412 + }, + "evidence/current-consumer-20260905/operator/diagnose-d3-enlargement.mjs.txt": { + "sha256": "222fc550f2c5f7db79bc9bc24383da74102da817355082341f04e9e7cc312094", + "bytes": 18303 + }, + "evidence/current-consumer-20260905/operator/diagnose-d3-keyboard-scroll.mjs.txt": { + "sha256": "d19e7a45d98d37bf58a926f7c5d775011e550e5f3e4bb89f07441fe332f23511", + "bytes": 18648 + }, + "evidence/current-consumer-20260905/operator/diagnose-dependency-comparison.mjs.txt": { + "sha256": "af193a6c3fdf45800eacad574a1d794390cad26a2a79758f1f44b64a398f5b26", + "bytes": 7149 + }, + "evidence/current-consumer-20260905/operator/diagnose-first-submit.mjs.txt": { + "sha256": "31544790508aba81975972f1e7f1309156d9b289fea0cb80397413a882a948ea", + "bytes": 6491 + }, + "evidence/current-consumer-20260905/operator/durable.json": { + "sha256": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "bytes": 798 + }, + "evidence/current-consumer-20260905/operator/durable.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/durable.stdout": { + "sha256": "63c4aa3726029258df491bb45b000952202358eb18952fb55badccdfd25174ff", + "bytes": 119 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.html": { + "sha256": "d894f372a4684549965b43175343fbc84cb9dd2f742528136fbaec13aaad958b", + "bytes": 13614 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.png": { + "sha256": "dfe6dac19f02fa877e68d2f7b2ab9bd34b63e40672b97f03f1e10817643cdf76", + "bytes": 48118 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.md.txt": { + "sha256": "fd72dcc3e3aa36dba9cd7fb8b99c5cfe99dfc6c3ff80fc1472d12af2910f9fa0", + "bytes": 2287 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.png": { + "sha256": "1f293044017241177f2d0309a4d38666354094aa0d89a795a391872a1f72313a", + "bytes": 50055 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.html": { + "sha256": "c48d41aec4b70653d1332500c71ddb48206c00ebd0ee17b71e3725d0d485f98f", + "bytes": 13614 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.png": { + "sha256": "8b93816c80e6a031e5c3ef55f59908de5aabe94deb66a689f0c85aa33053be09", + "bytes": 36326 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.md.txt": { + "sha256": "076356849f3dac9ed2bbdf468f204451a030d18f8cfdcea78185bf2979d70e2d", + "bytes": 2286 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.png": { + "sha256": "d67b6e1aa81d6ff5faa4145a7788a14b8df5fdacc00c5680c8ff5a31371262ea", + "bytes": 38148 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.html": { + "sha256": "761fd28a3263db95a2a84d562098e5b4159d57b9ded1eb6ee19dafc84cc940c7", + "bytes": 11046 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.png": { + "sha256": "eda7a7723d479187fb0619ca86cefed2f1d9823b58384b13791a3b2b3f9b5eff", + "bytes": 28307 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.md.txt": { + "sha256": "20ff3ba4e0960bec3ac05ba539ad1b56982aeaf8ff1dd2a5a3334fc61c668f29", + "bytes": 2289 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.png": { + "sha256": "ba11f02e651c2aed2d457cd399ca65e2cc47ffe9758968ced9704edef32e1fac", + "bytes": 30441 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.html": { + "sha256": "18c21072f507296df813237d77664c79e2ca96af59888f36b60364872f44d9fb", + "bytes": 11046 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.png": { + "sha256": "f7572cfed5aac624f85da0982a77a257cb4ffb734e4a62f1f0f83df785b2d5a5", + "bytes": 22898 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.md.txt": { + "sha256": "c8319944cc77c6ea945680c9ad7bbfb5b82218e3c19a0554c5413e939d682e27", + "bytes": 2288 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.png": { + "sha256": "3d2adb7dc5324fea59764955b7b5b880b36924fff4de9c20cc34ce70a54ce7e8", + "bytes": 24761 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.html": { + "sha256": "9ccdedbb36c9831763cd818531941ced8aa40ef2bb383c2d9e4c62e1a22e881a", + "bytes": 24798 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.png": { + "sha256": "3d883b2f102989efad6aa4db4d01f6d6011686080a400fa011afc09af248ca20", + "bytes": 122472 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.md.txt": { + "sha256": "18e6d7be52d41e4456ffc908babd4fe09b5cc8041bf68dee6b7f4def573c86d8", + "bytes": 2197 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.png": { + "sha256": "835986f05145c79da8c42d8198702795cc83d4b0cfa382f9cb825e83268a2a36", + "bytes": 123664 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.html": { + "sha256": "c8ef7c6661e61f00522ffc8029d161a4f00c129aa76357ca459b2239bfb10854", + "bytes": 24798 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.png": { + "sha256": "cb8f8708db77c224540ab29df4c5ccea80154c0c670a1913bd12332065c65e37", + "bytes": 66921 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.md.txt": { + "sha256": "1afe921376e9e4241d61153ffa2903387f7d4e57423359e0a4b66a7cdea9715b", + "bytes": 2196 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.png": { + "sha256": "02217ecb45988088b5c8a329d439cf1edf36daff0c94485eaad75edbd58406ec", + "bytes": 68240 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.html": { + "sha256": "c1b66551d2d8e0cb2f23ab9f851daef0ffa3038a339c371bbce1b51094f47136", + "bytes": 18200 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.png": { + "sha256": "5b01100cf1f778ff6d40bab901e78c1eb8fa9e66a639d6347a2b7b9a4d594c37", + "bytes": 53671 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.md.txt": { + "sha256": "3a3d36d5efe8398f1d2590e2cffe21bf6a83caa2826b228043da203238bcdb97", + "bytes": 2199 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.png": { + "sha256": "f5e8fbf4b550ddf1270bb4b1dd2ba01677aae3b586cde19143a55651b8d08ef4", + "bytes": 55404 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.html": { + "sha256": "d85ebdfe201f4b84132465fecd094e047aaf63d8eb79d72d9e67dcf023b50998", + "bytes": 18200 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.png": { + "sha256": "5a9c04c5e13b4d0fd042195ad1b085e9983dc4c64ceea89b16f98ee074d2f51f", + "bytes": 37104 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.md.txt": { + "sha256": "0188548c94d2f20e5457ddb1618a24ba6e220c1553b6d1f64900fb22937a6507", + "bytes": 2198 + }, + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.png": { + "sha256": "0e61aa353c714c586a86f780e6edee68d43e5d4a26b68b8b98ae0d4ebfaea873", + "bytes": 38466 + }, + "evidence/current-consumer-20260905/operator/existing-target-refusal.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/existing-target-refusal.stdout": { + "sha256": "c86fbc0b75aaf748e98f15c1d9164a987178241b6305db389b148321d418c998", + "bytes": 510 + }, + "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.command.json": { + "sha256": "6d1af5393673ee710d1cc3548719ac70b009c8b70fbd41d03b3ff703e675d995", + "bytes": 53 + }, + "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.stdout": { + "sha256": "288ec9e5389b4a42284451223ed0c055f40e3ff50f439d2755c5e210c4325851", + "bytes": 254 + }, + "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.command.json": { + "sha256": "7249780c8f8ce5e6657a1dfcab481617c22124482f1b0077bc19faad316f71d8", + "bytes": 53 + }, + "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stderr": { + "sha256": "0f0101da9e13b0b9ff730a51a7fc8f97a48df7578a0446eafb8608a6649cb606", + "bytes": 957 + }, + "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stdout": { + "sha256": "cab47cf593ac8b76b0895c10b2defc9d94d131c6f3a783cf1b1a9c28e3326362", + "bytes": 627 + }, + "evidence/current-consumer-20260905/operator/frame.json": { + "sha256": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "bytes": 513 + }, + "evidence/current-consumer-20260905/operator/frame.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/frame.stdout": { + "sha256": "3930a6e7a06514d750370d57d4c847d207e7e65ad7cb37ec7e6a427a57102137", + "bytes": 92 + }, + "evidence/current-consumer-20260905/operator/host-install.stderr": { + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "bytes": 150 + }, + "evidence/current-consumer-20260905/operator/host-install.stdout": { + "sha256": "9c0a23925ed0f61c116e515f3ac86f72484b07c39ca88f666e1308367904c430", + "bytes": 144 + }, + "evidence/current-consumer-20260905/operator/install-consumer-commands.json": { + "sha256": "efdddba96f40774206af664cc1b000d44c5542aca22a4eec7665d6f469e6a8b8", + "bytes": 3987 + }, + "evidence/current-consumer-20260905/operator/installed-apps.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/installed-apps.stdout": { + "sha256": "8e1a0749d92500e1c135eca70a6d0de1d72cfa69a1bbb2616c7d156a9fb9f7dd", + "bytes": 453 + }, + "evidence/current-consumer-20260905/operator/installed-consumer.json": { + "sha256": "2c8795ab4e1631cb87b71a470b6a665cc9c22c6e94cbf3b2bd95cdc48a6ff481", + "bytes": 667 + }, + "evidence/current-consumer-20260905/operator/installed-doctor.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/installed-doctor.stdout": { + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "bytes": 1118 + }, + "evidence/current-consumer-20260905/operator/installed-scaffold.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/installed-scaffold.stdout": { + "sha256": "fa6d77785236eab1b2afc92aa364673c47c9ca6c8f3d80790e50016f2b48ac24", + "bytes": 2028 + }, + "evidence/current-consumer-20260905/operator/locked-browser-01-harness.mjs.txt": { + "sha256": "16497d628f5bec3dfae29f522f2702c9966bbcb4cbbbb78204db1dcd969662ef", + "bytes": 14004 + }, + "evidence/current-consumer-20260905/operator/locked-browser-01.command.json": { + "sha256": "888a86630c4ba453cbf632af6e36de5787e5a3b4c0a2a35f970e0600e2132703", + "bytes": 386 + }, + "evidence/current-consumer-20260905/operator/locked-browser-01.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-browser-01.stdout": { + "sha256": "b297de53b8051524a0e517517205efa1ea56a9c840059ac2683956042d5afcc1", + "bytes": 601 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02.command.json": { + "sha256": "9dc13fab78e72c70dafeea9ff0f435054fe5bdf3fea090e5b68bd533685ad4d6", + "bytes": 361 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02.stdout": { + "sha256": "9d32b1bff4d343703e17fac68be10081276fd299dc23b7a377d6647129c633fc", + "bytes": 204 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.html": { + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.json": { + "sha256": "20472708b8e160864ed2c59112089c060a39d29536f9883cc4c66fdbd2bbb3a1", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.png": { + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "bytes": 35614 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.html": { + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.json": { + "sha256": "7ef87274b0a92f189bbe41a853b0c9a7036b4e165efeedf976812f01fb15b014", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.html": { + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.json": { + "sha256": "1a29b3e2698a1ca8e44b68769bc0d4e820520eee04991f58af82e9381c1fab91", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.png": { + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "bytes": 38890 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.html": { + "sha256": "ea0f8421cb234cdbf7828496ee341b0cd90f56d91b9e91e016a14df74b871e69", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.json": { + "sha256": "13772bc5a2d076ba18c595eac522a49fbd6e82c6e08ad376f3080d2e116ddbf9", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.png": { + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "bytes": 27800 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.html": { + "sha256": "0c376ea4fa6e3709fffb76aaf77e5d7938ae941f74e64e0182bcfd282bbc8e42", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.json": { + "sha256": "5e88f45ae5a4624760dd89f10284284574699bf6a0f67b72fd4b6fd0a04a8fc2", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.html": { + "sha256": "116ece6fc1a4651fcf5c94a5cb818d3032c335e7a63bc52f10cc88875cf0a680", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.json": { + "sha256": "dcc42f10b4d8b7581db9ad2b758750b17a3119c783d3d56917145561f3de4f8b", + "bytes": 780 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.png": { + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "bytes": 34212 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.html": { + "sha256": "932bd9519c8d38b5e35b503c172f80035e2509992d351c246c2d1ca4d2bb219e", + "bytes": 13112 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.json": { + "sha256": "51686d3ac465d75e318db0c05a56c67c54601b88a07bb0974a3ac85a9133ea30", + "bytes": 1677 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.png": { + "sha256": "db5b14a2d4e77e3545d129ee6413f70874b349de7c7d67fe60ff75b23e824174", + "bytes": 56598 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.html": { + "sha256": "5ef2d07b3f7f9e9291ad25f265cbd7a67384e07e43fabc946601a9fad1cf392c", + "bytes": 13112 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.json": { + "sha256": "fdba9ca269ec34af9d0202f2c7e81cc3294bcae2e02cfc35b6123154c3b8f15e", + "bytes": 1677 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.png": { + "sha256": "0bc2f3246755af576a03fd013a3f79acb377261ab1b0b7a2ae0be65d99110ffb", + "bytes": 58800 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.html": { + "sha256": "58ae7362a88ce6b6dc5de1999ae6295bb566b6c0622322a8ee6ed81eb528d2c4", + "bytes": 13112 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.json": { + "sha256": "28f2a28b81229dd3c15189ce62e73b2c8bedcabfad22e5cb88ae81f95e1ff70b", + "bytes": 1677 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.png": { + "sha256": "f35bc072e2f56b00950ad4a12abd14df26e1562deb707c54e460123d022714bc", + "bytes": 61278 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.html": { + "sha256": "1c7cfa5ffc46f66c135f85cc2d431a7678fd8e79d4a644e56f6d50dbb4e3f40e", + "bytes": 13112 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.json": { + "sha256": "ab3020b59a546744f990f4f0e95a4e5267fdd9eb513e2a3b7cb263bdb06bd8be", + "bytes": 1667 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.png": { + "sha256": "62b1ec0fc69fb0c4b1c4caf0c3705c8d6f552402e50c611a8625aed21690b64c", + "bytes": 29749 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.html": { + "sha256": "d549ad323a9802ff3f4ab4857270de8129c79026d7e21d449f0c33b0d11cc669", + "bytes": 13112 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.json": { + "sha256": "6a00ae537c6e45fddb576f7cf5480ee2772df51bff88b7a244344d3bd081d51e", + "bytes": 1667 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.png": { + "sha256": "382ec6f9a7846cc694a7ffb848dccb1ded561a8d64e2c2ff5c5e7834d499cc6f", + "bytes": 31073 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.html": { + "sha256": "b796ffb3289eab304678df257bd62a87d970bfd644b56a852dd315719356d614", + "bytes": 13112 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.json": { + "sha256": "ad6672150db00d25b65209a6b261788739e14a664fdd62a567be945466b46302", + "bytes": 1676 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.png": { + "sha256": "8f39389bb97178ffa7148afde59ec70d87173744f8188295f37726a0250d7ee0", + "bytes": 53412 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.html": { + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.json": { + "sha256": "20472708b8e160864ed2c59112089c060a39d29536f9883cc4c66fdbd2bbb3a1", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.png": { + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "bytes": 35614 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.html": { + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.json": { + "sha256": "7ef87274b0a92f189bbe41a853b0c9a7036b4e165efeedf976812f01fb15b014", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.html": { + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.json": { + "sha256": "1a29b3e2698a1ca8e44b68769bc0d4e820520eee04991f58af82e9381c1fab91", + "bytes": 781 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.png": { + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "bytes": 38890 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.html": { + "sha256": "ea0f8421cb234cdbf7828496ee341b0cd90f56d91b9e91e016a14df74b871e69", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.json": { + "sha256": "13772bc5a2d076ba18c595eac522a49fbd6e82c6e08ad376f3080d2e116ddbf9", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.png": { + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "bytes": 27800 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.html": { + "sha256": "0c376ea4fa6e3709fffb76aaf77e5d7938ae941f74e64e0182bcfd282bbc8e42", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.json": { + "sha256": "5e88f45ae5a4624760dd89f10284284574699bf6a0f67b72fd4b6fd0a04a8fc2", + "bytes": 771 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.html": { + "sha256": "116ece6fc1a4651fcf5c94a5cb818d3032c335e7a63bc52f10cc88875cf0a680", + "bytes": 11395 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.json": { + "sha256": "dcc42f10b4d8b7581db9ad2b758750b17a3119c783d3d56917145561f3de4f8b", + "bytes": 780 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.png": { + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "bytes": 34212 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.html": { + "sha256": "b45ac31b9a71c27b8459a4952bf4263ce3d17b7e4fc05b6563729ab95643b010", + "bytes": 11130 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.json": { + "sha256": "c6f4b04eea6f95f4562cf06d405516509407b1cbc1077dfd42bafb63051bd115", + "bytes": 612 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.png": { + "sha256": "062ef6da15f30947243870a7bffe86fe8ecb4db036898c06ff489858bbb5f129", + "bytes": 30690 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.html": { + "sha256": "69bff0e4026d05d159febe1d52f6f954e7392150eb61b192891491390889d5de", + "bytes": 11130 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.json": { + "sha256": "310acac4a182958f95a8300c8aa74529401e50177bc430e313ca58c2579ee483", + "bytes": 612 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.png": { + "sha256": "94f72a9e74a6f3d21a53afa9bafabd4880c43eb995a6808dd7a2256b37b4abba", + "bytes": 32015 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.html": { + "sha256": "9733aaaed09782f87b7a0d5c8a81ecb2b57d8a379f527f884810201e767e25ba", + "bytes": 11130 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.json": { + "sha256": "42446b64ce987f10520c142cbda41a6bc072879513aef5f1650d4dc06a2f8f5f", + "bytes": 612 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.png": { + "sha256": "9026f07501136fdfe942540c9dd4fed895f234a2c4ed0bc9ab9c2850663a68ca", + "bytes": 33425 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.html": { + "sha256": "0861ae69d373f933470a3f35d7350aee4988e58f109a044e686c8d9067c2211c", + "bytes": 11130 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.json": { + "sha256": "c0a4e79d899225de037ebbb1937067ae893f044925957d42d5c4f8cac8f2f969", + "bytes": 602 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.png": { + "sha256": "df3e7ffedf6384aa56ca2e0fbabd285f2210fcbb98f3a0832038cd8cfb946abe", + "bytes": 25672 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.html": { + "sha256": "3c6b033744a6c35b2c8e1a207b0d4922527c31f6ad531bb7961ded8cccf7c21f", + "bytes": 11130 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.json": { + "sha256": "b094f41ffa57289a109747745e57f00a915d894877bc6d2f8291bbca404d2785", + "bytes": 602 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.png": { + "sha256": "fe40295325c3942cd1bfcf179d9fd626f7699c7dc65c84da7c4ad5a2a8f38e01", + "bytes": 26301 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.html": { + "sha256": "ebfa0b72d027cd6fcbed5aecd18eb9f97bb8f38ac903f40bd173b1d18514f4e1", + "bytes": 11130 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.json": { + "sha256": "6c3f4b899b288288c21b74ef518e0cf682919927e7c94c68edf51db97904af3f", + "bytes": 611 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.png": { + "sha256": "582683ea8ece2702fb4a096498cc00861998dcbc02f2a77a7f81523d397eb17a", + "bytes": 30274 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.html": { + "sha256": "71681a8101483faea00e02990f3b69edb972d43e2f2bf24f0b0319c996689a9a", + "bytes": 32813 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.json": { + "sha256": "dd7cc235cbe5dd263e284bbf24c4f6c624157d6bf0ac5e12c1340979a4c9c011", + "bytes": 6513 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.png": { + "sha256": "9edf791fc10d37996214708c197022e52134cae4af28e9b7b4d2d404946a763e", + "bytes": 30267 + }, + "evidence/current-consumer-20260905/operator/locked-browser-02/report.json": { + "sha256": "0679d7de20d2694aa81c760a6be7637c3307591c81ec18638a47a0d70ab1b71e", + "bytes": 128704 + }, + "evidence/current-consumer-20260905/operator/locked-consumer-commands.json": { + "sha256": "dba7894afaf603c3ff3b04bc6b2c11023eab9d1faf5d96f707fd776ee01a13b2", + "bytes": 2271 + }, + "evidence/current-consumer-20260905/operator/locked-existing-target-refusal.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-existing-target-refusal.stdout": { + "sha256": "46ba9c6dec43dd03241dfb1f296e335cd1ed7fb940809642c7284c151b4fc954", + "bytes": 507 + }, + "evidence/current-consumer-20260905/operator/locked-final-checks.json": { + "sha256": "c603d7a3138079428ef76de92aa2299084d415a2a5cff6ede9d63d3b6349391a", + "bytes": 855 + }, + "evidence/current-consumer-20260905/operator/locked-generated-audit.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-generated-audit.stdout": { + "sha256": "4d1456a71597d6eeb8573095e09bb2f7368c85626a769ef5a3e2dac782b8ab47", + "bytes": 5325 + }, + "evidence/current-consumer-20260905/operator/locked-generated-production-audit.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-generated-production-audit.stdout": { + "sha256": "75206656b5cfd245d6c7e6cd2f4f579d10db9fa0b708b19c6bbc29263526b379", + "bytes": 366 + }, + "evidence/current-consumer-20260905/operator/locked-host-install.stderr": { + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "bytes": 150 + }, + "evidence/current-consumer-20260905/operator/locked-host-install.stdout": { + "sha256": "b64e473f55f7adaafacfdcd0ce0ba844fd7496be03de1add6c2675ade86bf52a", + "bytes": 144 + }, + "evidence/current-consumer-20260905/operator/locked-installed-consumer.json": { + "sha256": "e555920ab2721acffc061072fe60240033b0210473e3ddc2243b91601a2316d9", + "bytes": 40428 + }, + "evidence/current-consumer-20260905/operator/locked-installed-doctor.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-installed-doctor.stdout": { + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "bytes": 1118 + }, + "evidence/current-consumer-20260905/operator/locked-installed-scaffold.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-installed-scaffold.stdout": { + "sha256": "4e0549fd844a62d3c3686d0014f3f41cc70adb95ebdc0eb2fd61e7babca21674", + "bytes": 2021 + }, + "evidence/current-consumer-20260905/operator/locked-source-pack.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-source-pack.stdout": { + "sha256": "6bec63aa0aada6cc4036f4031a8b9c2df6e1e44a12e245f0c5e0fadbbd1d675c", + "bytes": 28575 + }, + "evidence/current-consumer-20260905/operator/locked-source-test.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/locked-source-test.stdout": { + "sha256": "7f8f2b93171f9c40c250c321864b7a5ab9a3b2d72b00f0b0db7e24a7fddf4418", + "bytes": 1251 + }, + "evidence/current-consumer-20260905/operator/package-installed-bindings.json": { + "sha256": "29e64cdfa39615640cbef7cc0eb8eb25ca04c7a6c29b8d00001d22c3e41f00d9", + "bytes": 60840 + }, + "evidence/current-consumer-20260905/operator/primary-head.after": { + "sha256": "60f857286c031a8172d111c183c1c2424aea72ad167f65a7eb0f13343712efce", + "bytes": 41 + }, + "evidence/current-consumer-20260905/operator/primary-index-nul.after": { + "sha256": "76673f16be2d2376a07251eb459f191fa9d254c54e7ad9fe0e88eb5f9b812ed3", + "bytes": 13245 + }, + "evidence/current-consumer-20260905/operator/primary-index.after": { + "sha256": "0d7c23b38f63ed4c17a9fd7a2b93fc797a2062bfb4e5090214ad277fa5f171ea", + "bytes": 13245 + }, + "evidence/current-consumer-20260905/operator/primary-index.before": { + "sha256": "76673f16be2d2376a07251eb459f191fa9d254c54e7ad9fe0e88eb5f9b812ed3", + "bytes": 13245 + }, + "evidence/current-consumer-20260905/operator/primary-refs.after": { + "sha256": "66c33b755dd5ab353501b08720e282584bbfc643331375bb49b45e09fdb45007", + "bytes": 576 + }, + "evidence/current-consumer-20260905/operator/primary-refs.before": { + "sha256": "b9d66cb9cc694da245d342b96cd63a5ba0055c54eeda5706be40549cdc5a1407", + "bytes": 482 + }, + "evidence/current-consumer-20260905/operator/primary-status.after": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/primary-status.before": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/primary-worktrees.after": { + "sha256": "960d0ec942afbfd80194e5e9c9febf8a0ae9fa7cd1e588817df50df4e8352c8a", + "bytes": 398 + }, + "evidence/current-consumer-20260905/operator/primary-worktrees.before": { + "sha256": "bfac049f183713aa28c3cf8dd6c85ab47f38276cd87a4c6bac3810a029e1787b", + "bytes": 171 + }, + "evidence/current-consumer-20260905/operator/source-audit.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/source-audit.stdout": { + "sha256": "0507abc50afeaaf68af460c5d475d106c4749a1fdda75812c327823c36cf59ab", + "bytes": 11986 + }, + "evidence/current-consumer-20260905/operator/source-custody.json": { + "sha256": "98d925bb27fd407671c82302d9f143ae2099fac70cd0a751bc3f700e26b53c85", + "bytes": 638 + }, + "evidence/current-consumer-20260905/operator/source-npm-ci.json": { + "sha256": "3b37194d316b953f547f7878e040c132b881e0368f43b2fc59f252c267e05bf9", + "bytes": 706 + }, + "evidence/current-consumer-20260905/operator/source-npm-ci.stderr": { + "sha256": "da370bd608ea0f37ee2141f76cc040fe073f2665c7130ec0d3eb441b3a077804", + "bytes": 358 + }, + "evidence/current-consumer-20260905/operator/source-npm-ci.stdout": { + "sha256": "a7cc1fc56bd4557bcba245d99a30bcbf76f7fc2f8347c9af41826f3d2c8d5624", + "bytes": 354 + }, + "evidence/current-consumer-20260905/operator/source-pack.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/source-pack.stdout": { + "sha256": "d2d9f05091633befdb449cb5d572c882d710855117ce7acd3045c33b0dda2a59", + "bytes": 28336 + }, + "evidence/current-consumer-20260905/operator/sqlite-reopen.json": { + "sha256": "46e8a29bc91f337c1aa4e7de5e913675be6d6f2409df3594ba1edb9e0e0c622d", + "bytes": 967 + }, + "evidence/current-consumer-20260905/operator/sqlite-reopen.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/sqlite-reopen.stdout": { + "sha256": "a6c95f2898e8b8f6d9aef94111b98fbe47a16d152b03a83d6b8dca54c0915a24", + "bytes": 124 + }, + "evidence/current-consumer-20260905/operator/template-lock-construction.command.json": { + "sha256": "75a028c63d52564c8e08ad181ea3add979943b77ec8a5edb21012e71e5576bd0", + "bytes": 177 + }, + "evidence/current-consumer-20260905/operator/template-lock-construction.result.json": { + "sha256": "7cd1f55ba3bace5b4a6c454b8f09016f4a661c24f72c4cbc1a4edf9c22718048", + "bytes": 824 + }, + "evidence/current-consumer-20260905/operator/template-lock-construction.stderr": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "evidence/current-consumer-20260905/operator/template-lock-construction.stdout": { + "sha256": "22a980973d787e806a54ff17f2a351e2f7a8bbf4c7165a85eaf428ddee087ab6", + "bytes": 134 + }, + "evidence/current-consumer-20260905/operator/template-lock-seed.json": { + "sha256": "a708387eded0f5da3fe57d97750d8f79ed563e4fb1e12c1837ef233544d79268", + "bytes": 327367 + }, + "evidence/current-consumer-20260905/operator/worktree-create.stderr": { + "sha256": "412d092f7f9a8341ab1e36010ff5f6f355174dfde58b060c221af47cee0fdcc0", + "bytes": 76 + }, + "evidence/current-consumer-20260905/operator/worktree-create.stdout": { + "sha256": "1ad1748a5ad6b4de45732f83b76313c42e8568c93ff2d91f97c0d804ed6216a4", + "bytes": 97 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_CURRENT_CONSUMER_PLAN.md.txt": { + "sha256": "2b446c2d9af46eacae1a800e7ebfc8096426023d7af804562fda7f8868716f14", + "bytes": 3852 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.json": { + "sha256": "b06c4479e59945c68dec77488d48690b0155063e8c831f51f6468663d3284120", + "bytes": 5218 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.md.txt": { + "sha256": "f128cea4b359b583e2df85a3d3faa253ef96d87166034d52f8edbcd732f3821c", + "bytes": 4157 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.json": { + "sha256": "e6ceec482df252cb28f6bed66f643da10c39618ff5cd2c4706f5679004096220", + "bytes": 3665 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.md.txt": { + "sha256": "a72f6e4ddc3885a992cd606d7e56b92f63a1639b5938078d374cb5d9de9caae5", + "bytes": 3138 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.json": { + "sha256": "85c6640a3b4cbd95c428c0a2658a138751573ecaf42267316672b3a1a074a30a", + "bytes": 3433 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.md.txt": { + "sha256": "c4dd4d688b37e8046782e349b293db0d37b2e8564b5e1472f555297f10e95229", + "bytes": 1740 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_ENLARGEMENT_ADDENDUM.json": { + "sha256": "012658e5de2e590f7be123d41f8613afe7df5ef860eaaa73267c5a917ac6c86f", + "bytes": 1067 + }, + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_KEYBOARD_VISIBILITY_ADDENDUM.json": { + "sha256": "3ee3473b4bfb7fb22039b59e6e44844189f53c1ce274455021c0c62d44d59873", + "bytes": 1332 + }, + "evidence/current-consumer-20260905/manifest.json": { + "sha256": "c3601b7021e3d7d5a1b233b620f6952422b98828de791492de393e4776dc8210", + "bytes": 401243 + } + }, + "rawCopiesExact": 937, + "portableArtifactsExcludingManifest": 938, + "portableBytesExcludingManifest": 21279473, + "futureFilteredBlobMismatches": [ + { + "path": "evidence/current-consumer-20260905/manifest.json", + "rawBlob": "dcbd7b1dd0b12fda1db0fb6c10224ceea66b00ec", + "futureFilteredBlob": "78a69528eea85b8b25e4921f5d3ee63150b78403", + "crlfCount": 5874 + }, + { + "path": "evidence/current-consumer-20260905/operator/D3_SOURCE_BEFORE_BINDINGS.json", + "rawBlob": "05ba5ad748293621c09ebeeb08ea1b665398bd85", + "futureFilteredBlob": "db57d88c1ab923e0d624eed89ceb8a6add0d8b2c", + "crlfCount": 32 + }, + { + "path": "evidence/current-consumer-20260905/operator/browser-before-01-command.json", + "rawBlob": "418ba66374b50f25a3d8bb4efcd838d2ac05f5b9", + "futureFilteredBlob": "d10d31880da07341f443e320e69d8616fb54f1b3", + "crlfCount": 10 + }, + { + "path": "evidence/current-consumer-20260905/operator/browser-before-02-command.json", + "rawBlob": "263a04d86b34d14c182bc5fbbe4b07c7f8fefc9a", + "futureFilteredBlob": "85190f6c68d0cd45876b1bb25802ae9774f41403", + "crlfCount": 10 + }, + { + "path": "evidence/current-consumer-20260905/operator/browser-before-03-command.json", + "rawBlob": "97667ca123e01f43217af6fac89e08c8e1010b3e", + "futureFilteredBlob": "f97868a6b61b7c294539a3f45372065e82834de7", + "crlfCount": 10 + }, + { + "path": "evidence/current-consumer-20260905/operator/canonical-checks.json", + "rawBlob": "b9f670defd7cfc837b56fa807dd6cd460440b272", + "futureFilteredBlob": "2650bcbd496d9dd5b6e2ee1a3d93c4f3336e0403", + "crlfCount": 83 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-citation-correctness-addendum.json", + "rawBlob": "83fdf6d3308c8ec38c4e125e9b2fd96300e4156e", + "futureFilteredBlob": "fe881e8aca8a931274d9b4b2faf00ba10db0e434", + "crlfCount": 21 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-consumer-02-commands.json", + "rawBlob": "402b1254e07843ac03478628ba032c5f467b27cb", + "futureFilteredBlob": "66000fd93202d58b4e4e454b1c6f645642657f35", + "crlfCount": 53 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-consumer-preservation.json", + "rawBlob": "04fed132194d3f76c3f080d1f3c6d5b9cb0ebcf2", + "futureFilteredBlob": "18b2d3f24f35541d1952a493302b3661345139d0", + "crlfCount": 86 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.command.json", + "rawBlob": "d8392196995b1d27a0df35879e2080aa11901917", + "futureFilteredBlob": "34a9ffbbef5c66dcb02e41f5722e0b337c54ebe9", + "crlfCount": 9 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/change-boundary.md.txt", + "rawBlob": "7e95ffd630634a3c7a4f7bcf1a22f1867dd7b5df", + "futureFilteredBlob": "18412692d8b5742d156440350e31c5f658f19378", + "crlfCount": 5 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.command.json", + "rawBlob": "c360ffafb0b13a46b8b03661387891bcaf9caebd", + "futureFilteredBlob": "5b39da6e6a282901c969b22c7c35a64012c4685e", + "crlfCount": 9 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-03-commands.json", + "rawBlob": "67b12a11fefd972ddebb69e4b8ffa22612e0b6c4", + "futureFilteredBlob": "80e0316ca9236a2a09912d0e12ccba3c9b603432", + "crlfCount": 110 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-browser-01.command.json", + "rawBlob": "65ef4ce8693f0ad58e6f04d47ea65d4167ebda72", + "futureFilteredBlob": "4440626316e309fbf522776efc366c97a5cd1a93", + "crlfCount": 9 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-browser-02.command.json", + "rawBlob": "3297eaf7c65ce8175c59fc09a3022c7167d117ea", + "futureFilteredBlob": "97e340151fd65fccaa11f740a9f5d6de34a559dc", + "crlfCount": 9 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-commands.json", + "rawBlob": "694b6146eafef2d47739e93a0b9e5cce8a059ac4", + "futureFilteredBlob": "79ef5857dd9a475a5fbcdd9c8d6c0ffd1990bacc", + "crlfCount": 108 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-lf-normalization.json", + "rawBlob": "03b79dd0cd2bfce95fa689be811d98bf501549ed", + "futureFilteredBlob": "8d9eb8ea829f0ffc053badd7b976304e1724d218", + "crlfCount": 43 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-metadata-checks.json", + "rawBlob": "90cf2dd739fa0124baefbc69f513e2886c343753", + "futureFilteredBlob": "7507f5e1c47a23330ce6e092e487e0258bb4778b", + "crlfCount": 21 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-final-typecheck.command.json", + "rawBlob": "50e7d401ffde0804618a9046a0f10cca3883564e", + "futureFilteredBlob": "1a6dfea582428873e59eec33e252af77056f332b", + "crlfCount": 8 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.command.json", + "rawBlob": "c547e3507ec6d11ec87dabbcce1235b390876fa1", + "futureFilteredBlob": "7e6d74c7ccf889c0d0dc70b732471580b98f509d", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.command.json", + "rawBlob": "4992a59c18ac469b9d50eb428b4f72ea08fc812c", + "futureFilteredBlob": "3f0927a8f72d2886b6d4359151bc2192f3834903", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.command.json", + "rawBlob": "98eae896ecf50226f4f1c9d780a06694ae946c7f", + "futureFilteredBlob": "bda9b0caed86bd3c1eda7dfbcb17e462f0dcf9a4", + "crlfCount": 7 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-generated-matched-after.command.json", + "rawBlob": "cff2af40239cfe874e97d51253c327c7f1eb5f21", + "futureFilteredBlob": "9c5022ee3c998b0a417da08ad9c0a117b03c86ef", + "crlfCount": 7 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-generated-matched-after.stderr", + "rawBlob": "57cc9ca38d93a52f6d845e83ee5153493086dc5c", + "futureFilteredBlob": "9cf2ed6800d22f34edb66cce2e5065ef27a9440b", + "crlfCount": 16 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-installed-consumer-02.json", + "rawBlob": "30df8d1d3dd66da244fc7ccb89ef8394a90e1806", + "futureFilteredBlob": "2c67ce8973d6d8af929857851ddc4f2748ee62cb", + "crlfCount": 977 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-installed-consumer-03.json", + "rawBlob": "cd29bf20c46c87c25f56497e411f53c22c87cf34", + "futureFilteredBlob": "446a248d575cd15ed29421cf08c21c47f608f39a", + "crlfCount": 977 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-installed-consumer.json", + "rawBlob": "af4c1f635d8bae92f190991068783738375e8d30", + "futureFilteredBlob": "55ef93b180c005d653b697c5720239776bbd7a78", + "crlfCount": 977 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-keyboard-citation-relocation.json", + "rawBlob": "4eb23a6d43c47f32bd5ac48adb691e37d8c8f597", + "futureFilteredBlob": "8937b2cb9e2fcdd4570b447cd8d5a77083f4b0a4", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.command.json", + "rawBlob": "8cc7983536a6a41ce0759a20cff09619c8e9ec4a", + "futureFilteredBlob": "becb0d2037083596b79096b503bb0100e0122a44", + "crlfCount": 9 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.md.txt", + "rawBlob": "187036e16ba7bf8233da16669f9febbb9372101f", + "futureFilteredBlob": "f6ba300edc58cdf2a1b7d34729b608967d53814e", + "crlfCount": 5 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-primary-preservation-readback.json", + "rawBlob": "53b5705aba4fa0f0ae5f4022ec5500deca055446", + "futureFilteredBlob": "f937076a5ba79e32021bf59f25a7415258d520e0", + "crlfCount": 31 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-primary-preservation-verified.json", + "rawBlob": "59df70f24e0c45cbda67451b4b7b0886a24362b6", + "futureFilteredBlob": "8a5efd4d64efc0b7739a49b61124dfec800b6b80", + "crlfCount": 13 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-boundary-01.command.json", + "rawBlob": "29f04aca6c13c1d6245a272f038808aecca31761", + "futureFilteredBlob": "d2b7869c13e282718238acaef3882f3d2e633dba", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-boundary-02.command.json", + "rawBlob": "cf09c5a7707a0ef1497e284b54033c9bd74d2b31", + "futureFilteredBlob": "8aad6e4251358240a5711f6840d43a46af46eaef", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-boundary-03.command.json", + "rawBlob": "39cebb47755e929ef2fbb5493e44876f2246f45a", + "futureFilteredBlob": "2990d23a943e27c2fbef3a185d8a9339b35241ce", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-matched-after.command.json", + "rawBlob": "b5fbdab93b6372e74819263d2c200ee64c8e0627", + "futureFilteredBlob": "3bd50d1620ce3001092245b4687f4c7627c451c9", + "crlfCount": 7 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-smoke-01.command.json", + "rawBlob": "8a9f366e2504eca054a8e2d621c7b33cabd95959", + "futureFilteredBlob": "fca0e41d2e0608d3060cdd80f0eb873a93a8f72d", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-smoke-02.command.json", + "rawBlob": "f688442dcb85d613c6e359df2cb75416c9570091", + "futureFilteredBlob": "0afce6e2c4d36b58a1a6c3f27e8a09ea7bf4b2cc", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-smoke-03.command.json", + "rawBlob": "c8ae82a9ea7b0d8586e0b13139feca24b3bcea89", + "futureFilteredBlob": "6c656c2f9fbfd2a2adbd20cab79303efc8709a62", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-smoke-04.command.json", + "rawBlob": "f7aba7e955e10ddef022c8f3826471c1e05cd580", + "futureFilteredBlob": "397d7bf8442774372c6cd453eacf068d7e5c65dd", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-smoke-05.command.json", + "rawBlob": "df418170e16183f8c4d191ff135defa24201a7a1", + "futureFilteredBlob": "75a23b15158e75bd43d9fb083e821588e7f674ea", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-source-smoke-06.command.json", + "rawBlob": "eef07aba10357c88b48228cfbc240e11b2476d53", + "futureFilteredBlob": "b2fa67b729e3cdaa69660db5e26d70ea939d3af4", + "crlfCount": 10 + }, + { + "path": "evidence/current-consumer-20260905/operator/d3-worker-visual-inspection.json", + "rawBlob": "cb63f4214664eaa36270d434ab39a9d299dd3ec1", + "futureFilteredBlob": "e1e67409c999491929c63805a2e5e2abccd96977", + "crlfCount": 134 + }, + { + "path": "evidence/current-consumer-20260905/operator/diagnose-d3-enlargement-02.mjs.txt", + "rawBlob": "c4991432afbc05e0710288f0c02efacea09dc9b2", + "futureFilteredBlob": "6f790453c554f4f9cbbd9489ffd51c683f640292", + "crlfCount": 179 + }, + { + "path": "evidence/current-consumer-20260905/operator/diagnose-d3-keyboard-scroll.mjs.txt", + "rawBlob": "08a5dec05d5d00a961e93a94b187b376bf3bd924", + "futureFilteredBlob": "41bfdb3b0914cbe26a5d70356e08db9ad63e797b", + "crlfCount": 182 + }, + { + "path": "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.command.json", + "rawBlob": "214334ab2fd93b14db735f70583e6d572b849ece", + "futureFilteredBlob": "49063fea1ce4ef9c21d27bde1811ca144a0fbd48", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.command.json", + "rawBlob": "2c2f5d40b1dc5e7aaa22ce1c5e8e31474bccd246", + "futureFilteredBlob": "6707f818047236fb53135fea0bb2106d926494ac", + "crlfCount": 4 + }, + { + "path": "evidence/current-consumer-20260905/operator/install-consumer-commands.json", + "rawBlob": "73c56781a547867205928c08258b517a23263d8e", + "futureFilteredBlob": "fe0d285146fe242a2b3c5fc4e733efa014a0e91b", + "crlfCount": 106 + }, + { + "path": "evidence/current-consumer-20260905/operator/installed-consumer.json", + "rawBlob": "35f8502326051f5fea416f30abcfd58db64cc781", + "futureFilteredBlob": "b6aff97b3b3390b5962c42e2814c1455d989c865", + "crlfCount": 12 + }, + { + "path": "evidence/current-consumer-20260905/operator/locked-browser-01.command.json", + "rawBlob": "ce54794a7ebbf5001f8b080c5fff3bb1747e81c2", + "futureFilteredBlob": "bfa1c272ba3a54b15fd27e6ea326ae7268a484d3", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/locked-browser-02.command.json", + "rawBlob": "b264399f5ce351e7e63712f583ab58af2ad499f4", + "futureFilteredBlob": "59ba15de45b7f44482ca017f892df63bc0570663", + "crlfCount": 10 + }, + { + "path": "evidence/current-consumer-20260905/operator/locked-consumer-commands.json", + "rawBlob": "58373f4e7a13f27677403b6e5c40749bcca4c528", + "futureFilteredBlob": "6c4b2c6da02d7df86d82f69e3704150f2f110588", + "crlfCount": 69 + }, + { + "path": "evidence/current-consumer-20260905/operator/locked-final-checks.json", + "rawBlob": "b8993f3816c84f2d88ff3c6353cb5c64bd958094", + "futureFilteredBlob": "20d950f237fcd3b7a57cdafb8056974f8adf7555", + "crlfCount": 35 + }, + { + "path": "evidence/current-consumer-20260905/operator/locked-installed-consumer.json", + "rawBlob": "f9fc417026741057713520719311dfe216e433a3", + "futureFilteredBlob": "a79b90e7d3c611ee674c45310a8112479f2198fe", + "crlfCount": 1040 + }, + { + "path": "evidence/current-consumer-20260905/operator/package-installed-bindings.json", + "rawBlob": "50b66fdbd141cbdcaf1b1ec3ab5e4f7e932085e7", + "futureFilteredBlob": "cc1f73e64e43e3ab14fa44406d616af488acd579", + "crlfCount": 1746 + }, + { + "path": "evidence/current-consumer-20260905/operator/source-custody.json", + "rawBlob": "ce641a1957913dd3fb5a6ca4f685ada1cfc6c3a4", + "futureFilteredBlob": "fda442023c76c9994ad7be0dfb0a8159f453739e", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/operator/source-npm-ci.json", + "rawBlob": "c4c18d460ec0cea8b402213abc12b656c0c5ee35", + "futureFilteredBlob": "b04c12ef24444688c495afef5f6f1f312a3ac6a0", + "crlfCount": 32 + }, + { + "path": "evidence/current-consumer-20260905/operator/template-lock-construction.command.json", + "rawBlob": "5a4d4c38a139bc1a9054b469727662331c2d23ac", + "futureFilteredBlob": "b37fb2b234585a313daf0a3b1fd8858ad89b52e0", + "crlfCount": 11 + }, + { + "path": "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_ENLARGEMENT_ADDENDUM.json", + "rawBlob": "b4d56ae20615a961fac73f19c98a7814a1f0a54d", + "futureFilteredBlob": "252ff2d8faa1c818910f522b170a654ec5c5c0ab", + "crlfCount": 14 + }, + { + "path": "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_KEYBOARD_VISIBILITY_ADDENDUM.json", + "rawBlob": "44511d6840a260572f5edf55d8209a3ec27f2e7d", + "futureFilteredBlob": "1ddd3a53762702f59e73e7c44f9f9de860dd577c", + "crlfCount": 12 + } + ], + "sourceTarInstalled": { + "files": 242, + "tarSha256": "1a6e980a684f433fcdc80021eb5569fa5c4b94e09a71e8a2adbe5d821e654c69", + "installedRoot": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery installed host 03\\node_modules\\nodeagent", + "currentSourceDifferences": [ + "HANDOFF.md" + ], + "scope": "HANDOFF only changed after package capture; all 242 tar/installed bytes exact, 241 current source bytes exact." + }, + "retainedConsumers": [ + { + "root": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Generated Chat app", + "hashes": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "f185d6cd0889ef7ea8974f0c73f31c352a52e4c18b7e7394ceded0cf230ef101", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + } + }, + { + "root": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked Chat app", + "hashes": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + } + }, + { + "root": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app", + "hashes": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + } + }, + { + "root": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app 02", + "hashes": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + } + }, + { + "root": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app 03", + "hashes": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + } + } + ], + "currentGeneratedInputsExactSourceTemplate": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "candidatePaths": [ + ".tours/01-primary-user-flow.tour", + "HANDOFF.md", + "docs/START_HERE.md", + "e2e/current-consumer-proof.mjs", + "e2e/current-consumer-recovery-proof.mjs", + "evidence/current-consumer-20260905/README.md", + "evidence/current-consumer-20260905/historical/browser-before-03/report.json", + "evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.html", + "evidence/current-consumer-20260905/historical/d3-final-browser-01/failure.png", + "evidence/current-consumer-20260905/historical/d3-final-browser-01/generated-error-text-200-390.png", + "evidence/current-consumer-20260905/historical/d3-final-browser-01/report.json", + "evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.html", + "evidence/current-consumer-20260905/historical/d3-final-browser-02/failure.png", + "evidence/current-consumer-20260905/historical/d3-final-browser-02/generated-error-text-200-390.png", + "evidence/current-consumer-20260905/historical/d3-final-browser-02/report.json", + "evidence/current-consumer-20260905/historical/d3-final-browser-02/source-error-text-200-390.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.html", + "evidence/current-consumer-20260905/historical/d3-source-smoke-01/failure.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-01/report.json", + "evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.html", + "evidence/current-consumer-20260905/historical/d3-source-smoke-02/failure.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-02/report.json", + "evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.html", + "evidence/current-consumer-20260905/historical/d3-source-smoke-03/failure.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-03/report.json", + "evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.html", + "evidence/current-consumer-20260905/historical/d3-source-smoke-04/failure.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-04/report.json", + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.html", + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/failure.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/report.json", + "evidence/current-consumer-20260905/historical/d3-source-smoke-05/source-text-200-390.png", + "evidence/current-consumer-20260905/historical/d3-source-smoke-06/report.json", + "evidence/current-consumer-20260905/historical/d3-source-smoke-06/source-error-text-200-390.png", + "evidence/current-consumer-20260905/historical/first-submit-dependency-comparison-01/report.json", + "evidence/current-consumer-20260905/historical/first-submit-diagnosis-01/report.json", + "evidence/current-consumer-20260905/historical/locked-browser-01/failure.html", + "evidence/current-consumer-20260905/historical/locked-browser-01/failure.png", + "evidence/current-consumer-20260905/historical/locked-browser-01/report.json", + "evidence/current-consumer-20260905/manifest.json", + "evidence/current-consumer-20260905/operator/D3_SOURCE_BEFORE_BINDINGS.json", + "evidence/current-consumer-20260905/operator/browser-before-01-command.json", + "evidence/current-consumer-20260905/operator/browser-before-01-harness.mjs.txt", + "evidence/current-consumer-20260905/operator/browser-before-01.stderr", + "evidence/current-consumer-20260905/operator/browser-before-01.stdout", + "evidence/current-consumer-20260905/operator/browser-before-02-command.json", + "evidence/current-consumer-20260905/operator/browser-before-02-command.stderr", + "evidence/current-consumer-20260905/operator/browser-before-02-command.stdout", + "evidence/current-consumer-20260905/operator/browser-before-02-harness.mjs.txt", + "evidence/current-consumer-20260905/operator/browser-before-03-command.json", + "evidence/current-consumer-20260905/operator/browser-before-03-command.stderr", + "evidence/current-consumer-20260905/operator/browser-before-03-command.stdout", + "evidence/current-consumer-20260905/operator/browser-before-03-harness.mjs.txt", + "evidence/current-consumer-20260905/operator/canonical-audit-production.stderr", + "evidence/current-consumer-20260905/operator/canonical-audit-production.stdout", + "evidence/current-consumer-20260905/operator/canonical-build.stderr", + "evidence/current-consumer-20260905/operator/canonical-build.stdout", + "evidence/current-consumer-20260905/operator/canonical-checks.json", + "evidence/current-consumer-20260905/operator/canonical-tests.stderr", + "evidence/current-consumer-20260905/operator/canonical-tests.stdout", + "evidence/current-consumer-20260905/operator/capture-generated-d3-before-01.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-generated-d3-before.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after-syntax-failure.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-source-d3-before-01.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-source-d3-before-02.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-source-d3-before.mjs.txt", + "evidence/current-consumer-20260905/operator/capture-source-d3-matched-after.mjs.txt", + "evidence/current-consumer-20260905/operator/d3-citation-before/.tours/01-primary-user-flow.tour", + "evidence/current-consumer-20260905/operator/d3-citation-before/docs/START_HERE.md.txt", + "evidence/current-consumer-20260905/operator/d3-citation-correctness-addendum.json", + "evidence/current-consumer-20260905/operator/d3-consumer-02-commands.json", + "evidence/current-consumer-20260905/operator/d3-consumer-preservation.json", + "evidence/current-consumer-20260905/operator/d3-corrected-tours-validate.stderr", + "evidence/current-consumer-20260905/operator/d3-corrected-tours-validate.stdout", + "evidence/current-consumer-20260905/operator/d3-enlargement-css-before.txt", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.command.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.stderr", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01.stdout", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/change-boundary.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/failure.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/failure.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/intrinsic-width-diagnosis.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/report.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.command.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.stderr", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.stdout", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/change-boundary.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.before.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.html", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.png", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/intrinsic-width-diagnosis.json", + "evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/report.json", + "evidence/current-consumer-20260905/operator/d3-final-03-build.stderr", + "evidence/current-consumer-20260905/operator/d3-final-03-build.stdout", + "evidence/current-consumer-20260905/operator/d3-final-03-commands.json", + "evidence/current-consumer-20260905/operator/d3-final-03-test.stderr", + "evidence/current-consumer-20260905/operator/d3-final-03-test.stdout", + "evidence/current-consumer-20260905/operator/d3-final-03-tours-validate.stderr", + "evidence/current-consumer-20260905/operator/d3-final-03-tours-validate.stdout", + "evidence/current-consumer-20260905/operator/d3-final-browser-01.command.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-01.stderr", + "evidence/current-consumer-20260905/operator/d3-final-browser-01.stdout", + "evidence/current-consumer-20260905/operator/d3-final-browser-02.command.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-02.stderr", + "evidence/current-consumer-20260905/operator/d3-final-browser-02.stdout", + "evidence/current-consumer-20260905/operator/d3-final-browser-03.stderr", + "evidence/current-consumer-20260905/operator/d3-final-browser-03.stdout", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/report.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.png", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.before.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.html", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.json", + "evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.png", + "evidence/current-consumer-20260905/operator/d3-final-build.stderr", + "evidence/current-consumer-20260905/operator/d3-final-build.stdout", + "evidence/current-consumer-20260905/operator/d3-final-commands.json", + "evidence/current-consumer-20260905/operator/d3-final-diff-check.stderr", + "evidence/current-consumer-20260905/operator/d3-final-diff-check.stdout", + "evidence/current-consumer-20260905/operator/d3-final-examples-guidance-smoke.stderr", + "evidence/current-consumer-20260905/operator/d3-final-examples-guidance-smoke.stdout", + "evidence/current-consumer-20260905/operator/d3-final-lf-normalization.json", + "evidence/current-consumer-20260905/operator/d3-final-metadata-checks.json", + "evidence/current-consumer-20260905/operator/d3-final-prose.txt", + "evidence/current-consumer-20260905/operator/d3-final-secret-scan.stderr", + "evidence/current-consumer-20260905/operator/d3-final-secret-scan.stdout", + "evidence/current-consumer-20260905/operator/d3-final-test.stderr", + "evidence/current-consumer-20260905/operator/d3-final-test.stdout", + "evidence/current-consumer-20260905/operator/d3-final-tours-validate.stderr", + "evidence/current-consumer-20260905/operator/d3-final-tours-validate.stdout", + "evidence/current-consumer-20260905/operator/d3-final-typecheck.command.json", + "evidence/current-consumer-20260905/operator/d3-final-typecheck.stderr", + "evidence/current-consumer-20260905/operator/d3-final-typecheck.stdout", + "evidence/current-consumer-20260905/operator/d3-first-typecheck.stderr", + "evidence/current-consumer-20260905/operator/d3-first-typecheck.stdout", + "evidence/current-consumer-20260905/operator/d3-focus-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "evidence/current-consumer-20260905/operator/d3-focus-before/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.command.json", + "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.stderr", + "evidence/current-consumer-20260905/operator/d3-generated-boundary-01.stdout", + "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.command.json", + "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.stderr", + "evidence/current-consumer-20260905/operator/d3-generated-boundary-02.stdout", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.command.json", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.stderr", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.stdout", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after.command.json", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after.stderr", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after.stdout", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.after.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.png", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.after.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.png", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.after.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.png", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.after.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.before.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.html", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.png", + "evidence/current-consumer-20260905/operator/d3-generated-matched-after/report.json", + "evidence/current-consumer-20260905/operator/d3-handoff-packaged-before.md.txt", + "evidence/current-consumer-20260905/operator/d3-host-install-02.stderr", + "evidence/current-consumer-20260905/operator/d3-host-install-02.stdout", + "evidence/current-consumer-20260905/operator/d3-host-install-03.stderr", + "evidence/current-consumer-20260905/operator/d3-host-install-03.stdout", + "evidence/current-consumer-20260905/operator/d3-host-install.stderr", + "evidence/current-consumer-20260905/operator/d3-host-install.stdout", + "evidence/current-consumer-20260905/operator/d3-installed-consumer-02.json", + "evidence/current-consumer-20260905/operator/d3-installed-consumer-03.json", + "evidence/current-consumer-20260905/operator/d3-installed-consumer.json", + "evidence/current-consumer-20260905/operator/d3-installed-doctor-02.stderr", + "evidence/current-consumer-20260905/operator/d3-installed-doctor-02.stdout", + "evidence/current-consumer-20260905/operator/d3-installed-doctor-03.stderr", + "evidence/current-consumer-20260905/operator/d3-installed-doctor-03.stdout", + "evidence/current-consumer-20260905/operator/d3-installed-doctor.stderr", + "evidence/current-consumer-20260905/operator/d3-installed-doctor.stdout", + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-02.stderr", + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-02.stdout", + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-03.stderr", + "evidence/current-consumer-20260905/operator/d3-installed-scaffold-03.stdout", + "evidence/current-consumer-20260905/operator/d3-installed-scaffold.stderr", + "evidence/current-consumer-20260905/operator/d3-installed-scaffold.stdout", + "evidence/current-consumer-20260905/operator/d3-keyboard-citation-relocation.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-focus-before.tsx.txt", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.command.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stderr", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stdout", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.before.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/keyboard-scroll-diagnosis.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/report.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.before.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.before.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.before.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.png", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.before.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.html", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.json", + "evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.png", + "evidence/current-consumer-20260905/operator/d3-pack-02.stderr", + "evidence/current-consumer-20260905/operator/d3-pack-02.stdout", + "evidence/current-consumer-20260905/operator/d3-pack-03.stderr", + "evidence/current-consumer-20260905/operator/d3-pack-03.stdout", + "evidence/current-consumer-20260905/operator/d3-pack.stderr", + "evidence/current-consumer-20260905/operator/d3-pack.stdout", + "evidence/current-consumer-20260905/operator/d3-primary-preservation-readback.json", + "evidence/current-consumer-20260905/operator/d3-primary-preservation-verified.json", + "evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx.txt", + "evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/styles.css", + "evidence/current-consumer-20260905/operator/d3-product-before-custody/src/app/styles.css", + "evidence/current-consumer-20260905/operator/d3-product-before-custody/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "evidence/current-consumer-20260905/operator/d3-product-before-custody/src/features/node-agent/components/toolUIs.tsx.txt", + "evidence/current-consumer-20260905/operator/d3-retry-guard-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "evidence/current-consumer-20260905/operator/d3-retry-guard-before/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "evidence/current-consumer-20260905/operator/d3-runtime-state-guard-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "evidence/current-consumer-20260905/operator/d3-runtime-state-guard-before/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "evidence/current-consumer-20260905/operator/d3-source-boundary-01.command.json", + "evidence/current-consumer-20260905/operator/d3-source-boundary-01.stderr", + "evidence/current-consumer-20260905/operator/d3-source-boundary-01.stdout", + "evidence/current-consumer-20260905/operator/d3-source-boundary-02.command.json", + "evidence/current-consumer-20260905/operator/d3-source-boundary-02.stderr", + "evidence/current-consumer-20260905/operator/d3-source-boundary-02.stdout", + "evidence/current-consumer-20260905/operator/d3-source-boundary-03.command.json", + "evidence/current-consumer-20260905/operator/d3-source-boundary-03.stderr", + "evidence/current-consumer-20260905/operator/d3-source-boundary-03.stdout", + "evidence/current-consumer-20260905/operator/d3-source-matched-after.command.json", + "evidence/current-consumer-20260905/operator/d3-source-matched-after.stderr", + "evidence/current-consumer-20260905/operator/d3-source-matched-after.stdout", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/report.json", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.png", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.after.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.before.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.html", + "evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.png", + "evidence/current-consumer-20260905/operator/d3-source-smoke-01-harness.mjs.txt", + "evidence/current-consumer-20260905/operator/d3-source-smoke-01.command.json", + "evidence/current-consumer-20260905/operator/d3-source-smoke-01.stderr", + "evidence/current-consumer-20260905/operator/d3-source-smoke-01.stdout", + "evidence/current-consumer-20260905/operator/d3-source-smoke-02-harness.mjs.txt", + "evidence/current-consumer-20260905/operator/d3-source-smoke-02.command.json", + "evidence/current-consumer-20260905/operator/d3-source-smoke-02.stderr", + "evidence/current-consumer-20260905/operator/d3-source-smoke-02.stdout", + "evidence/current-consumer-20260905/operator/d3-source-smoke-03.command.json", + "evidence/current-consumer-20260905/operator/d3-source-smoke-03.stderr", + "evidence/current-consumer-20260905/operator/d3-source-smoke-03.stdout", + "evidence/current-consumer-20260905/operator/d3-source-smoke-04.command.json", + "evidence/current-consumer-20260905/operator/d3-source-smoke-04.stderr", + "evidence/current-consumer-20260905/operator/d3-source-smoke-04.stdout", + "evidence/current-consumer-20260905/operator/d3-source-smoke-05.command.json", + "evidence/current-consumer-20260905/operator/d3-source-smoke-05.stderr", + "evidence/current-consumer-20260905/operator/d3-source-smoke-05.stdout", + "evidence/current-consumer-20260905/operator/d3-source-smoke-06.command.json", + "evidence/current-consumer-20260905/operator/d3-source-smoke-06.stderr", + "evidence/current-consumer-20260905/operator/d3-source-smoke-06.stdout", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay.stderr", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay.stdout", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.html", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.json", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.png", + "evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/report.json", + "evidence/current-consumer-20260905/operator/d3-worker-visual-inspection.json", + "evidence/current-consumer-20260905/operator/dependency-repair-freeze/HANDOFF.md.txt", + "evidence/current-consumer-20260905/operator/dependency-repair-freeze/e2e/current-consumer-proof.mjs.txt", + "evidence/current-consumer-20260905/operator/dependency-repair-freeze/examples/apps/chat-ui/template/package-lock.json", + "evidence/current-consumer-20260905/operator/diagnose-d3-enlargement-02.mjs.txt", + "evidence/current-consumer-20260905/operator/diagnose-d3-enlargement.mjs.txt", + "evidence/current-consumer-20260905/operator/diagnose-d3-keyboard-scroll.mjs.txt", + "evidence/current-consumer-20260905/operator/diagnose-dependency-comparison.mjs.txt", + "evidence/current-consumer-20260905/operator/diagnose-first-submit.mjs.txt", + "evidence/current-consumer-20260905/operator/durable.json", + "evidence/current-consumer-20260905/operator/durable.stderr", + "evidence/current-consumer-20260905/operator/durable.stdout", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.html", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.png", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.md.txt", + "evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.png", + "evidence/current-consumer-20260905/operator/existing-target-refusal.stderr", + "evidence/current-consumer-20260905/operator/existing-target-refusal.stdout", + "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.command.json", + "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.stderr", + "evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.stdout", + "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.command.json", + "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stderr", + "evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stdout", + "evidence/current-consumer-20260905/operator/frame.json", + "evidence/current-consumer-20260905/operator/frame.stderr", + "evidence/current-consumer-20260905/operator/frame.stdout", + "evidence/current-consumer-20260905/operator/host-install.stderr", + "evidence/current-consumer-20260905/operator/host-install.stdout", + "evidence/current-consumer-20260905/operator/install-consumer-commands.json", + "evidence/current-consumer-20260905/operator/installed-apps.stderr", + "evidence/current-consumer-20260905/operator/installed-apps.stdout", + "evidence/current-consumer-20260905/operator/installed-consumer.json", + "evidence/current-consumer-20260905/operator/installed-doctor.stderr", + "evidence/current-consumer-20260905/operator/installed-doctor.stdout", + "evidence/current-consumer-20260905/operator/installed-scaffold.stderr", + "evidence/current-consumer-20260905/operator/installed-scaffold.stdout", + "evidence/current-consumer-20260905/operator/locked-browser-01-harness.mjs.txt", + "evidence/current-consumer-20260905/operator/locked-browser-01.command.json", + "evidence/current-consumer-20260905/operator/locked-browser-01.stderr", + "evidence/current-consumer-20260905/operator/locked-browser-01.stdout", + "evidence/current-consumer-20260905/operator/locked-browser-02.command.json", + "evidence/current-consumer-20260905/operator/locked-browser-02.stderr", + "evidence/current-consumer-20260905/operator/locked-browser-02.stdout", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.html", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.json", + "evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.png", + "evidence/current-consumer-20260905/operator/locked-browser-02/report.json", + "evidence/current-consumer-20260905/operator/locked-consumer-commands.json", + "evidence/current-consumer-20260905/operator/locked-existing-target-refusal.stderr", + "evidence/current-consumer-20260905/operator/locked-existing-target-refusal.stdout", + "evidence/current-consumer-20260905/operator/locked-final-checks.json", + "evidence/current-consumer-20260905/operator/locked-generated-audit.stderr", + "evidence/current-consumer-20260905/operator/locked-generated-audit.stdout", + "evidence/current-consumer-20260905/operator/locked-generated-production-audit.stderr", + "evidence/current-consumer-20260905/operator/locked-generated-production-audit.stdout", + "evidence/current-consumer-20260905/operator/locked-host-install.stderr", + "evidence/current-consumer-20260905/operator/locked-host-install.stdout", + "evidence/current-consumer-20260905/operator/locked-installed-consumer.json", + "evidence/current-consumer-20260905/operator/locked-installed-doctor.stderr", + "evidence/current-consumer-20260905/operator/locked-installed-doctor.stdout", + "evidence/current-consumer-20260905/operator/locked-installed-scaffold.stderr", + "evidence/current-consumer-20260905/operator/locked-installed-scaffold.stdout", + "evidence/current-consumer-20260905/operator/locked-source-pack.stderr", + "evidence/current-consumer-20260905/operator/locked-source-pack.stdout", + "evidence/current-consumer-20260905/operator/locked-source-test.stderr", + "evidence/current-consumer-20260905/operator/locked-source-test.stdout", + "evidence/current-consumer-20260905/operator/package-installed-bindings.json", + "evidence/current-consumer-20260905/operator/primary-head.after", + "evidence/current-consumer-20260905/operator/primary-index-nul.after", + "evidence/current-consumer-20260905/operator/primary-index.after", + "evidence/current-consumer-20260905/operator/primary-index.before", + "evidence/current-consumer-20260905/operator/primary-refs.after", + "evidence/current-consumer-20260905/operator/primary-refs.before", + "evidence/current-consumer-20260905/operator/primary-status.after", + "evidence/current-consumer-20260905/operator/primary-status.before", + "evidence/current-consumer-20260905/operator/primary-worktrees.after", + "evidence/current-consumer-20260905/operator/primary-worktrees.before", + "evidence/current-consumer-20260905/operator/source-audit.stderr", + "evidence/current-consumer-20260905/operator/source-audit.stdout", + "evidence/current-consumer-20260905/operator/source-custody.json", + "evidence/current-consumer-20260905/operator/source-npm-ci.json", + "evidence/current-consumer-20260905/operator/source-npm-ci.stderr", + "evidence/current-consumer-20260905/operator/source-npm-ci.stdout", + "evidence/current-consumer-20260905/operator/source-pack.stderr", + "evidence/current-consumer-20260905/operator/source-pack.stdout", + "evidence/current-consumer-20260905/operator/sqlite-reopen.json", + "evidence/current-consumer-20260905/operator/sqlite-reopen.stderr", + "evidence/current-consumer-20260905/operator/sqlite-reopen.stdout", + "evidence/current-consumer-20260905/operator/template-lock-construction.command.json", + "evidence/current-consumer-20260905/operator/template-lock-construction.result.json", + "evidence/current-consumer-20260905/operator/template-lock-construction.stderr", + "evidence/current-consumer-20260905/operator/template-lock-construction.stdout", + "evidence/current-consumer-20260905/operator/template-lock-seed.json", + "evidence/current-consumer-20260905/operator/worktree-create.stderr", + "evidence/current-consumer-20260905/operator/worktree-create.stdout", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_CURRENT_CONSUMER_PLAN.md.txt", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.json", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.md.txt", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.json", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.md.txt", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.json", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.md.txt", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_ENLARGEMENT_ADDENDUM.json", + "evidence/current-consumer-20260905/plans/E6e_NODEAGENT_KEYBOARD_VISIBILITY_ADDENDUM.json", + "examples/apps/chat-ui/template/package-lock.json", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "examples/apps/chat-ui/template/src/styles.css", + "src/app/styles.css", + "src/features/node-agent/components/NodeAgentThread.tsx", + "src/features/node-agent/components/toolUIs.tsx" + ], + "noMutations": true +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.before.html new file mode 100644 index 0000000..b885889 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.html new file mode 100644 index 0000000..b885889 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.json new file mode 100644 index 0000000..8ca4c58 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.png new file mode 100644 index 0000000..3c0088c Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.before.html new file mode 100644 index 0000000..6db9102 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.html new file mode 100644 index 0000000..6db9102 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.json new file mode 100644 index 0000000..29c75a8 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.json @@ -0,0 +1,56 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4020, + "clientHeight": 4020, + "box": { + "x": 0, + "y": -3176, + "width": 390, + "height": 4019.71875, + "top": -3176, + "right": 390, + "bottom": 843.71875, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 707.71875, + "width": 366, + "height": 128, + "top": 707.71875, + "right": 378, + "bottom": 835.71875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 3240 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.png new file mode 100644 index 0000000..311c4b3 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.before.html new file mode 100644 index 0000000..3c60eff --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.html new file mode 100644 index 0000000..3c60eff --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.json new file mode 100644 index 0000000..51b2bde --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2935, + "clientHeight": 2935, + "box": { + "x": 0, + "y": -2023, + "width": 390, + "height": 2935.484375, + "top": -2023, + "right": 390, + "bottom": 912.484375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 630.484375, + "width": 296, + "height": 115, + "top": 630.484375, + "right": 363, + "bottom": 745.484375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 776.484375, + "width": 366, + "height": 128, + "top": 776.484375, + "right": 378, + "bottom": 904.484375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 2087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.png new file mode 100644 index 0000000..2d71eb7 Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/report.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/report.json new file mode 100644 index 0000000..9a18ada --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/report.json @@ -0,0 +1,1413 @@ +{ + "reviewerScope": "Bounded late-Stop supplement: source and normal generated consumer at390; wait for first actual completed tool and second running tool, native Stop, preserve current completed tool and prior response/graph, explicit Retry.", + "namedProof": "NODEAGENT-INDEPENDENT-LATE-STOP-01", + "startedAt": "2026-09-05T09:30:57.394Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "passed": true, + "checks": [ + { + "name": "generated-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 390", + "passed": true + }, + { + "name": "generated stopped response remains stable 390", + "passed": true + }, + { + "name": "generated Stop preserves the current response first completed tool result", + "passed": true + }, + { + "name": "generated completed tool does not acquire stopped status", + "passed": true + }, + { + "name": "generated-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "generated late-Stop retry preserves earlier response", + "passed": true + }, + { + "name": "generated-late-stop-recovered-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "source stopped response has no fake Done 390", + "passed": true + }, + { + "name": "source stopped response remains stable 390", + "passed": true + }, + { + "name": "source Stop preserves the current response first completed tool result", + "passed": true + }, + { + "name": "source completed tool does not acquire stopped status", + "passed": true + }, + { + "name": "source-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "source late-Stop retry preserves earlier response", + "passed": true + }, + { + "name": "source-late-stop-recovered-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "no browser writes or provider requests", + "passed": true + } + ], + "cells": [ + { + "kind": "generated", + "width": 390, + "errors": [], + "checksStart": 0, + "capturesStart": 0, + "console": [], + "failedRequests": [], + "stopInput": "keyboard", + "stopLatencyMs": 327 + }, + { + "kind": "source", + "width": 390, + "errors": [], + "checksStart": 12, + "capturesStart": 3, + "console": [ + { + "type": "warning", + "text": "[.WebGL-0xfe400a8d400]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels", + "location": { + "url": "http://127.0.0.1:54973/", + "line": 0, + "column": 0, + "lineNumber": 0, + "columnNumber": 0 + } + }, + { + "type": "warning", + "text": "[.WebGL-0xfe400a89e00]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels", + "location": { + "url": "http://127.0.0.1:54973/", + "line": 0, + "column": 0, + "lineNumber": 0, + "columnNumber": 0 + } + }, + { + "type": "warning", + "text": "[.WebGL-0xfe4001bdc00]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels", + "location": { + "url": "http://127.0.0.1:54973/", + "line": 0, + "column": 0, + "lineNumber": 0, + "columnNumber": 0 + } + }, + { + "type": "warning", + "text": "[.WebGL-0xfe400a8d400]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels (this message will no longer repeat)", + "location": { + "url": "http://127.0.0.1:54973/", + "line": 0, + "column": 0, + "lineNumber": 0, + "columnNumber": 0 + } + } + ], + "failedRequests": [], + "stopInput": "keyboard", + "stopLatencyMs": 830 + } + ], + "captures": [ + { + "name": "generated-empty-390", + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-390", + "pngSha256": "17ff523e31e3db48d9ecc4c639932dcf2454a775015c7eee58f678204a2aa7cc", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2935, + "clientHeight": 2935, + "box": { + "x": 0, + "y": -2023, + "width": 390, + "height": 2935.484375, + "top": -2023, + "right": 390, + "bottom": 912.484375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 630.484375, + "width": 296, + "height": 115, + "top": 630.484375, + "right": 363, + "bottom": 745.484375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 776.484375, + "width": 366, + "height": 128, + "top": 776.484375, + "right": 378, + "bottom": 904.484375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 2087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-late-stop-recovered-390", + "pngSha256": "cee4a063e5e46f062e32d18662e263907c383cd7d52a6df9d709dc7324c1dc1c", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4020, + "clientHeight": 4020, + "box": { + "x": 0, + "y": -3176, + "width": 390, + "height": 4019.71875, + "top": -3176, + "right": 390, + "bottom": 843.71875, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 707.71875, + "width": 366, + "height": 128, + "top": 707.71875, + "right": 378, + "bottom": 835.71875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 3240 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-390", + "pngSha256": "75090e3ee26ca99cec746074a56f5980f0c4d90d76399c5138f03af7c34252d1", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-390", + "pngSha256": "575b71512058fe38969984755ebad70464c545902118f5d0f2dcbfbe6865c35c", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1853, + "scrollHeight": 2255, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.96875, + "width": 300, + "height": 111.78125, + "top": 177.96875, + "right": 363, + "bottom": 289.75, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-late-stop-recovered-390", + "pngSha256": "04b9751594d3ef85325d11737b90a0e809eeb52c85e6e605963d786b0bb2db0b", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2765, + "scrollHeight": 3167, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:52627", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:52627", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54973", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "sourceAfter": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerAfter": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "finishedAt": "2026-09-05T09:31:16.309Z" +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.before.html new file mode 100644 index 0000000..e8fe833 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.html new file mode 100644 index 0000000..e8fe833 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.json new file mode 100644 index 0000000..e6697fb --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.png new file mode 100644 index 0000000..c5c51ca Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.before.html new file mode 100644 index 0000000..d07b4d4 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.html new file mode 100644 index 0000000..d07b4d4 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.json new file mode 100644 index 0000000..e5f9f09 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.json @@ -0,0 +1,60 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2765, + "scrollHeight": 3167, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.png new file mode 100644 index 0000000..b53b88a Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.before.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.before.html new file mode 100644 index 0000000..755538c --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizestopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.html b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.html new file mode 100644 index 0000000..755538c --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizestopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.json b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.json new file mode 100644 index 0000000..5603691 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1853, + "scrollHeight": 2255, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.96875, + "width": 300, + "height": 111.78125, + "top": 177.96875, + "right": 363, + "bottom": 289.75, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.png b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.png new file mode 100644 index 0000000..d3df96a Binary files /dev/null and b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.png differ diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/tests.stderr.log b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/tests.stderr.log new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/tests.stdout.log b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/tests.stdout.log new file mode 100644 index 0000000..3bec836 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/tests.stdout.log @@ -0,0 +1,20 @@ + +> nodeagent@0.1.0 test +> vitest run + + + RUN  v2.1.9 D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905 + + ✓ tests/omnigentAdapter.test.ts (2 tests) 4ms + ✓ tests/searchSynthesize.test.ts (10 tests) 6ms + ✓ tests/spreadsheetDelta.test.ts (13 tests) 9ms + ✓ tests/reasoningFrameRunner.test.ts (2 tests) 6ms + ✓ tests/durableRuntime.test.ts (4 tests) 9ms + ✓ tests/nodeAgentRuntime.test.ts (8 tests) 6ms + ✓ tests/sqliteDurableRuntime.test.ts (2 tests) 77ms + + Test Files  7 passed (7) + Tests  41 passed (41) + Start at  02:28:35 + Duration  950ms (transform 367ms, setup 0ms, collect 1.12s, tests 115ms, environment 1ms, prepare 998ms) + diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/tours.stderr.log b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/tours.stderr.log new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/tours.stdout.log b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/tours.stdout.log new file mode 100644 index 0000000..141564f --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/tours.stdout.log @@ -0,0 +1,5 @@ + +> nodeagent@0.1.0 tours:validate +> node scripts/validate-tours.mjs + +tours validate: PASS 3 tours, 36 steps, 11 START_HERE citations — every anchor still lives on the line that cites it diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/typecheck.stderr.log b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/typecheck.stderr.log new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/typecheck.stdout.log b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/typecheck.stdout.log new file mode 100644 index 0000000..152bef3 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-nodeagent-independent-review/typecheck.stdout.log @@ -0,0 +1,4 @@ + +> nodeagent@0.1.0 typecheck +> tsc --noEmit + diff --git a/evidence/current-consumer-20260905/judge/E6e-write-nodeagent-final-judge.py b/evidence/current-consumer-20260905/judge/E6e-write-nodeagent-final-judge.py new file mode 100644 index 0000000..73af418 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e-write-nodeagent-final-judge.py @@ -0,0 +1,117 @@ +from pathlib import Path +import datetime, hashlib, json, re + +P = Path(__file__).resolve().parent +O = P / 'E6e-nodeagent-independent-review' +E = P / 'E6e-nodeagent-current-consumer' +load = lambda p: json.loads(p.read_text(encoding='utf-8-sig')) +sha = lambda b: hashlib.sha256(b).hexdigest() +receipt = load(P / 'E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.json') +before, after = [load(O / ('custody-' + phase + '.json')) for phase in ['before', 'after']] +main = load(O / 'browser-01/report.json') +late = load(O / 'late-stop-01/report.json') +captures = load(O / 'capture-binding-check.json') +checks = load(O / 'checks.json') +assert before['state'] == after['state'] +assert len(after['futureFilteredBlobMismatches']) == 60 +assert all(row['path'].startswith('evidence/current-consumer-20260905/') for row in after['futureFilteredBlobMismatches']) +assert main['passed'] and len(main['checks']) == 105 and len(main['captures']) == 28 +assert late['passed'] and len(late['checks']) == 25 and len(late['captures']) == 6 +assert all(item['passed'] for report in [main, late] for item in report['checks']) +assert not captures['failures'] and sum(row['captures'] for row in captures['reports']) == 110 +assert all(row['exitCode'] == 0 for row in checks) +test_text = re.sub(r'\x1b\[[0-?]*[ -/]*[@-~]', '', (O / 'tests.stdout.log').read_text(encoding='utf-8-sig')) +assert '41 passed (41)' in test_text +for cell in main['cells']: + assert len(cell['attempts']) == 3 and len({item['id'] for item in cell['attempts']}) == 3 + assert len({item['parentId'] for item in cell['attempts']}) == 1 + assert not cell['failedRequests'] + assert len(cell['errors']) == 2 and all(error == 'PROOF FIXTURE: second tool failed after the first actual result.' for error in cell['errors']) + assert all(item['type'] == 'warning' and 'GPU stall due to ReadPixels' in item['text'] for item in cell['console']) +viewed = [ + (E / 'evidence/nodeagent-d3-source-before/source-error-390/change-boundary.png', 'Actual source before: labelled 3px composer/current response boundary; no failure explanation or Retry.'), + (E / 'evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.png', 'Actual generated before: labelled 3px composer/current response; the running response has no Stop control.'), + (E / 'd3-final-browser-03/source-error-text-200-390.png', 'Worker after: error explanation and focused Retry fully visible; known enlarged header overflow persists.'), + (E / 'd3-final-browser-03/generated-error-text-200-390.png', 'Worker after: failed tool, error and focused Retry visible at enlarged text; recovery stays inside viewport.'), + (O / 'browser-01/source-stopped-390.png', 'Independent ordinary Stop: stopped card, truthful response-only notice, Retry and composer focus visible.'), + (O / 'browser-01/source-error-text-200-390.png', 'Independent enlarged source: failure and visible keyboard focus; top header still clips, graph text remains outside this repair.'), + (O / 'browser-01/generated-error-text-200-390.png', 'Independent enlarged installed app: failure and focused Retry paint unobstructed; no horizontal overflow in changed controls.'), + (O / 'browser-01/source-recovered-1440.png', 'Independent desktop recovery: completed source cards persist, failure notice clears; graph labels remain crowded/clipped.'), + (O / 'browser-01/generated-error-again-1440.png', 'Independent desktop installed app: prior memo and current completed first tool remain; second tool explicitly failed and Retry is visible.'), + (O / 'late-stop-01/generated-stopped-390.png', 'Independent late Stop in installed app: full first result stays visible; second tool is stopped, not working or completed.'), + (O / 'late-stop-01/source-stopped-390.png', 'Independent late Stop in source: first completed context result retained, second tool stopped, composer focus visible.') +] +visual = [{'path': str(path.relative_to(P)).replace('\\', '/'), 'sha256': sha(path.read_bytes()), 'observation': note} for path, note in viewed] +finding = { + 'priority': 'P1', 'kind': 'publication-custody', 'status': 'OPEN', + 'title': 'Git normalization changes 60 hash-bound evidence files when staged', + 'cause': 'The packet has no local attributes and inherits root * text=auto eol=lf. Its manifest and 59 copied CRLF text artifacts will be converted to LF.', + 'examples': after['futureFilteredBlobMismatches'][:3], + 'impact': 'A normal commit would contain different bytes from the accepted manifest and raw receipts even though the working-copy hash checks pass.', + 'smallestCorrection': 'Add a packet-local .gitattributes protecting exact raw bytes, preserve all historical artifact bytes, include the new metadata file in a refrozen manifest/receipt and verify future filtered blobs. Do not normalize historical originals or change root policy.', + 'closure': 'A bounded metadata/filtered-blob recheck is sufficient if all implementation and consumer bindings remain unchanged. No UI or compiler matrix rerun is needed for this correction.' +} +artifacts = {str(path.relative_to(P)).replace('\\', '/'): {'sha256': sha(path.read_bytes()), 'bytes': path.stat().st_size} for path in sorted(O.rglob('*')) if path.is_file()} +for name in ['E6e-nodeagent-independent-custody.py', 'E6e-nodeagent-independent-recovery.mjs', 'E6e-nodeagent-independent-late-stop.mjs', 'E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.md', 'E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.json', Path(__file__).name]: + path = P / name + artifacts[name] = {'sha256': sha(path.read_bytes()), 'bytes': path.stat().st_size} +report = { + 'schemaVersion': 'portfolio.nodeagent-independent-judge/v1', 'at': datetime.datetime.now(datetime.timezone.utc).isoformat(), + 'verdict': 'APPROVED_SCOPED_SOURCE_AND_INSTALLED_BEHAVIOR_PUBLICATION_BLOCKED', + 'request': 'Make each repository usable for developer/user handoff, including visual/responsive/interaction proof through planner, worker and independent judge.', + 'reviewerContext': 'Reused nonauthor implementation reviewer because all four team slots were occupied. This reviewer did not author NodeAgent product files or its worker plan. The independent replay adapts the existing scenario with a four-cell scope, repeated native keyboard activation and captured console/network errors; late Stop is a separate added case. No independent authorship of the original scenario is claimed.', + 'candidate': {'repo': receipt['sourceRoot'], 'head': receipt['head'], 'branch': receipt['branch'], 'receiptSha256': sha((P / 'E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.json').read_bytes()), 'authoredPaths': receipt['authoredPaths'], 'authoredDigest': receipt['authoredDigest'], 'sourceProofBindings': 234, 'sourceProofDigest': receipt['sourceProofDigest'], 'portableManifestSha256': receipt['portableManifestSha256'], 'stateBeforeAfter': after['state']}, + 'sourceAssessment': { + 'scope': 'Six existing UI owners, one compatible template lock, two browser scenarios, two onboarding/tour corrections and HANDOFF; 12 authored paths total. No adapter, graph, provider, backend, dependency range or historical promotion edit.', + 'causalChain': ['Unlocked normal template installation selected an incompatible assistant-ui cohort; earlier exact unchanged generated UI completed when resolved against the canonical compatible cohort. The new template lock now installs that cohort normally.', 'The existing assistant-ui runtime already supports cancel, incomplete/error status and reload; the UI did not present those states. Native Cancel/Reload and the actual tool-part status now own response recovery.', 'The message-ID ref takes a synchronous claim before the native Reload callback, preventing rapid duplicate activation before isRunning propagates. The installed native primitive honors prevented events and disables while running.', 'Each observed failed/retried response receives a new actual SDK response ID and retains the same user-parent ID; no permanent retry lock occurs on the second failure.', 'The source focus-visible-only scroll reveals the existing recovery region above its sticky composer without moving a pointer target. The generated min-width fixes remove inherited intrinsic-width overflow at the actual grid/flex owners.'], + 'implementationFindings': [], + 'dependencyVersionsObservedBothLocks': {'@assistant-ui/react': '0.14.14', '@assistant-ui/core': '0.2.10', '@assistant-ui/store': '0.2.13', '@assistant-ui/tap': '0.5.14', 'react': '19.2.7', 'react-dom': '19.2.7'} + }, + 'independentProof': { + 'browser': main['browser'], 'node': main['node'], 'normalMotion': True, + 'recovery': {'checks': 105, 'captures': 28, 'cells': [{'surface': c['kind'], 'width': c['width'], 'height': 844 if c['width'] == 390 else 960, 'stopInput': c['stopInput'], 'stopLatencyMs': c['stopLatencyMs'], 'attempts': c['attempts'], 'accumulation': c.get('accumulation')} for c in main['cells']]}, + 'lateStop': {'checks': 25, 'captures': 6, 'width': 390, 'surfaces': ['generated', 'source'], 'scenario': 'Complete one earlier response, then wait for the next response first tool to finish and second tool to run. Native Stop retains current completed tool/earlier response/graph snapshot and explicit Retry recovers.'}, + 'nativeDuplicateActivation': 'Two native Enter activations per Retry in both 390 cells, and pointer double-click in both 1440 cells. The first keyboard activation legitimately moves focus to the empty composer; the second key goes to that native focused target. Exactly three attempts across the two injected failures and recovery.', + 'enlargement': 'Original computed font sizes sampled before mutation and doubled only in browser memory; both changed recovery/composer regions have zero internal overflow and visible focus/error hit-tests. Generated document overflow 0, source document overflow 21 retained.', + 'retainedEarlierOutput': 'Earlier response text and source graph snapshots checked after ordinary Stop and recovery; late Stop separately checks current completed tool data and status.', + 'unexpectedPageErrors': 0, 'intentionalPageErrors': 8, 'failedRequests': 0, 'consoleWarnings': 'Four source-390 WebGL ReadPixels GPU-stall warnings retained. No browser console errors. Dev server also reported five inherited vendor sourcemap missing-source warnings in the tool transcript.', + 'freshChecks': checks, 'existingTestsPassed': 41, 'typecheckPassed': True, 'tours': '3 tours /36 steps /11 citations passed', + 'captureBindings': 'All 110 worker-final and independent PNG hashes, exact dimensions, JSON states and before/after HTML pairs verified. This is custody verification; only the separately listed 11 PNGs were visually inspected.' + }, + 'custody': {'sourceAndIndexRefsPreserved': True, 'authoredBindings': 12, 'sourceBindings': 234, 'portableArtifactsExcludingManifest': 938, 'exactRawCopies': 937, 'authoredPortableIndex': 1, 'portableBytesExcludingManifest': 21279473, 'sourceTarInstalled': after['sourceTarInstalled'], 'retainedConsumers': 5, 'currentGeneratedCoreFilesEqualTemplate': 9, 'failedHistoricalEvidencePreserved': True, 'emittedOrSourceFilesEditedByJudge': 0, 'providerCalls': 0, 'deployment': False, 'grade': None}, + 'visualObservations': visual, + 'publicationFindings': [finding], + 'limits': ['This accepts the bounded deterministic local demo and response-recovery slice, not the complete product. All full visual, responsive, accessibility and performance grades remain null.', 'The source enlarged-text header still overflows by 21 pixels, and source graph labels are visibly crowded/clipped. Those untouched visual owners remain open.', 'The injected adapter faults are labelled browser-memory fixtures after a real partial frame. They are not actual provider outages. Ordinary Stop and late Stop used the unheld adapter.', 'Stop prevents further response display updates; it cannot reverse already-computed results, graph facts, durable work or external actions. The local duplicate guard is not external idempotency.', 'Both browser conversations reset on reload. Durable/SQLite reopen evidence is a separate library demonstration and was not reclassified as browser persistence.', 'Source full audit has nine development advisories including one critical, generated full audit has four (three high/one low). Production-only zero is a narrower recorded result; no fresh audit or dependency-security clearance is claimed here.', 'No React render-error boundary, New Thread, provider/Convex/host-hook activation, external idempotency, production longevity or deployment certification.', 'No new pack/install/build was performed by the judge. Exact archive/installed/source comparison and actual installed browser replay bind the prior normal package/install/build receipts. Typecheck, tests and tours were rerun independently.', 'The 938-artifact packet is exact on disk but not yet safe to commit under current attributes. The publication finding must be closed by a metadata-only refreeze.', 'A checker-only UTF-8 mistake initially compared UTF-8 sidecars using the Windows cp1252 default; the false result was retained and the corrected explicit-UTF-8 comparison passes all 110 captures. A raw-log print similarly hit cp1252 output encoding; raw files were unchanged.'], + 'nextAction': 'Preserve this pre-repair judgment, add only the packet-local raw-byte attributes and refreeze metadata, then request a bounded future-filtered-blob/publication recheck. Keep all runtime, installed-consumer and historical raw bytes unchanged.', + 'artifacts': artifacts +} +out = P / 'E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.json' +out.write_text(json.dumps(report, indent=2) + '\n', encoding='utf-8', newline='\n') +md = f'''**Builder — the scoped implementation and installed-consumer behavior pass. Publication remains blocked by one evidence-custody issue.** + +**Re your request:** Make each repository usable for developer/user handoff, including visual, responsive and interaction standards, using planner, worker and independent judge. A developer can now use the normally installed scripted chat, stop a response, see an explicit failure and retry without losing earlier completed work. This review accepts that bounded slice; it does not certify the entire NodeAgent product. + +The actual-source and installed-generated replay passed **105 checks /28 captures** across 390×844 and 1440×960. It used native keyboard/pointer Stop, two labelled adapter failures after a real partial result, two explicit retries, repeated native Enter and pointer double-clicks. Each cell had exactly three distinct SDK response IDs sharing one user-parent ID. No automatic or extra retry occurred; previous cards stayed intact. At 390, each surface also accumulated 12 extra turns to 15 responses/60 cards: 21.123 seconds generated and 29.525 seconds source. Those are bounded observations, not production longevity. + +A separate **25-check /6-capture late-Stop proof** waited for the current response's first actual tool result and second running tool. Stop preserved that completed result, the earlier response and the source graph snapshot. The unfinished tool became stopped and explicit Retry recovered. This closes a case that an earliest-frame Stop alone would miss. No iterator hold was used to certify Stop. + +Fresh **41 tests, typecheck and three tours/36 steps/11 citations passed**. Browser page errors were exactly the two intentional faults per main cell, with no unexpected page errors, browser console errors or failed requests. Four source WebGL ReadPixels warnings remain recorded; the dev server also reported inherited vendor sourcemap warnings. [Independent replay](E6e-nodeagent-independent-review/browser-01/report.json), [late Stop](E6e-nodeagent-independent-review/late-stop-01/report.json), and [fresh checks](E6e-nodeagent-independent-review/checks.json) preserve the raw observations. + +I inspected 11 actual before/after PNGs, including both labelled 3px before boundaries, independent stopped and failed states, source desktop recovery, both enlarged-text focused Retry surfaces, and late Stop. Failure text and Retry are visible and actionable. Pointer target rectangles remain stable. In the doubled-computed-text fixture, both recovery/composer regions have zero internal overflow; generated document overflow is zero. The source header still has **21px overflow**, and its graph labels remain crowded/clipped. This is not OS zoom, screen-reader or complete visual acceptance. All complete UI/accessibility/performance grades remain null. + +The source diff stays within six existing UI owners, the compatible template lock, two scenarios, two onboarding/tour files and HANDOFF: 12 authored paths. Existing assistant-ui Cancel/Reload/status owners perform recovery; a synchronous response-ID claim handles immediate duplicate activation before running state reaches the render. The two retries demonstrably receive fresh IDs, so the second failure remains retryable. No adapter, graph, provider, backend, dependency range or historical promotion changes were introduced. + +Custody passes on disk: authored digest `{receipt['authoredDigest']}`, all 234 source-proof bindings, 938 portable artifacts (937 exact copies plus the authored index), and all five retained consumers stayed unchanged. The exact tarball `{receipt['package']['sha256']}` contains 242 files that match the installed package. Current source differs from those package bytes only in the later HANDOFF metadata; all implementation files remain exact. The generated app's nine core files match the current template. All 110 worker-final/independent PNG hashes, dimensions, JSON sidecars and before/after DOM pairs check correctly. [Custody after review](E6e-nodeagent-independent-review/custody-after.json). + +**P1 publication finding:** The packet inherits root `* text=auto eol=lf` and has no local raw-byte attributes. Git would change **60 files: the manifest and 59 copied CRLF artifacts**. For example, the manifest raw Git blob `dcbd7b1dd0b12fda1db0fb6c10224ceea66b00ec` would become `78a69528eea85b8b25e4921f5d3ee63150b78403`; the normal install receipt is also affected. That would invalidate the recorded hashes in a normal commit. All affected paths are listed in the custody report. + +The smallest correction is packet-local raw-byte attributes, followed by a refrozen manifest/receipt that includes that metadata file and verifies future filtered blobs. Preserve every historical artifact byte and this pre-correction judgment. No application edit or repeated browser matrix is needed if the implementation/consumer bindings remain exact. + +The handoff accurately separates deterministic fixture confidence, reload-reset browser sessions, library-only durable/SQLite evidence, and unavailable provider capabilities. Stop ends display updates and cannot undo completed/external work. Full dependency audits still have nine source and four generated development findings; production-only zero is narrower. No render-error boundary, New Thread, provider/Convex/host/deployment or complete-readiness claim is accepted. + +Reviewer context was reused because all team slots were occupied. I did not author the NodeAgent implementation. The main replay adapts the worker scenario and adds duplicate keyboard observation; late Stop is a separate case. A checker-only Windows encoding mistake was retained, corrected to explicit UTF-8, and all 110 capture bindings then passed. Raw evidence was not rewritten. + +[Machine-readable final judgment](E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.json) binds the complete independent evidence and the one required publication correction. HEAD/index/refs and source bytes were preserved; no commit or push was performed. +''' +(P / 'E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.md').write_text(md, encoding='utf-8', newline='\n') +print(json.dumps({'verdict': report['verdict'], 'sha256': sha(out.read_bytes()), 'artifactBindings': len(artifacts), 'independentChecks': 130, 'independentCaptures': 34, 'publicationFindings': 1}, indent=2)) diff --git a/evidence/current-consumer-20260905/judge/E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.json b/evidence/current-consumer-20260905/judge/E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.json new file mode 100644 index 0000000..74ec8d3 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.json @@ -0,0 +1,981 @@ +{ + "schemaVersion": "portfolio.nodeagent-independent-judge/v1", + "at": "2026-09-05T09:38:44.257890+00:00", + "verdict": "APPROVED_SCOPED_SOURCE_AND_INSTALLED_BEHAVIOR_PUBLICATION_BLOCKED", + "request": "Make each repository usable for developer/user handoff, including visual/responsive/interaction proof through planner, worker and independent judge.", + "reviewerContext": "Reused nonauthor implementation reviewer because all four team slots were occupied. This reviewer did not author NodeAgent product files or its worker plan. The independent replay adapts the existing scenario with a four-cell scope, repeated native keyboard activation and captured console/network errors; late Stop is a separate added case. No independent authorship of the original scenario is claimed.", + "candidate": { + "repo": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "head": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "branch": "codex/nodeagent-current-consumer-20260905", + "receiptSha256": "dc94f74670c577ebf98619e36e60060bb9889341fdb3728b79be1449ea00062e", + "authoredPaths": { + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + "HANDOFF.md": "03513bef1b7e6ef34c285472e7701b959f18352241f3e5fe87ac790020eb50be", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e" + }, + "authoredDigest": "fe828a524641e727499e575836929cfc38130bcf873693a061173c68485b5e10", + "sourceProofBindings": 234, + "sourceProofDigest": "a913d12a999e90e4017dca957b69ad7a6d6a5ea671c2ab562b8ce5b3f46939b9", + "portableManifestSha256": "c3601b7021e3d7d5a1b233b620f6952422b98828de791492de393e4776dc8210", + "stateBeforeAfter": { + "head": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "index": "32423ff3a8a3cd745ac285ce51730b139a2344c14a40a67b43ace4dfbc271a51", + "refs": "66c33b755dd5ab353501b08720e282584bbfc643331375bb49b45e09fdb45007", + "status": "7bc88e40de9c3bf6a846190738ef6e299a80b994252d643a07e718e414064512" + } + }, + "sourceAssessment": { + "scope": "Six existing UI owners, one compatible template lock, two browser scenarios, two onboarding/tour corrections and HANDOFF; 12 authored paths total. No adapter, graph, provider, backend, dependency range or historical promotion edit.", + "causalChain": [ + "Unlocked normal template installation selected an incompatible assistant-ui cohort; earlier exact unchanged generated UI completed when resolved against the canonical compatible cohort. The new template lock now installs that cohort normally.", + "The existing assistant-ui runtime already supports cancel, incomplete/error status and reload; the UI did not present those states. Native Cancel/Reload and the actual tool-part status now own response recovery.", + "The message-ID ref takes a synchronous claim before the native Reload callback, preventing rapid duplicate activation before isRunning propagates. The installed native primitive honors prevented events and disables while running.", + "Each observed failed/retried response receives a new actual SDK response ID and retains the same user-parent ID; no permanent retry lock occurs on the second failure.", + "The source focus-visible-only scroll reveals the existing recovery region above its sticky composer without moving a pointer target. The generated min-width fixes remove inherited intrinsic-width overflow at the actual grid/flex owners." + ], + "implementationFindings": [], + "dependencyVersionsObservedBothLocks": { + "@assistant-ui/react": "0.14.14", + "@assistant-ui/core": "0.2.10", + "@assistant-ui/store": "0.2.13", + "@assistant-ui/tap": "0.5.14", + "react": "19.2.7", + "react-dom": "19.2.7" + } + }, + "independentProof": { + "browser": "151.0.7922.34", + "node": "v22.22.2", + "normalMotion": true, + "recovery": { + "checks": 105, + "captures": 28, + "cells": [ + { + "surface": "generated", + "width": 390, + "height": 844, + "stopInput": "keyboard", + "stopLatencyMs": 320, + "attempts": [ + { + "id": "N5YdQQm", + "parentId": "z56WHCW", + "injectedFailure": true + }, + { + "id": "WfwBadG", + "parentId": "z56WHCW", + "injectedFailure": true + }, + { + "id": "VMn2btR", + "parentId": "z56WHCW", + "injectedFailure": false + } + ], + "accumulation": { + "additionalTurns": 12, + "totalResponses": 15, + "toolCards": 60, + "elapsedMs": 21123 + } + }, + { + "surface": "generated", + "width": 1440, + "height": 960, + "stopInput": "pointer", + "stopLatencyMs": 252, + "attempts": [ + { + "id": "uloluNu", + "parentId": "K0u0KWd", + "injectedFailure": true + }, + { + "id": "DgU4g24", + "parentId": "K0u0KWd", + "injectedFailure": true + }, + { + "id": "kaPHhre", + "parentId": "K0u0KWd", + "injectedFailure": false + } + ], + "accumulation": null + }, + { + "surface": "source", + "width": 390, + "height": 844, + "stopInput": "keyboard", + "stopLatencyMs": 825, + "attempts": [ + { + "id": "41m1rCu", + "parentId": "SXgKNe1", + "injectedFailure": true + }, + { + "id": "jNbZXFk", + "parentId": "SXgKNe1", + "injectedFailure": true + }, + { + "id": "HJCvzSI", + "parentId": "SXgKNe1", + "injectedFailure": false + } + ], + "accumulation": { + "additionalTurns": 12, + "totalResponses": 15, + "toolCards": 60, + "elapsedMs": 29525 + } + }, + { + "surface": "source", + "width": 1440, + "height": 960, + "stopInput": "pointer", + "stopLatencyMs": 355, + "attempts": [ + { + "id": "pXjOfpd", + "parentId": "VpRVGil", + "injectedFailure": true + }, + { + "id": "bQbDHDQ", + "parentId": "VpRVGil", + "injectedFailure": true + }, + { + "id": "yepnJAz", + "parentId": "VpRVGil", + "injectedFailure": false + } + ], + "accumulation": null + } + ] + }, + "lateStop": { + "checks": 25, + "captures": 6, + "width": 390, + "surfaces": [ + "generated", + "source" + ], + "scenario": "Complete one earlier response, then wait for the next response first tool to finish and second tool to run. Native Stop retains current completed tool/earlier response/graph snapshot and explicit Retry recovers." + }, + "nativeDuplicateActivation": "Two native Enter activations per Retry in both 390 cells, and pointer double-click in both 1440 cells. The first keyboard activation legitimately moves focus to the empty composer; the second key goes to that native focused target. Exactly three attempts across the two injected failures and recovery.", + "enlargement": "Original computed font sizes sampled before mutation and doubled only in browser memory; both changed recovery/composer regions have zero internal overflow and visible focus/error hit-tests. Generated document overflow 0, source document overflow 21 retained.", + "retainedEarlierOutput": "Earlier response text and source graph snapshots checked after ordinary Stop and recovery; late Stop separately checks current completed tool data and status.", + "unexpectedPageErrors": 0, + "intentionalPageErrors": 8, + "failedRequests": 0, + "consoleWarnings": "Four source-390 WebGL ReadPixels GPU-stall warnings retained. No browser console errors. Dev server also reported five inherited vendor sourcemap missing-source warnings in the tool transcript.", + "freshChecks": [ + { + "name": "tests", + "command": [ + "npm.cmd", + "test" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exitCode": 0, + "seconds": 1.890999999945052 + }, + { + "name": "typecheck", + "command": [ + "npm.cmd", + "run", + "typecheck" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exitCode": 0, + "seconds": 2.26500000001397 + }, + { + "name": "tours", + "command": [ + "npm.cmd", + "run", + "tours:validate" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exitCode": 0, + "seconds": 0.4690000000409782 + } + ], + "existingTestsPassed": 41, + "typecheckPassed": true, + "tours": "3 tours /36 steps /11 citations passed", + "captureBindings": "All 110 worker-final and independent PNG hashes, exact dimensions, JSON states and before/after HTML pairs verified. This is custody verification; only the separately listed 11 PNGs were visually inspected." + }, + "custody": { + "sourceAndIndexRefsPreserved": true, + "authoredBindings": 12, + "sourceBindings": 234, + "portableArtifactsExcludingManifest": 938, + "exactRawCopies": 937, + "authoredPortableIndex": 1, + "portableBytesExcludingManifest": 21279473, + "sourceTarInstalled": { + "files": 242, + "tarSha256": "1a6e980a684f433fcdc80021eb5569fa5c4b94e09a71e8a2adbe5d821e654c69", + "installedRoot": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery installed host 03\\node_modules\\nodeagent", + "currentSourceDifferences": [ + "HANDOFF.md" + ], + "scope": "HANDOFF only changed after package capture; all 242 tar/installed bytes exact, 241 current source bytes exact." + }, + "retainedConsumers": 5, + "currentGeneratedCoreFilesEqualTemplate": 9, + "failedHistoricalEvidencePreserved": true, + "emittedOrSourceFilesEditedByJudge": 0, + "providerCalls": 0, + "deployment": false, + "grade": null + }, + "visualObservations": [ + { + "path": "E6e-nodeagent-current-consumer/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.png", + "sha256": "02217ecb45988088b5c8a329d439cf1edf36daff0c94485eaad75edbd58406ec", + "observation": "Actual source before: labelled 3px composer/current response boundary; no failure explanation or Retry." + }, + { + "path": "E6e-nodeagent-current-consumer/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.png", + "sha256": "3d2adb7dc5324fea59764955b7b5b880b36924fff4de9c20cc34ce70a54ce7e8", + "observation": "Actual generated before: labelled 3px composer/current response; the running response has no Stop control." + }, + { + "path": "E6e-nodeagent-current-consumer/d3-final-browser-03/source-error-text-200-390.png", + "sha256": "2d2c6213cf705762e21755eabebddcf2d20c07c01a2e505125107c95c0e77f4b", + "observation": "Worker after: error explanation and focused Retry fully visible; known enlarged header overflow persists." + }, + { + "path": "E6e-nodeagent-current-consumer/d3-final-browser-03/generated-error-text-200-390.png", + "sha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "observation": "Worker after: failed tool, error and focused Retry visible at enlarged text; recovery stays inside viewport." + }, + { + "path": "E6e-nodeagent-independent-review/browser-01/source-stopped-390.png", + "sha256": "13807fdd6b2fa5cbe04e46312872828cc78170fea83e1487ca4c9240544b486e", + "observation": "Independent ordinary Stop: stopped card, truthful response-only notice, Retry and composer focus visible." + }, + { + "path": "E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.png", + "sha256": "87ca877089da73e5ff062bff0cfce8b1d68ed1cb3dc929449977781059c9555f", + "observation": "Independent enlarged source: failure and visible keyboard focus; top header still clips, graph text remains outside this repair." + }, + { + "path": "E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.png", + "sha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "observation": "Independent enlarged installed app: failure and focused Retry paint unobstructed; no horizontal overflow in changed controls." + }, + { + "path": "E6e-nodeagent-independent-review/browser-01/source-recovered-1440.png", + "sha256": "7eb2085accc67019da7b5693afe4907c008454289880ffb8ecac250834aad101", + "observation": "Independent desktop recovery: completed source cards persist, failure notice clears; graph labels remain crowded/clipped." + }, + { + "path": "E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.png", + "sha256": "07765375ec1a2f2786cd335ef09b11e6daf43b5625483e646f3c722a6f5b291b", + "observation": "Independent desktop installed app: prior memo and current completed first tool remain; second tool explicitly failed and Retry is visible." + }, + { + "path": "E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.png", + "sha256": "17ff523e31e3db48d9ecc4c639932dcf2454a775015c7eee58f678204a2aa7cc", + "observation": "Independent late Stop in installed app: full first result stays visible; second tool is stopped, not working or completed." + }, + { + "path": "E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.png", + "sha256": "575b71512058fe38969984755ebad70464c545902118f5d0f2dcbfbe6865c35c", + "observation": "Independent late Stop in source: first completed context result retained, second tool stopped, composer focus visible." + } + ], + "publicationFindings": [ + { + "priority": "P1", + "kind": "publication-custody", + "status": "OPEN", + "title": "Git normalization changes 60 hash-bound evidence files when staged", + "cause": "The packet has no local attributes and inherits root * text=auto eol=lf. Its manifest and 59 copied CRLF text artifacts will be converted to LF.", + "examples": [ + { + "path": "evidence/current-consumer-20260905/manifest.json", + "rawBlob": "dcbd7b1dd0b12fda1db0fb6c10224ceea66b00ec", + "futureFilteredBlob": "78a69528eea85b8b25e4921f5d3ee63150b78403", + "crlfCount": 5874 + }, + { + "path": "evidence/current-consumer-20260905/operator/D3_SOURCE_BEFORE_BINDINGS.json", + "rawBlob": "05ba5ad748293621c09ebeeb08ea1b665398bd85", + "futureFilteredBlob": "db57d88c1ab923e0d624eed89ceb8a6add0d8b2c", + "crlfCount": 32 + }, + { + "path": "evidence/current-consumer-20260905/operator/browser-before-01-command.json", + "rawBlob": "418ba66374b50f25a3d8bb4efcd838d2ac05f5b9", + "futureFilteredBlob": "d10d31880da07341f443e320e69d8616fb54f1b3", + "crlfCount": 10 + } + ], + "impact": "A normal commit would contain different bytes from the accepted manifest and raw receipts even though the working-copy hash checks pass.", + "smallestCorrection": "Add a packet-local .gitattributes protecting exact raw bytes, preserve all historical artifact bytes, include the new metadata file in a refrozen manifest/receipt and verify future filtered blobs. Do not normalize historical originals or change root policy.", + "closure": "A bounded metadata/filtered-blob recheck is sufficient if all implementation and consumer bindings remain unchanged. No UI or compiler matrix rerun is needed for this correction." + } + ], + "limits": [ + "This accepts the bounded deterministic local demo and response-recovery slice, not the complete product. All full visual, responsive, accessibility and performance grades remain null.", + "The source enlarged-text header still overflows by 21 pixels, and source graph labels are visibly crowded/clipped. Those untouched visual owners remain open.", + "The injected adapter faults are labelled browser-memory fixtures after a real partial frame. They are not actual provider outages. Ordinary Stop and late Stop used the unheld adapter.", + "Stop prevents further response display updates; it cannot reverse already-computed results, graph facts, durable work or external actions. The local duplicate guard is not external idempotency.", + "Both browser conversations reset on reload. Durable/SQLite reopen evidence is a separate library demonstration and was not reclassified as browser persistence.", + "Source full audit has nine development advisories including one critical, generated full audit has four (three high/one low). Production-only zero is a narrower recorded result; no fresh audit or dependency-security clearance is claimed here.", + "No React render-error boundary, New Thread, provider/Convex/host-hook activation, external idempotency, production longevity or deployment certification.", + "No new pack/install/build was performed by the judge. Exact archive/installed/source comparison and actual installed browser replay bind the prior normal package/install/build receipts. Typecheck, tests and tours were rerun independently.", + "The 938-artifact packet is exact on disk but not yet safe to commit under current attributes. The publication finding must be closed by a metadata-only refreeze.", + "A checker-only UTF-8 mistake initially compared UTF-8 sidecars using the Windows cp1252 default; the false result was retained and the corrected explicit-UTF-8 comparison passes all 110 captures. A raw-log print similarly hit cp1252 output encoding; raw files were unchanged." + ], + "nextAction": "Preserve this pre-repair judgment, add only the packet-local raw-byte attributes and refreeze metadata, then request a bounded future-filtered-blob/publication recheck. Keep all runtime, installed-consumer and historical raw bytes unchanged.", + "artifacts": { + "E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.before.html": { + "sha256": "fe4aeb6dced29e0f7c207fd97db4fa426b5edb86690fdcbbbd931663d3a0b40e", + "bytes": 54536 + }, + "E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.html": { + "sha256": "fe4aeb6dced29e0f7c207fd97db4fa426b5edb86690fdcbbbd931663d3a0b40e", + "bytes": 54536 + }, + "E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.json": { + "sha256": "6935b87a602d818b983454526a9b2b3e9d5d1c996fbed4318014aab143995adf", + "bytes": 20228 + }, + "E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.png": { + "sha256": "58ba9e90d8ee08e3e4de36315520230539a85f7a6f7aa00c00d551d1faeca633", + "bytes": 31563 + }, + "E6e-nodeagent-independent-review/browser-01/generated-empty-1440.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "E6e-nodeagent-independent-review/browser-01/generated-empty-1440.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "E6e-nodeagent-independent-review/browser-01/generated-empty-1440.json": { + "sha256": "ec64ee186c5090fb5b13eb0536c3d88caa2a51f55cf313b5321ef224d3ba7bf1", + "bytes": 1447 + }, + "E6e-nodeagent-independent-review/browser-01/generated-empty-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "E6e-nodeagent-independent-review/browser-01/generated-empty-390.before.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "E6e-nodeagent-independent-review/browser-01/generated-empty-390.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "E6e-nodeagent-independent-review/browser-01/generated-empty-390.json": { + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "bytes": 1429 + }, + "E6e-nodeagent-independent-review/browser-01/generated-empty-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-1440.before.html": { + "sha256": "97eb5be3664f8fceaa54018d195648f0f750def1da3ef9a69b584273fed0d970", + "bytes": 18235 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-1440.html": { + "sha256": "97eb5be3664f8fceaa54018d195648f0f750def1da3ef9a69b584273fed0d970", + "bytes": 18235 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-1440.json": { + "sha256": "33ce1d3d8501c0c9bdf34e0f37ca1f9a3a2f39d0b5637f20594dff67c69b053f", + "bytes": 4528 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-1440.png": { + "sha256": "0b0b4496efe9ccd09e844a4e75afb7ff74e37dc54ce08f64911ee322ed830d60", + "bytes": 53157 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-390.before.html": { + "sha256": "576c256ce9e420ce073f2e9aa845c6a1e0415713dd856dfd440b9adf5f0abb71", + "bytes": 18235 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-390.html": { + "sha256": "576c256ce9e420ce073f2e9aa845c6a1e0415713dd856dfd440b9adf5f0abb71", + "bytes": 18235 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-390.png": { + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "bytes": 29688 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.before.html": { + "sha256": "0943af035114b3da79f3588c12f2d0a8842de365820d91290a9d43f9c08a4ca2", + "bytes": 18235 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.html": { + "sha256": "0943af035114b3da79f3588c12f2d0a8842de365820d91290a9d43f9c08a4ca2", + "bytes": 18235 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.json": { + "sha256": "51378138438aa879575cff6711662990b1d2dcf1d417c4a9b85ba0a0c3c09421", + "bytes": 4524 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.png": { + "sha256": "07765375ec1a2f2786cd335ef09b11e6daf43b5625483e646f3c722a6f5b291b", + "bytes": 53122 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-again-390.before.html": { + "sha256": "16d39915dbbeb0a7dccd7e53a6311b1746261160d4e169293bab4fa7592660e7", + "bytes": 18235 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-again-390.html": { + "sha256": "16d39915dbbeb0a7dccd7e53a6311b1746261160d4e169293bab4fa7592660e7", + "bytes": 18235 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-again-390.json": { + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "bytes": 4502 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-again-390.png": { + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "bytes": 29700 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.before.html": { + "sha256": "f3eaf9579e9cca0a6ad000c75cc300913f03f911d2a33039b179708c8acf50de", + "bytes": 21083 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.html": { + "sha256": "f3eaf9579e9cca0a6ad000c75cc300913f03f911d2a33039b179708c8acf50de", + "bytes": 21083 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.json": { + "sha256": "f623528e34fb1e7fccd23e840e1c9502f91966ba01d204592b1ecf7ad4a3aca3", + "bytes": 4506 + }, + "E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.png": { + "sha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "bytes": 49228 + }, + "E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.before.html": { + "sha256": "7268f9757d592dd677db46155c57a6edc02d91347cc7c37a5e4e822a258ba31c", + "bytes": 19736 + }, + "E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.html": { + "sha256": "7268f9757d592dd677db46155c57a6edc02d91347cc7c37a5e4e822a258ba31c", + "bytes": 19736 + }, + "E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.json": { + "sha256": "a113dd2bc8fce82da49447e11f2427ae3799c57e868e815d31a3cedc660b770e", + "bytes": 4900 + }, + "E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.png": { + "sha256": "a11ca95732178919c8ec6f957d8c8ce1e30376525fda5a4aace5b1870ac31dd2", + "bytes": 54055 + }, + "E6e-nodeagent-independent-review/browser-01/generated-recovered-390.before.html": { + "sha256": "d03b23e10304018a6c673ef372e6bdd573942a75aa7f73ad83f8f363d337fc1c", + "bytes": 19736 + }, + "E6e-nodeagent-independent-review/browser-01/generated-recovered-390.html": { + "sha256": "d03b23e10304018a6c673ef372e6bdd573942a75aa7f73ad83f8f363d337fc1c", + "bytes": 19736 + }, + "E6e-nodeagent-independent-review/browser-01/generated-recovered-390.json": { + "sha256": "919f9b1861ed7e8b243b04a43d3fb579c36cc962ff43b30fb6f562ee52fd4c5c", + "bytes": 4886 + }, + "E6e-nodeagent-independent-review/browser-01/generated-recovered-390.png": { + "sha256": "33ee4ebc7c01a3f826e4b66b873fa57610fce8cd9120df361172a40c3def033d", + "bytes": 31565 + }, + "E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.before.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.html": { + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "bytes": 12162 + }, + "E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.json": { + "sha256": "ec64ee186c5090fb5b13eb0536c3d88caa2a51f55cf313b5321ef224d3ba7bf1", + "bytes": 1447 + }, + "E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.png": { + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "bytes": 37415 + }, + "E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.before.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.json": { + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "bytes": 1429 + }, + "E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.before.html": { + "sha256": "678c847fdaf8043fc1d94dba88d0501fef8a2196aa176354d9c87b66b0c5724b", + "bytes": 14761 + }, + "E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.html": { + "sha256": "678c847fdaf8043fc1d94dba88d0501fef8a2196aa176354d9c87b66b0c5724b", + "bytes": 14761 + }, + "E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.json": { + "sha256": "a28da15d369adaad05e18e10240035df47bd14c334728dd0214a97b54b8d3b5e", + "bytes": 2967 + }, + "E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.png": { + "sha256": "83264c4288a5f0b7240a757a12571f7f292902ea890b426b9f4b5318dd3a85c7", + "bytes": 47515 + }, + "E6e-nodeagent-independent-review/browser-01/generated-stopped-390.before.html": { + "sha256": "4d58e1525b81bd8ee137720fc0574be59616326108c9cbddfe9014af885ae9a1", + "bytes": 14761 + }, + "E6e-nodeagent-independent-review/browser-01/generated-stopped-390.html": { + "sha256": "4d58e1525b81bd8ee137720fc0574be59616326108c9cbddfe9014af885ae9a1", + "bytes": 14761 + }, + "E6e-nodeagent-independent-review/browser-01/generated-stopped-390.json": { + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "bytes": 2958 + }, + "E6e-nodeagent-independent-review/browser-01/generated-stopped-390.png": { + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "bytes": 31695 + }, + "E6e-nodeagent-independent-review/browser-01/report.json": { + "sha256": "f52dbcec03ade588cf9c315a5ca94af7866b9426af39670afea0e3021889a36d", + "bytes": 275173 + }, + "E6e-nodeagent-independent-review/browser-01/source-accumulated-390.before.html": { + "sha256": "d69aba9eff92a8b73e01239674f2b0dfe1dd116ed8ab238ade575e8a6d539164", + "bytes": 86122 + }, + "E6e-nodeagent-independent-review/browser-01/source-accumulated-390.html": { + "sha256": "d69aba9eff92a8b73e01239674f2b0dfe1dd116ed8ab238ade575e8a6d539164", + "bytes": 86122 + }, + "E6e-nodeagent-independent-review/browser-01/source-accumulated-390.json": { + "sha256": "8977d05241f0529107d785c5d2536e2896258bd583088176086cff623edc0365", + "bytes": 28403 + }, + "E6e-nodeagent-independent-review/browser-01/source-accumulated-390.png": { + "sha256": "e58ba2d0b8b367e1dc324bd007529c624f97d26804cbc9e6cd9788c543352e6f", + "bytes": 62645 + }, + "E6e-nodeagent-independent-review/browser-01/source-empty-1440.before.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "E6e-nodeagent-independent-review/browser-01/source-empty-1440.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "E6e-nodeagent-independent-review/browser-01/source-empty-1440.json": { + "sha256": "44f9802ac671da13c467ad5fd9e3283586cd10703eaa3cc653202c61ffe74a1f", + "bytes": 1715 + }, + "E6e-nodeagent-independent-review/browser-01/source-empty-1440.png": { + "sha256": "a6c2b56f63f22462a80c912197c44667a82ed86b39441d288576277765e809d8", + "bytes": 84780 + }, + "E6e-nodeagent-independent-review/browser-01/source-empty-390.before.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "E6e-nodeagent-independent-review/browser-01/source-empty-390.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "E6e-nodeagent-independent-review/browser-01/source-empty-390.json": { + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "bytes": 1702 + }, + "E6e-nodeagent-independent-review/browser-01/source-empty-390.png": { + "sha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "bytes": 58620 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-1440.before.html": { + "sha256": "b6e11b80b60f53274bb86052372fd2f0fe4f8cbc957b0b30b977ffdbb75bb0a8", + "bytes": 31169 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-1440.html": { + "sha256": "b6e11b80b60f53274bb86052372fd2f0fe4f8cbc957b0b30b977ffdbb75bb0a8", + "bytes": 31169 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-1440.json": { + "sha256": "5ee19e2c30ca7a72425d05c7933872c423762cb05903081c441f9b5a296b7cd7", + "bytes": 5922 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-1440.png": { + "sha256": "3cb9414cd86a76b35ca1908bd64ac61013bbf4557aab662dfe7faa57426a79a2", + "bytes": 143609 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-390.before.html": { + "sha256": "97c5927b2a608fe94c7b8b034b434c4366d1150ffc409a06770777cfa6485d42", + "bytes": 31169 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-390.html": { + "sha256": "97c5927b2a608fe94c7b8b034b434c4366d1150ffc409a06770777cfa6485d42", + "bytes": 31169 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-390.json": { + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "bytes": 5899 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-390.png": { + "sha256": "5a3f4eff6c72d24b380e02db272ed7e151f21a5f4abc16034641e5d16dc05e6c", + "bytes": 58786 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-again-1440.before.html": { + "sha256": "606a414dc4d3b4d3bba931f08a3dd819b7709f9cff42d57818ca23f8d36622d1", + "bytes": 31169 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-again-1440.html": { + "sha256": "606a414dc4d3b4d3bba931f08a3dd819b7709f9cff42d57818ca23f8d36622d1", + "bytes": 31169 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-again-1440.json": { + "sha256": "ff0a36f9e62a3e0e18996d3645809fdbd0b7d38dc8b7352c737f930779c43375", + "bytes": 5918 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-again-1440.png": { + "sha256": "a53b50f14bb3384a630ae6119994336a55949d1432011fd1b81b608775218e22", + "bytes": 143606 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-again-390.before.html": { + "sha256": "522050d771ce83de35457216d8520dd39290ea65820b439747d0b6311e6eff94", + "bytes": 31169 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-again-390.html": { + "sha256": "522050d771ce83de35457216d8520dd39290ea65820b439747d0b6311e6eff94", + "bytes": 31169 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-again-390.json": { + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "bytes": 5899 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-again-390.png": { + "sha256": "a3b5e06697c6cfaac7980233f8bd581d2613c4cc1a397c39917428cb0ba52c9d", + "bytes": 58499 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.before.html": { + "sha256": "785858bd4f12e1e8226156839494d89c00ee538d31e9d1a491a7abe43b0a89f6", + "bytes": 34627 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.html": { + "sha256": "785858bd4f12e1e8226156839494d89c00ee538d31e9d1a491a7abe43b0a89f6", + "bytes": 34627 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.json": { + "sha256": "9e7860273aad6cb70d41aa493f23df595335e8b9b7f32cfa74208bca04c4f0ab", + "bytes": 5891 + }, + "E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.png": { + "sha256": "87ca877089da73e5ff062bff0cfce8b1d68ed1cb3dc929449977781059c9555f", + "bytes": 72860 + }, + "E6e-nodeagent-independent-review/browser-01/source-recovered-1440.before.html": { + "sha256": "bebd658130f0d22efc4678119de6f0714d4811e73987625036c584636c4cae29", + "bytes": 33646 + }, + "E6e-nodeagent-independent-review/browser-01/source-recovered-1440.html": { + "sha256": "bebd658130f0d22efc4678119de6f0714d4811e73987625036c584636c4cae29", + "bytes": 33646 + }, + "E6e-nodeagent-independent-review/browser-01/source-recovered-1440.json": { + "sha256": "06b0c8772672c8c540bdf19a9a6998610ec44597c062617bb734e19dea24c7cf", + "bytes": 6723 + }, + "E6e-nodeagent-independent-review/browser-01/source-recovered-1440.png": { + "sha256": "7eb2085accc67019da7b5693afe4907c008454289880ffb8ecac250834aad101", + "bytes": 149936 + }, + "E6e-nodeagent-independent-review/browser-01/source-recovered-390.before.html": { + "sha256": "5de6c8b23c8a0aa8a73d90e313287196a85dadf1b7188444b5021cd51bf4d5d6", + "bytes": 33646 + }, + "E6e-nodeagent-independent-review/browser-01/source-recovered-390.html": { + "sha256": "5de6c8b23c8a0aa8a73d90e313287196a85dadf1b7188444b5021cd51bf4d5d6", + "bytes": 33646 + }, + "E6e-nodeagent-independent-review/browser-01/source-recovered-390.json": { + "sha256": "2f228584dd5b101347fecb1ac11f22ce41b69b7e55636bcd677337c1e5b65aec", + "bytes": 6717 + }, + "E6e-nodeagent-independent-review/browser-01/source-recovered-390.png": { + "sha256": "15f0d2f858fc3afba0b0b9b1767d1f9d60b4ce86dc47b589c16b24b34e58717a", + "bytes": 62871 + }, + "E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.before.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.html": { + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "bytes": 18277 + }, + "E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.json": { + "sha256": "44f9802ac671da13c467ad5fd9e3283586cd10703eaa3cc653202c61ffe74a1f", + "bytes": 1715 + }, + "E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.png": { + "sha256": "af46f2737897dc01909a26e05dfcc40315a367b28e8cd459750e635793859608", + "bytes": 84775 + }, + "E6e-nodeagent-independent-review/browser-01/source-reloaded-390.before.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "E6e-nodeagent-independent-review/browser-01/source-reloaded-390.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "E6e-nodeagent-independent-review/browser-01/source-reloaded-390.json": { + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "bytes": 1702 + }, + "E6e-nodeagent-independent-review/browser-01/source-reloaded-390.png": { + "sha256": "299c36560e79eeaadea88eb6c5d512f2e8e3f38f89bd6e991606fe6f8e2a1d19", + "bytes": 58600 + }, + "E6e-nodeagent-independent-review/browser-01/source-stopped-1440.before.html": { + "sha256": "a1050ac36a0d18e96ea632b7cf6f98cf54e491d9747b2ed394919a24cabeb71a", + "bytes": 25903 + }, + "E6e-nodeagent-independent-review/browser-01/source-stopped-1440.html": { + "sha256": "a1050ac36a0d18e96ea632b7cf6f98cf54e491d9747b2ed394919a24cabeb71a", + "bytes": 25903 + }, + "E6e-nodeagent-independent-review/browser-01/source-stopped-1440.json": { + "sha256": "d5b8ffa3745e3270bbbf6b26325c4cc6ec1c089a8367934ffbe3ae86ea6762ed", + "bytes": 3811 + }, + "E6e-nodeagent-independent-review/browser-01/source-stopped-1440.png": { + "sha256": "832a7ab40c6f832eec9611ce6cfb38e3cd6a22be4e38630fb7e4a5b886aad3ad", + "bytes": 143964 + }, + "E6e-nodeagent-independent-review/browser-01/source-stopped-390.before.html": { + "sha256": "21c12e7d935542c9887a13970b00fb5982e1b6dd9858b5b0b814bb4f5b817023", + "bytes": 25903 + }, + "E6e-nodeagent-independent-review/browser-01/source-stopped-390.html": { + "sha256": "21c12e7d935542c9887a13970b00fb5982e1b6dd9858b5b0b814bb4f5b817023", + "bytes": 25903 + }, + "E6e-nodeagent-independent-review/browser-01/source-stopped-390.json": { + "sha256": "1aff41667b5c71a7a8837fd32990a1da65f759dd33eeb51427d048c26e2372d1", + "bytes": 3790 + }, + "E6e-nodeagent-independent-review/browser-01/source-stopped-390.png": { + "sha256": "13807fdd6b2fa5cbe04e46312872828cc78170fea83e1487ca4c9240544b486e", + "bytes": 61265 + }, + "E6e-nodeagent-independent-review/capture-binding-check-before-explicit-utf8.json": { + "sha256": "125b2a9db37209b2bd5aadee98a71717f5c843889b5ac62d37d18543b56d90bb", + "bytes": 31908 + }, + "E6e-nodeagent-independent-review/capture-binding-check.json": { + "sha256": "cc89c5c059fecb4edc947b556bc7f23459cb4a758e81151a2af9bbc982130993", + "bytes": 1404 + }, + "E6e-nodeagent-independent-review/checks.json": { + "sha256": "cc3c1657c331ec1925c6d04ac46b641be798fd2911d03aa8da8f8fd73c7add2a", + "bytes": 880 + }, + "E6e-nodeagent-independent-review/custody-after.json": { + "sha256": "40c99481b569aaafdf55281247abc97b262e17bff3904ca80bf58428a8928f9d", + "bytes": 312960 + }, + "E6e-nodeagent-independent-review/custody-before.json": { + "sha256": "fefcc29cfa417ad11393156d29bb6c6f80d54c8193887d1ce4acdaf83009a71a", + "bytes": 312961 + }, + "E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.before.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.html": { + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "bytes": 12162 + }, + "E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.json": { + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "bytes": 1429 + }, + "E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.png": { + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "bytes": 28177 + }, + "E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.before.html": { + "sha256": "c135c2278539fb99fb9f10fc1b829093d5289813e79efd5a04085331b8e38f7b", + "bytes": 16836 + }, + "E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.html": { + "sha256": "c135c2278539fb99fb9f10fc1b829093d5289813e79efd5a04085331b8e38f7b", + "bytes": 16836 + }, + "E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.json": { + "sha256": "ece0e3f172b3cf6b66288d0008d2701abf28f3f4f3df93a982364dddec6807d0", + "bytes": 3603 + }, + "E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.png": { + "sha256": "cee4a063e5e46f062e32d18662e263907c383cd7d52a6df9d709dc7324c1dc1c", + "bytes": 31559 + }, + "E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.before.html": { + "sha256": "e95938f6d34afff438518026503b581cfc24c9f437d55b76d935ab132997965a", + "bytes": 15336 + }, + "E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.html": { + "sha256": "e95938f6d34afff438518026503b581cfc24c9f437d55b76d935ab132997965a", + "bytes": 15336 + }, + "E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.json": { + "sha256": "b1599063d0f55edad035cd7316671f89267b0c531db31d979019cbe52432ea63", + "bytes": 3232 + }, + "E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.png": { + "sha256": "17ff523e31e3db48d9ecc4c639932dcf2454a775015c7eee58f678204a2aa7cc", + "bytes": 28653 + }, + "E6e-nodeagent-independent-review/late-stop-01/report.json": { + "sha256": "aad45e4f95205692f1c0e65f335d4c3d0ffbe5d3e2ff53153c239618dc0d9423", + "bytes": 91042 + }, + "E6e-nodeagent-independent-review/late-stop-01/source-empty-390.before.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "E6e-nodeagent-independent-review/late-stop-01/source-empty-390.html": { + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "bytes": 18277 + }, + "E6e-nodeagent-independent-review/late-stop-01/source-empty-390.json": { + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "bytes": 1702 + }, + "E6e-nodeagent-independent-review/late-stop-01/source-empty-390.png": { + "sha256": "75090e3ee26ca99cec746074a56f5980f0c4d90d76399c5138f03af7c34252d1", + "bytes": 58605 + }, + "E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.before.html": { + "sha256": "00a25a4ba736bef90c461264397ed4c596eb74670716f2b36d104bdab588d9da", + "bytes": 29273 + }, + "E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.html": { + "sha256": "00a25a4ba736bef90c461264397ed4c596eb74670716f2b36d104bdab588d9da", + "bytes": 29273 + }, + "E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.json": { + "sha256": "f20eb58c38d4fcc4bc782b32d72c672645b2830a6adbbcfc43c915c1280370ba", + "bytes": 4910 + }, + "E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.png": { + "sha256": "04b9751594d3ef85325d11737b90a0e809eeb52c85e6e605963d786b0bb2db0b", + "bytes": 62763 + }, + "E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.before.html": { + "sha256": "519b8564971dbb30419f7469307c1a3050a6edbba2c2720e7e8fdbddded21ec8", + "bytes": 26797 + }, + "E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.html": { + "sha256": "519b8564971dbb30419f7469307c1a3050a6edbba2c2720e7e8fdbddded21ec8", + "bytes": 26797 + }, + "E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.json": { + "sha256": "6377dd859f28ea3d754b7326efde672bec718fdfa89adc7866cb0bbf90d728e1", + "bytes": 4095 + }, + "E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.png": { + "sha256": "575b71512058fe38969984755ebad70464c545902118f5d0f2dcbfbe6865c35c", + "bytes": 57689 + }, + "E6e-nodeagent-independent-review/tests.stderr.log": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "E6e-nodeagent-independent-review/tests.stdout.log": { + "sha256": "a259fa5b1373f3110364cb8cd6cf278cb336e169835fd172bc1159a237d59887", + "bytes": 1251 + }, + "E6e-nodeagent-independent-review/tours.stderr.log": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "E6e-nodeagent-independent-review/tours.stdout.log": { + "sha256": "8b91eaa9d523522537255352c11c4861181d47d8559a7cfee65ebd89e731476a", + "bytes": 188 + }, + "E6e-nodeagent-independent-review/typecheck.stderr.log": { + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "bytes": 0 + }, + "E6e-nodeagent-independent-review/typecheck.stdout.log": { + "sha256": "1611f2f8467e52eeae9fc30b4f851e7b429aec602524637ddd6f4a9a58d6ae5f", + "bytes": 45 + }, + "E6e-nodeagent-independent-custody.py": { + "sha256": "1d5f82e6df40622a689f3e12419e90a5ce136fed89f23f3a1772646cbec2a9a1", + "bytes": 6741 + }, + "E6e-nodeagent-independent-recovery.mjs": { + "sha256": "c6bf72b44218aedeca60642d03e62c8b9a8affc022b49789af0f1b0b5ba8a711", + "bytes": 18275 + }, + "E6e-nodeagent-independent-late-stop.mjs": { + "sha256": "e13b16055729d07a1772ff8520a8aff8746eb8cc51dbe46844cc374e3694f191", + "bytes": 19050 + }, + "E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.md": { + "sha256": "6b397b20e06cf83500f70bf5bcf0f48ec07729b5c1ebd083fcc7f0b97d7aabb5", + "bytes": 4245 + }, + "E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.json": { + "sha256": "dc94f74670c577ebf98619e36e60060bb9889341fdb3728b79be1449ea00062e", + "bytes": 33354 + }, + "E6e-write-nodeagent-final-judge.py": { + "sha256": "c764f4649d0f3118728dfe3aa51a6eab3fd52832c165278b4fae28532034e7d7", + "bytes": 20132 + } + } +} diff --git a/evidence/current-consumer-20260905/judge/E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.md.txt b/evidence/current-consumer-20260905/judge/E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.md.txt new file mode 100644 index 0000000..d036d6f --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.md.txt @@ -0,0 +1,25 @@ +**Builder — the scoped implementation and installed-consumer behavior pass. Publication remains blocked by one evidence-custody issue.** + +**Re your request:** Make each repository usable for developer/user handoff, including visual, responsive and interaction standards, using planner, worker and independent judge. A developer can now use the normally installed scripted chat, stop a response, see an explicit failure and retry without losing earlier completed work. This review accepts that bounded slice; it does not certify the entire NodeAgent product. + +The actual-source and installed-generated replay passed **105 checks /28 captures** across 390×844 and 1440×960. It used native keyboard/pointer Stop, two labelled adapter failures after a real partial result, two explicit retries, repeated native Enter and pointer double-clicks. Each cell had exactly three distinct SDK response IDs sharing one user-parent ID. No automatic or extra retry occurred; previous cards stayed intact. At 390, each surface also accumulated 12 extra turns to 15 responses/60 cards: 21.123 seconds generated and 29.525 seconds source. Those are bounded observations, not production longevity. + +A separate **25-check /6-capture late-Stop proof** waited for the current response's first actual tool result and second running tool. Stop preserved that completed result, the earlier response and the source graph snapshot. The unfinished tool became stopped and explicit Retry recovered. This closes a case that an earliest-frame Stop alone would miss. No iterator hold was used to certify Stop. + +Fresh **41 tests, typecheck and three tours/36 steps/11 citations passed**. Browser page errors were exactly the two intentional faults per main cell, with no unexpected page errors, browser console errors or failed requests. Four source WebGL ReadPixels warnings remain recorded; the dev server also reported inherited vendor sourcemap warnings. [Independent replay](E6e-nodeagent-independent-review/browser-01/report.json), [late Stop](E6e-nodeagent-independent-review/late-stop-01/report.json), and [fresh checks](E6e-nodeagent-independent-review/checks.json) preserve the raw observations. + +I inspected 11 actual before/after PNGs, including both labelled 3px before boundaries, independent stopped and failed states, source desktop recovery, both enlarged-text focused Retry surfaces, and late Stop. Failure text and Retry are visible and actionable. Pointer target rectangles remain stable. In the doubled-computed-text fixture, both recovery/composer regions have zero internal overflow; generated document overflow is zero. The source header still has **21px overflow**, and its graph labels remain crowded/clipped. This is not OS zoom, screen-reader or complete visual acceptance. All complete UI/accessibility/performance grades remain null. + +The source diff stays within six existing UI owners, the compatible template lock, two scenarios, two onboarding/tour files and HANDOFF: 12 authored paths. Existing assistant-ui Cancel/Reload/status owners perform recovery; a synchronous response-ID claim handles immediate duplicate activation before running state reaches the render. The two retries demonstrably receive fresh IDs, so the second failure remains retryable. No adapter, graph, provider, backend, dependency range or historical promotion changes were introduced. + +Custody passes on disk: authored digest `fe828a524641e727499e575836929cfc38130bcf873693a061173c68485b5e10`, all 234 source-proof bindings, 938 portable artifacts (937 exact copies plus the authored index), and all five retained consumers stayed unchanged. The exact tarball `1a6e980a684f433fcdc80021eb5569fa5c4b94e09a71e8a2adbe5d821e654c69` contains 242 files that match the installed package. Current source differs from those package bytes only in the later HANDOFF metadata; all implementation files remain exact. The generated app's nine core files match the current template. All 110 worker-final/independent PNG hashes, dimensions, JSON sidecars and before/after DOM pairs check correctly. [Custody after review](E6e-nodeagent-independent-review/custody-after.json). + +**P1 publication finding:** The packet inherits root `* text=auto eol=lf` and has no local raw-byte attributes. Git would change **60 files: the manifest and 59 copied CRLF artifacts**. For example, the manifest raw Git blob `dcbd7b1dd0b12fda1db0fb6c10224ceea66b00ec` would become `78a69528eea85b8b25e4921f5d3ee63150b78403`; the normal install receipt is also affected. That would invalidate the recorded hashes in a normal commit. All affected paths are listed in the custody report. + +The smallest correction is packet-local raw-byte attributes, followed by a refrozen manifest/receipt that includes that metadata file and verifies future filtered blobs. Preserve every historical artifact byte and this pre-correction judgment. No application edit or repeated browser matrix is needed if the implementation/consumer bindings remain exact. + +The handoff accurately separates deterministic fixture confidence, reload-reset browser sessions, library-only durable/SQLite evidence, and unavailable provider capabilities. Stop ends display updates and cannot undo completed/external work. Full dependency audits still have nine source and four generated development findings; production-only zero is narrower. No render-error boundary, New Thread, provider/Convex/host/deployment or complete-readiness claim is accepted. + +Reviewer context was reused because all team slots were occupied. I did not author the NodeAgent implementation. The main replay adapts the worker scenario and adds duplicate keyboard observation; late Stop is a separate case. A checker-only Windows encoding mistake was retained, corrected to explicit UTF-8, and all 110 capture bindings then passed. Raw evidence was not rewritten. + +[Machine-readable final judgment](E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.json) binds the complete independent evidence and the one required publication correction. HEAD/index/refs and source bytes were preserved; no commit or push was performed. diff --git a/evidence/current-consumer-20260905/judge/E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.json b/evidence/current-consumer-20260905/judge/E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.json new file mode 100644 index 0000000..b7404ea --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.json @@ -0,0 +1,336 @@ +{ + "status": "IMPLEMENTATION_FROZEN_FOR_INDEPENDENT_REVIEW", + "request": "Recover each repository for developer/user handoff, including real visual/responsive/interaction proof, using planner, single worker and fresh judge.", + "sourceRoot": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "head": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "branch": "codex/nodeagent-current-consumer-20260905", + "frozenAt": "2026-09-05T09:15:59.419651+00:00", + "authoredPaths": { + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + "HANDOFF.md": "03513bef1b7e6ef34c285472e7701b959f18352241f3e5fe87ac790020eb50be", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e" + }, + "authoredPathCount": 12, + "authoredDigest": "fe828a524641e727499e575836929cfc38130bcf873693a061173c68485b5e10", + "digestSerialization": "SHA256 of UTF-8 JSON object with keys sorted in Unicode codepoint order and compact comma/colon separators; values are lowercase SHA256 strings.", + "sourceProofBindings": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "sourceProofDigest": "a913d12a999e90e4017dca957b69ad7a6d6a5ea671c2ab562b8ce5b3f46939b9", + "trackedDiffSha256": "92355f04a1f6abd742cd40db6b849e62dd29a4a185e478c955bd2ae834e14a3e", + "trackedDiffPath": "E6e-nodeagent-current-consumer/d3-final-tracked.txt", + "indexSha256": "32423ff3a8a3cd745ac285ce51730b139a2344c14a40a67b43ace4dfbc271a51", + "indexSerialization": "git ls-files --stage -z", + "stagedPaths": [], + "portableRoot": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905\\evidence\\current-consumer-20260905", + "portableManifestSha256": "c3601b7021e3d7d5a1b233b620f6952422b98828de791492de393e4776dc8210", + "portableArtifactCountExcludingManifest": 938, + "portableBytesExcludingManifest": 21279473, + "reports": [ + { + "path": "E6e-nodeagent-current-consumer/d3-final-browser-03/report.json", + "sha256": "76dd8ca1416225bd0f9abe0b524ced0299a86c975fb839cafa18551d04759f24", + "passed": true, + "checks": 289, + "captures": 76 + }, + { + "path": "E6e-nodeagent-current-consumer/d3-unchanged-baseline-replay/report.json", + "sha256": "67e4a2f55c64c5cacb076009260b6db7ac85b291c4d36a2489d323d2888383fd", + "passed": true, + "checks": 59, + "captures": 25 + }, + { + "path": "E6e-nodeagent-current-consumer/d3-source-matched-after/report.json", + "sha256": "891b91c24dc53ac23392dd45044c9d8d2aff7303fe02e679a31746686d80e5b1", + "passed": true, + "checks": null, + "captures": 12 + }, + { + "path": "E6e-nodeagent-current-consumer/d3-generated-matched-after/report.json", + "sha256": "0ac3c1b23adee9509c4af8d3bd38bda1299767760cfba8ca02d9bb4ff9dc328c", + "passed": true, + "checks": null, + "captures": 4 + } + ], + "package": { + "path": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery package 03\\nodeagent-0.1.0.tgz", + "sha256": "1a6e980a684f433fcdc80021eb5569fa5c4b94e09a71e8a2adbe5d821e654c69", + "sourceTarInstalledFiles": 242, + "postPackageChangedPaths": [ + "HANDOFF.md" + ], + "laterAddedMetadata": "HANDOFF and portable evidence only. Runtime/UI/scenario/lock bytes unchanged. Not a committed or published release certificate." + }, + "normalChecks": [ + "41 existing tests PASS", + "Typecheck and Vite build PASS", + "3 tours /36 steps /11 citations PASS", + "Example guidance smoke PASS", + "Normal packed installed doctor/scaffold --auto install/demo/smoke/build PASS", + "Existing frame/durable/SQLite close/reopen retained PASS, separate from browser", + "Final metadata secret scan and git diff --check PASS" + ], + "custody": [ + "Original Pi HEAD/index/existing refs/registered primary block preserved; only authorized new branch/worktree added.", + "Five retained consumers compare their 9 core input files with capture-time hashes.", + "All raw intermediate directories retained; selected decisive artifacts are portable.", + "No staging, commit, push, deployment, provider call or host activation.", + "Ignored dependency/build caches retained; this slice does not authorize worktree retirement." + ], + "limits": [ + "All complete UI/accessibility/performance/visual grades remain null.", + "Source header has 21px overflow at390 with original computed text doubled; recovery/composer fit and remain visibly keyboard reachable.", + "Source graph crowded/clipped labels remain a separate visual assessment.", + "Source full audit:9 development findings including1 critical; generated full audit:4 development findings(3 high/1 low); recorded production-only audits zero.", + "No React render-error boundary or New Thread control. Browser reload resets conversation; durable SQLite proof is separate.", + "Stop ends response display updates; it cannot undo computed, durable, graph or external work. Local duplicate guard is not external idempotency.", + "No provider/Convex/host/deploy/production longevity certification." + ], + "review": "Fresh judge must inspect raw source/diff/artifacts and replay current source before commit/push." +} diff --git a/evidence/current-consumer-20260905/judge/E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.md.txt b/evidence/current-consumer-20260905/judge/E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.md.txt new file mode 100644 index 0000000..d7120c5 --- /dev/null +++ b/evidence/current-consumer-20260905/judge/E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.md.txt @@ -0,0 +1,19 @@ +# NodeAgent current consumer and response recovery receipt + +Builder. **Implementation frozen for independent review.** + +**Re your request:** make each repository usable for developer/user handoff, including visual, responsive and interaction standards through planner, one worker and fresh judge. This slice repairs the real fresh-package dependency failure and the current Stop/error/Retry interface. It preserves the separate Pi draft and earlier consumers. It does not claim complete repository readiness. + +The candidate remains on `codex/nodeagent-current-consumer-20260905`, HEAD `4e525fd0`, with exactly 12 authored paths plus the portable packet, all unstaged. The JSON lists every authored hash, 234 source proof bindings, index serialization and raw tracked diff. Authored digest: `fe828a524641e727499e575836929cfc38130bcf873693a061173c68485b5e10`. Portable manifest SHA-256: `c3601b7021e3d7d5a1b233b620f6952422b98828de791492de393e4776dc8210`. It binds 938 artifacts excluding itself. No commit or push occurred. + +The final response-recovery proof passed 289 checks with 76 captures and 12 cells covering 320/390/768/1024/1440/1920 for source and the normally installed generated app. The unchanged baseline separately passed 59 checks with 25 captures. Supplemental matched fixtures provide 16 captures at 960px height, including source running controls at all six widths and exact original source/generated 390/1440 before fixtures. The main matrix uses 844px mobile height separately. Screenshot-only iterator holds do not certify Stop; ordinary unheld Stop passed in the recovery matrix. + +The actual sequence is prior completed work, ordinary Stop, explicit retry, partial failure, explicit retry, another failure, explicit retry and recovery. Each failed/recovered response has a distinct actual SDK ID and the same user-parent ID; exactly three attempts occurred, with no automatic retry. Immediate double activation starts once; pointer down/up rectangles remain equal. Earlier cards and the source graph snapshot remain unchanged after Stop. At enlarged text, both failure explanation and keyboard-focused Retry paint unobstructed. Twelve additional turns yielded 15 responses/60 cards in 21.182 seconds generated and 29.482 seconds source. This is bounded accumulation, not production longevity. + +The existing 41 tests, typecheck/build, three tours/36 steps/11 citations and example guidance pass. Final secret scan and diff check pass. Normal third package/install/installed doctor/scaffold auto pass; 242 source/tar/installed files compare exactly. Tar SHA-256: `1a6e980a684f433fcdc80021eb5569fa5c4b94e09a71e8a2adbe5d821e654c69`. Final handoff/portable metadata was written afterward, separate from the package implementation identity. Frame/durable/SQLite reopen and lease/fencing proofs retain their earlier raw evidence and are not browser persistence. + +Failures remain inspectable: unlocked dependency mismatch, premature completion probe, Stop focus loss, double Retry starts, ineffective isRunning-only guard, compounded-font fixture, generated intrinsic-width overflow, source sticky-footer occlusion and a supplemental capture-helper parse error. Fixes stay in six existing UI owners plus the compatible template lock; two onboarding files correct moved anchors and now-false no-cancel/no-recovery wording. No adapter, backend, graph, provider, dependency range or historical promotion claim was rewritten. The UTF-8 prose diff was inspected for these intended changes. + +Remaining limits: source-header 21px overflow at 390 with doubled computed text, source graph readability, no React render-error boundary/New Thread, browser reload reset, nine source and four generated development advisories. Recorded production-only audit zero is a narrower claim. Full grades remain null. Original Pi checkout and existing refs/index are intact; ignored caches and custody holds prevent automatic retirement. No deployment, provider request or host activation occurred. + +Start with the candidate HANDOFF.md and evidence/current-consumer-20260905/README.md. Raw commands and failures remain in E6e-nodeagent-current-consumer; the JSON names the exact selected reports and manifest. Fresh independent judgment is the next gate. diff --git a/evidence/current-consumer-20260905/manifest.json b/evidence/current-consumer-20260905/manifest.json new file mode 100644 index 0000000..3ae9059 --- /dev/null +++ b/evidence/current-consumer-20260905/manifest.json @@ -0,0 +1,6860 @@ +{ + "version": "nodeagent-current-consumer-evidence/v1", + "createdAt": "2026-09-05T09:41:44.125596+00:00", + "scope": "Independently accepted source/installed behavior; exact raw-byte publication metadata prepared for bounded review", + "sourceHead": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "sourceBindings": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "sourceBindingScope": "234 tracked non-env and owned scenario/lock bytes at completed recovery proof, before final metadata packaging", + "artifacts": [ + { + "path": ".gitattributes", + "bytes": 59, + "sha256": "3ca6ae5ef304d545afda1bd6c6cf006e5e0da739a41c2bd6bb643b3358cee5dc", + "operatorSource": "Authored publication metadata" + }, + { + "path": "historical/browser-before-03/report.json", + "bytes": 31866, + "sha256": "509f4f14ba05b96ae17fa2b8d23d25ab11c5a66975756d128622dc681ccdcf8c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-03\\report.json" + }, + { + "path": "historical/d3-final-browser-01/failure.html", + "bytes": 21043, + "sha256": "7cee54fd73c476992d29dbd03cd53be84978ffd5ce026fcd0c79df6c92653d5d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01\\failure.html" + }, + { + "path": "historical/d3-final-browser-01/failure.png", + "bytes": 48450, + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01\\failure.png" + }, + { + "path": "historical/d3-final-browser-01/generated-error-text-200-390.png", + "bytes": 48450, + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01\\generated-error-text-200-390.png" + }, + { + "path": "historical/d3-final-browser-01/report.json", + "bytes": 84861, + "sha256": "e36764e37db2649fbef0908e65208b4fbf309a63e949b8b0a5a0cecad796469d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01\\report.json" + }, + { + "path": "historical/d3-final-browser-02/failure.html", + "bytes": 34627, + "sha256": "7bef1ff5cd4ed944b73e92031c37bb3ad285fde2062d33e861faa950dd9fa5cf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02\\failure.html" + }, + { + "path": "historical/d3-final-browser-02/failure.png", + "bytes": 75461, + "sha256": "cb45fbca1d0d5a23a76c726235a0f53f68b1e82b2959528c156fe518b6885dee", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02\\failure.png" + }, + { + "path": "historical/d3-final-browser-02/generated-error-text-200-390.png", + "bytes": 49228, + "sha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02\\generated-error-text-200-390.png" + }, + { + "path": "historical/d3-final-browser-02/report.json", + "bytes": 320226, + "sha256": "ba38b0cc4391635b1aca9b5affd8570951ade9fe72c36ad94ca820d123b73835", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02\\report.json" + }, + { + "path": "historical/d3-final-browser-02/source-error-text-200-390.png", + "bytes": 75482, + "sha256": "193b20dd5900f7101a9707bab577835645a619596a2b5d76489decf915f42bb8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02\\source-error-text-200-390.png" + }, + { + "path": "historical/d3-source-smoke-01/failure.html", + "bytes": 25903, + "sha256": "8b20b95d6b8854a3706d1c600d4f4230aed58a36c670e23b3149ab1d560c040b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01\\failure.html" + }, + { + "path": "historical/d3-source-smoke-01/failure.png", + "bytes": 45131, + "sha256": "619972dd54365a8402662a7f84336792d6eaca4333354336656acea3b30cb56c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01\\failure.png" + }, + { + "path": "historical/d3-source-smoke-01/report.json", + "bytes": 39838, + "sha256": "3e5149702e84d223bc8d005d25bd455a3bb135e189fe9889a862c22a1025fa2f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01\\report.json" + }, + { + "path": "historical/d3-source-smoke-02/failure.html", + "bytes": 33646, + "sha256": "65071a02e617be4861abc4c7ce5e1b2289be1a9dc7ba3735b20c57c70c5f458c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02\\failure.html" + }, + { + "path": "historical/d3-source-smoke-02/failure.png", + "bytes": 47665, + "sha256": "3fe4ba8d90b13c14affaffdf358a1339f898335c1f17ab767d0ff7c2f7e14a93", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02\\failure.png" + }, + { + "path": "historical/d3-source-smoke-02/report.json", + "bytes": 49152, + "sha256": "25790c3eff05cc321bb7db465c0c17b66953e97d6f9d534518e611765985da40", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02\\report.json" + }, + { + "path": "historical/d3-source-smoke-03/failure.html", + "bytes": 33646, + "sha256": "d394a476f68e2ab347209a80f2ff56480030eefefda0f5c1b9c7ec4657ef502a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03\\failure.html" + }, + { + "path": "historical/d3-source-smoke-03/failure.png", + "bytes": 47537, + "sha256": "2e59ebc5923b6a4372d35ce13edd12c09e95acaa1c8a12c356c8a6604d117485", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03\\failure.png" + }, + { + "path": "historical/d3-source-smoke-03/report.json", + "bytes": 49186, + "sha256": "628c9d434f0f04fde80d6c26f518c94f9127c901addfc63d5c2441ebb70799c0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03\\report.json" + }, + { + "path": "historical/d3-source-smoke-04/failure.html", + "bytes": 33646, + "sha256": "fa164c86bc3c7e205e58ef9b6b2c587fd210333d94949435957d028caeea343e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04\\failure.html" + }, + { + "path": "historical/d3-source-smoke-04/failure.png", + "bytes": 47665, + "sha256": "3fe4ba8d90b13c14affaffdf358a1339f898335c1f17ab767d0ff7c2f7e14a93", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04\\failure.png" + }, + { + "path": "historical/d3-source-smoke-04/report.json", + "bytes": 49186, + "sha256": "07523b9fc8936cf10b2b9886ee103d0092ae8962c6eec27b4e54233a316c1e70", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04\\report.json" + }, + { + "path": "historical/d3-source-smoke-05/failure.html", + "bytes": 105248, + "sha256": "aad2ce2325693e765154b80d05bbd655a769549f5d97f46e86ab9a7faf75f3ec", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05\\failure.html" + }, + { + "path": "historical/d3-source-smoke-05/failure.png", + "bytes": 77272, + "sha256": "5a405fbcc7753997cbe4a830b64d4d7d6b032295891d39b781c9fe0d26d33586", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05\\failure.png" + }, + { + "path": "historical/d3-source-smoke-05/report.json", + "bytes": 152063, + "sha256": "5d3f540caf94cb8b1e8fcc824f24008a00a688f394280c044d9558e68181793f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05\\report.json" + }, + { + "path": "historical/d3-source-smoke-05/source-text-200-390.png", + "bytes": 77313, + "sha256": "b9f14a4ecc6115041985c2074697fc0220d0f135a30a93e9b609c049d232d796", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05\\source-text-200-390.png" + }, + { + "path": "historical/d3-source-smoke-06/report.json", + "bytes": 359511, + "sha256": "fc18836185b6b326b94fe7a13e209c835fbac3de843638c669e46ded045cca9c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-06\\report.json" + }, + { + "path": "historical/d3-source-smoke-06/source-error-text-200-390.png", + "bytes": 71011, + "sha256": "56b259eda21b5dfaf35dc3cf4fa1805de6647b760a8a572b778fd63471888c5a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-06\\source-error-text-200-390.png" + }, + { + "path": "historical/first-submit-dependency-comparison-01/report.json", + "bytes": 64220, + "sha256": "99693bc6140469572d3821b30642b6d3a395c45f12a96a0a8ebd8dd0044aaf1c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-dependency-comparison-01\\report.json" + }, + { + "path": "historical/first-submit-diagnosis-01/report.json", + "bytes": 85904, + "sha256": "27741aacc74b04bb19380e0c6354f20d8db768414689edcee557674d7567cfa8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-diagnosis-01\\report.json" + }, + { + "path": "historical/locked-browser-01/failure.html", + "bytes": 13141, + "sha256": "e412f7230502f3d6f735a0272e0145032d6e49b6d3bbdbc4517213aa28d724c7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01\\failure.html" + }, + { + "path": "historical/locked-browser-01/failure.png", + "bytes": 33108, + "sha256": "5dce8e4f033659ce22a46d99519690d746b5470cbc4dee32fa11557eded7ab93", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01\\failure.png" + }, + { + "path": "historical/locked-browser-01/report.json", + "bytes": 93753, + "sha256": "c1c9e0f1a4b1b08b3e25d672d76bf3f0954dab40ddcdbf4e8fa6028ef7a2eda3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01\\report.json" + }, + { + "path": "historical/publication-before-raw-attributes/HANDOFF.md.txt", + "bytes": 5459, + "sha256": "03513bef1b7e6ef34c285472e7701b959f18352241f3e5fe87ac790020eb50be", + "operatorSource": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905\\HANDOFF.md" + }, + { + "path": "historical/publication-before-raw-attributes/manifest.json", + "bytes": 401243, + "sha256": "c3601b7021e3d7d5a1b233b620f6952422b98828de791492de393e4776dc8210", + "operatorSource": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905\\evidence\\current-consumer-20260905\\manifest.json" + }, + { + "path": "historical/publication-before-raw-attributes/README.md.txt", + "bytes": 3505, + "sha256": "dd25393b9d34f1635c50a3911603e98b57e658263673b6268be2aedfe8235b80", + "operatorSource": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905\\evidence\\current-consumer-20260905\\README.md" + }, + { + "path": "historical/publication-before-raw-attributes/worker-receipt.json", + "bytes": 33354, + "sha256": "dc94f74670c577ebf98619e36e60060bb9889341fdb3728b79be1449ea00062e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.json" + }, + { + "path": "historical/publication-before-raw-attributes/worker-receipt.md.txt", + "bytes": 4245, + "sha256": "6b397b20e06cf83500f70bf5bcf0f48ec07729b5c1ebd083fcc7f0b97d7aabb5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.md" + }, + { + "path": "judge/E6e-nodeagent-independent-custody.py", + "bytes": 6741, + "sha256": "1d5f82e6df40622a689f3e12419e90a5ce136fed89f23f3a1772646cbec2a9a1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-custody.py" + }, + { + "path": "judge/E6e-nodeagent-independent-late-stop.mjs", + "bytes": 19050, + "sha256": "e13b16055729d07a1772ff8520a8aff8746eb8cc51dbe46844cc374e3694f191", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-late-stop.mjs" + }, + { + "path": "judge/E6e-nodeagent-independent-recovery.mjs", + "bytes": 18275, + "sha256": "c6bf72b44218aedeca60642d03e62c8b9a8affc022b49789af0f1b0b5ba8a711", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-recovery.mjs" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.before.html", + "bytes": 54536, + "sha256": "fe4aeb6dced29e0f7c207fd97db4fa426b5edb86690fdcbbbd931663d3a0b40e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-accumulated-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.html", + "bytes": 54536, + "sha256": "fe4aeb6dced29e0f7c207fd97db4fa426b5edb86690fdcbbbd931663d3a0b40e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-accumulated-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.json", + "bytes": 20228, + "sha256": "6935b87a602d818b983454526a9b2b3e9d5d1c996fbed4318014aab143995adf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-accumulated-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-accumulated-390.png", + "bytes": 31563, + "sha256": "58ba9e90d8ee08e3e4de36315520230539a85f7a6f7aa00c00d551d1faeca633", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-accumulated-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-empty-1440.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-empty-1440.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.json", + "bytes": 1447, + "sha256": "ec64ee186c5090fb5b13eb0536c3d88caa2a51f55cf313b5321ef224d3ba7bf1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-empty-1440.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-empty-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-empty-1440.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.before.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-empty-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-empty-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.json", + "bytes": 1429, + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-empty-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-empty-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-empty-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.before.html", + "bytes": 18235, + "sha256": "97eb5be3664f8fceaa54018d195648f0f750def1da3ef9a69b584273fed0d970", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-1440.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.html", + "bytes": 18235, + "sha256": "97eb5be3664f8fceaa54018d195648f0f750def1da3ef9a69b584273fed0d970", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-1440.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.json", + "bytes": 4528, + "sha256": "33ce1d3d8501c0c9bdf34e0f37ca1f9a3a2f39d0b5637f20594dff67c69b053f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-1440.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-1440.png", + "bytes": 53157, + "sha256": "0b0b4496efe9ccd09e844a4e75afb7ff74e37dc54ce08f64911ee322ed830d60", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-1440.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.before.html", + "bytes": 18235, + "sha256": "576c256ce9e420ce073f2e9aa845c6a1e0415713dd856dfd440b9adf5f0abb71", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.html", + "bytes": 18235, + "sha256": "576c256ce9e420ce073f2e9aa845c6a1e0415713dd856dfd440b9adf5f0abb71", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-390.png", + "bytes": 29688, + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.before.html", + "bytes": 18235, + "sha256": "0943af035114b3da79f3588c12f2d0a8842de365820d91290a9d43f9c08a4ca2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-again-1440.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.html", + "bytes": 18235, + "sha256": "0943af035114b3da79f3588c12f2d0a8842de365820d91290a9d43f9c08a4ca2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-again-1440.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.json", + "bytes": 4524, + "sha256": "51378138438aa879575cff6711662990b1d2dcf1d417c4a9b85ba0a0c3c09421", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-again-1440.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-1440.png", + "bytes": 53122, + "sha256": "07765375ec1a2f2786cd335ef09b11e6daf43b5625483e646f3c722a6f5b291b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-again-1440.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.before.html", + "bytes": 18235, + "sha256": "16d39915dbbeb0a7dccd7e53a6311b1746261160d4e169293bab4fa7592660e7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-again-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.html", + "bytes": 18235, + "sha256": "16d39915dbbeb0a7dccd7e53a6311b1746261160d4e169293bab4fa7592660e7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-again-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-again-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-again-390.png", + "bytes": 29700, + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-again-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.before.html", + "bytes": 21083, + "sha256": "f3eaf9579e9cca0a6ad000c75cc300913f03f911d2a33039b179708c8acf50de", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-text-200-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.html", + "bytes": 21083, + "sha256": "f3eaf9579e9cca0a6ad000c75cc300913f03f911d2a33039b179708c8acf50de", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-text-200-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.json", + "bytes": 4506, + "sha256": "f623528e34fb1e7fccd23e840e1c9502f91966ba01d204592b1ecf7ad4a3aca3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-text-200-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-error-text-200-390.png", + "bytes": 49228, + "sha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-error-text-200-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.before.html", + "bytes": 19736, + "sha256": "7268f9757d592dd677db46155c57a6edc02d91347cc7c37a5e4e822a258ba31c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-recovered-1440.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.html", + "bytes": 19736, + "sha256": "7268f9757d592dd677db46155c57a6edc02d91347cc7c37a5e4e822a258ba31c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-recovered-1440.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.json", + "bytes": 4900, + "sha256": "a113dd2bc8fce82da49447e11f2427ae3799c57e868e815d31a3cedc660b770e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-recovered-1440.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-1440.png", + "bytes": 54055, + "sha256": "a11ca95732178919c8ec6f957d8c8ce1e30376525fda5a4aace5b1870ac31dd2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-recovered-1440.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.before.html", + "bytes": 19736, + "sha256": "d03b23e10304018a6c673ef372e6bdd573942a75aa7f73ad83f8f363d337fc1c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-recovered-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.html", + "bytes": 19736, + "sha256": "d03b23e10304018a6c673ef372e6bdd573942a75aa7f73ad83f8f363d337fc1c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-recovered-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.json", + "bytes": 4886, + "sha256": "919f9b1861ed7e8b243b04a43d3fb579c36cc962ff43b30fb6f562ee52fd4c5c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-recovered-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-recovered-390.png", + "bytes": 31565, + "sha256": "33ee4ebc7c01a3f826e4b66b873fa57610fce8cd9120df361172a40c3def033d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-recovered-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-reloaded-1440.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-reloaded-1440.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.json", + "bytes": 1447, + "sha256": "ec64ee186c5090fb5b13eb0536c3d88caa2a51f55cf313b5321ef224d3ba7bf1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-reloaded-1440.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-reloaded-1440.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.before.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-reloaded-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-reloaded-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.json", + "bytes": 1429, + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-reloaded-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-reloaded-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-reloaded-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.before.html", + "bytes": 14761, + "sha256": "678c847fdaf8043fc1d94dba88d0501fef8a2196aa176354d9c87b66b0c5724b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-stopped-1440.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.html", + "bytes": 14761, + "sha256": "678c847fdaf8043fc1d94dba88d0501fef8a2196aa176354d9c87b66b0c5724b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-stopped-1440.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.json", + "bytes": 2967, + "sha256": "a28da15d369adaad05e18e10240035df47bd14c334728dd0214a97b54b8d3b5e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-stopped-1440.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-1440.png", + "bytes": 47515, + "sha256": "83264c4288a5f0b7240a757a12571f7f292902ea890b426b9f4b5318dd3a85c7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-stopped-1440.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.before.html", + "bytes": 14761, + "sha256": "4d58e1525b81bd8ee137720fc0574be59616326108c9cbddfe9014af885ae9a1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-stopped-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.html", + "bytes": 14761, + "sha256": "4d58e1525b81bd8ee137720fc0574be59616326108c9cbddfe9014af885ae9a1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-stopped-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.json", + "bytes": 2958, + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-stopped-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/generated-stopped-390.png", + "bytes": 31695, + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\generated-stopped-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/report.json", + "bytes": 275173, + "sha256": "f52dbcec03ade588cf9c315a5ca94af7866b9426af39670afea0e3021889a36d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\report.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.before.html", + "bytes": 86122, + "sha256": "d69aba9eff92a8b73e01239674f2b0dfe1dd116ed8ab238ade575e8a6d539164", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-accumulated-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.html", + "bytes": 86122, + "sha256": "d69aba9eff92a8b73e01239674f2b0dfe1dd116ed8ab238ade575e8a6d539164", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-accumulated-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.json", + "bytes": 28403, + "sha256": "8977d05241f0529107d785c5d2536e2896258bd583088176086cff623edc0365", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-accumulated-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-accumulated-390.png", + "bytes": 62645, + "sha256": "e58ba2d0b8b367e1dc324bd007529c624f97d26804cbc9e6cd9788c543352e6f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-accumulated-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.before.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-empty-1440.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-empty-1440.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.json", + "bytes": 1715, + "sha256": "44f9802ac671da13c467ad5fd9e3283586cd10703eaa3cc653202c61ffe74a1f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-empty-1440.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-empty-1440.png", + "bytes": 84780, + "sha256": "a6c2b56f63f22462a80c912197c44667a82ed86b39441d288576277765e809d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-empty-1440.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.before.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-empty-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-empty-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.json", + "bytes": 1702, + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-empty-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-empty-390.png", + "bytes": 58620, + "sha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-empty-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.before.html", + "bytes": 31169, + "sha256": "b6e11b80b60f53274bb86052372fd2f0fe4f8cbc957b0b30b977ffdbb75bb0a8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-1440.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.html", + "bytes": 31169, + "sha256": "b6e11b80b60f53274bb86052372fd2f0fe4f8cbc957b0b30b977ffdbb75bb0a8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-1440.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.json", + "bytes": 5922, + "sha256": "5ee19e2c30ca7a72425d05c7933872c423762cb05903081c441f9b5a296b7cd7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-1440.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-1440.png", + "bytes": 143609, + "sha256": "3cb9414cd86a76b35ca1908bd64ac61013bbf4557aab662dfe7faa57426a79a2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-1440.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-390.before.html", + "bytes": 31169, + "sha256": "97c5927b2a608fe94c7b8b034b434c4366d1150ffc409a06770777cfa6485d42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-390.html", + "bytes": 31169, + "sha256": "97c5927b2a608fe94c7b8b034b434c4366d1150ffc409a06770777cfa6485d42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-390.json", + "bytes": 5899, + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-390.png", + "bytes": 58786, + "sha256": "5a3f4eff6c72d24b380e02db272ed7e151f21a5f4abc16034641e5d16dc05e6c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.before.html", + "bytes": 31169, + "sha256": "606a414dc4d3b4d3bba931f08a3dd819b7709f9cff42d57818ca23f8d36622d1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-again-1440.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.html", + "bytes": 31169, + "sha256": "606a414dc4d3b4d3bba931f08a3dd819b7709f9cff42d57818ca23f8d36622d1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-again-1440.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.json", + "bytes": 5918, + "sha256": "ff0a36f9e62a3e0e18996d3645809fdbd0b7d38dc8b7352c737f930779c43375", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-again-1440.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-again-1440.png", + "bytes": 143606, + "sha256": "a53b50f14bb3384a630ae6119994336a55949d1432011fd1b81b608775218e22", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-again-1440.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.before.html", + "bytes": 31169, + "sha256": "522050d771ce83de35457216d8520dd39290ea65820b439747d0b6311e6eff94", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-again-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.html", + "bytes": 31169, + "sha256": "522050d771ce83de35457216d8520dd39290ea65820b439747d0b6311e6eff94", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-again-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.json", + "bytes": 5899, + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-again-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-again-390.png", + "bytes": 58499, + "sha256": "a3b5e06697c6cfaac7980233f8bd581d2613c4cc1a397c39917428cb0ba52c9d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-again-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.before.html", + "bytes": 34627, + "sha256": "785858bd4f12e1e8226156839494d89c00ee538d31e9d1a491a7abe43b0a89f6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-text-200-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.html", + "bytes": 34627, + "sha256": "785858bd4f12e1e8226156839494d89c00ee538d31e9d1a491a7abe43b0a89f6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-text-200-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.json", + "bytes": 5891, + "sha256": "9e7860273aad6cb70d41aa493f23df595335e8b9b7f32cfa74208bca04c4f0ab", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-text-200-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-error-text-200-390.png", + "bytes": 72860, + "sha256": "87ca877089da73e5ff062bff0cfce8b1d68ed1cb3dc929449977781059c9555f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-error-text-200-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.before.html", + "bytes": 33646, + "sha256": "bebd658130f0d22efc4678119de6f0714d4811e73987625036c584636c4cae29", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-recovered-1440.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.html", + "bytes": 33646, + "sha256": "bebd658130f0d22efc4678119de6f0714d4811e73987625036c584636c4cae29", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-recovered-1440.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.json", + "bytes": 6723, + "sha256": "06b0c8772672c8c540bdf19a9a6998610ec44597c062617bb734e19dea24c7cf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-recovered-1440.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-recovered-1440.png", + "bytes": 149936, + "sha256": "7eb2085accc67019da7b5693afe4907c008454289880ffb8ecac250834aad101", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-recovered-1440.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.before.html", + "bytes": 33646, + "sha256": "5de6c8b23c8a0aa8a73d90e313287196a85dadf1b7188444b5021cd51bf4d5d6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-recovered-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.html", + "bytes": 33646, + "sha256": "5de6c8b23c8a0aa8a73d90e313287196a85dadf1b7188444b5021cd51bf4d5d6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-recovered-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.json", + "bytes": 6717, + "sha256": "2f228584dd5b101347fecb1ac11f22ce41b69b7e55636bcd677337c1e5b65aec", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-recovered-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-recovered-390.png", + "bytes": 62871, + "sha256": "15f0d2f858fc3afba0b0b9b1767d1f9d60b4ce86dc47b589c16b24b34e58717a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-recovered-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.before.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-reloaded-1440.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-reloaded-1440.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.json", + "bytes": 1715, + "sha256": "44f9802ac671da13c467ad5fd9e3283586cd10703eaa3cc653202c61ffe74a1f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-reloaded-1440.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-1440.png", + "bytes": 84775, + "sha256": "af46f2737897dc01909a26e05dfcc40315a367b28e8cd459750e635793859608", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-reloaded-1440.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.before.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-reloaded-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-reloaded-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.json", + "bytes": 1702, + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-reloaded-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-reloaded-390.png", + "bytes": 58600, + "sha256": "299c36560e79eeaadea88eb6c5d512f2e8e3f38f89bd6e991606fe6f8e2a1d19", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-reloaded-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.before.html", + "bytes": 25903, + "sha256": "a1050ac36a0d18e96ea632b7cf6f98cf54e491d9747b2ed394919a24cabeb71a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-stopped-1440.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.html", + "bytes": 25903, + "sha256": "a1050ac36a0d18e96ea632b7cf6f98cf54e491d9747b2ed394919a24cabeb71a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-stopped-1440.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.json", + "bytes": 3811, + "sha256": "d5b8ffa3745e3270bbbf6b26325c4cc6ec1c089a8367934ffbe3ae86ea6762ed", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-stopped-1440.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-stopped-1440.png", + "bytes": 143964, + "sha256": "832a7ab40c6f832eec9611ce6cfb38e3cd6a22be4e38630fb7e4a5b886aad3ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-stopped-1440.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.before.html", + "bytes": 25903, + "sha256": "21c12e7d935542c9887a13970b00fb5982e1b6dd9858b5b0b814bb4f5b817023", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-stopped-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.html", + "bytes": 25903, + "sha256": "21c12e7d935542c9887a13970b00fb5982e1b6dd9858b5b0b814bb4f5b817023", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-stopped-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.json", + "bytes": 3790, + "sha256": "1aff41667b5c71a7a8837fd32990a1da65f759dd33eeb51427d048c26e2372d1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-stopped-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/browser-01/source-stopped-390.png", + "bytes": 61265, + "sha256": "13807fdd6b2fa5cbe04e46312872828cc78170fea83e1487ca4c9240544b486e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\browser-01\\source-stopped-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/capture-binding-check-before-explicit-utf8.json", + "bytes": 31908, + "sha256": "125b2a9db37209b2bd5aadee98a71717f5c843889b5ac62d37d18543b56d90bb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\capture-binding-check-before-explicit-utf8.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/capture-binding-check.json", + "bytes": 1404, + "sha256": "cc89c5c059fecb4edc947b556bc7f23459cb4a758e81151a2af9bbc982130993", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\capture-binding-check.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/checks.json", + "bytes": 880, + "sha256": "cc3c1657c331ec1925c6d04ac46b641be798fd2911d03aa8da8f8fd73c7add2a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\checks.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/custody-after.json", + "bytes": 312960, + "sha256": "40c99481b569aaafdf55281247abc97b262e17bff3904ca80bf58428a8928f9d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\custody-after.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/custody-before.json", + "bytes": 312961, + "sha256": "fefcc29cfa417ad11393156d29bb6c6f80d54c8193887d1ce4acdaf83009a71a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\custody-before.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.before.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\generated-empty-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\generated-empty-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.json", + "bytes": 1429, + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\generated-empty-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/generated-empty-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\generated-empty-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.before.html", + "bytes": 16836, + "sha256": "c135c2278539fb99fb9f10fc1b829093d5289813e79efd5a04085331b8e38f7b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\generated-late-stop-recovered-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.html", + "bytes": 16836, + "sha256": "c135c2278539fb99fb9f10fc1b829093d5289813e79efd5a04085331b8e38f7b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\generated-late-stop-recovered-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.json", + "bytes": 3603, + "sha256": "ece0e3f172b3cf6b66288d0008d2701abf28f3f4f3df93a982364dddec6807d0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\generated-late-stop-recovered-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/generated-late-stop-recovered-390.png", + "bytes": 31559, + "sha256": "cee4a063e5e46f062e32d18662e263907c383cd7d52a6df9d709dc7324c1dc1c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\generated-late-stop-recovered-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.before.html", + "bytes": 15336, + "sha256": "e95938f6d34afff438518026503b581cfc24c9f437d55b76d935ab132997965a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\generated-stopped-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.html", + "bytes": 15336, + "sha256": "e95938f6d34afff438518026503b581cfc24c9f437d55b76d935ab132997965a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\generated-stopped-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.json", + "bytes": 3232, + "sha256": "b1599063d0f55edad035cd7316671f89267b0c531db31d979019cbe52432ea63", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\generated-stopped-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/generated-stopped-390.png", + "bytes": 28653, + "sha256": "17ff523e31e3db48d9ecc4c639932dcf2454a775015c7eee58f678204a2aa7cc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\generated-stopped-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/report.json", + "bytes": 91042, + "sha256": "aad45e4f95205692f1c0e65f335d4c3d0ffbe5d3e2ff53153c239618dc0d9423", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\report.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.before.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\source-empty-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\source-empty-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.json", + "bytes": 1702, + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\source-empty-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/source-empty-390.png", + "bytes": 58605, + "sha256": "75090e3ee26ca99cec746074a56f5980f0c4d90d76399c5138f03af7c34252d1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\source-empty-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.before.html", + "bytes": 29273, + "sha256": "00a25a4ba736bef90c461264397ed4c596eb74670716f2b36d104bdab588d9da", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\source-late-stop-recovered-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.html", + "bytes": 29273, + "sha256": "00a25a4ba736bef90c461264397ed4c596eb74670716f2b36d104bdab588d9da", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\source-late-stop-recovered-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.json", + "bytes": 4910, + "sha256": "f20eb58c38d4fcc4bc782b32d72c672645b2830a6adbbcfc43c915c1280370ba", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\source-late-stop-recovered-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/source-late-stop-recovered-390.png", + "bytes": 62763, + "sha256": "04b9751594d3ef85325d11737b90a0e809eeb52c85e6e605963d786b0bb2db0b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\source-late-stop-recovered-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.before.html", + "bytes": 26797, + "sha256": "519b8564971dbb30419f7469307c1a3050a6edbba2c2720e7e8fdbddded21ec8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\source-stopped-390.before.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.html", + "bytes": 26797, + "sha256": "519b8564971dbb30419f7469307c1a3050a6edbba2c2720e7e8fdbddded21ec8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\source-stopped-390.html" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.json", + "bytes": 4095, + "sha256": "6377dd859f28ea3d754b7326efde672bec718fdfa89adc7866cb0bbf90d728e1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\source-stopped-390.json" + }, + { + "path": "judge/E6e-nodeagent-independent-review/late-stop-01/source-stopped-390.png", + "bytes": 57689, + "sha256": "575b71512058fe38969984755ebad70464c545902118f5d0f2dcbfbe6865c35c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\late-stop-01\\source-stopped-390.png" + }, + { + "path": "judge/E6e-nodeagent-independent-review/tests.stderr.log", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\tests.stderr.log" + }, + { + "path": "judge/E6e-nodeagent-independent-review/tests.stdout.log", + "bytes": 1251, + "sha256": "a259fa5b1373f3110364cb8cd6cf278cb336e169835fd172bc1159a237d59887", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\tests.stdout.log" + }, + { + "path": "judge/E6e-nodeagent-independent-review/tours.stderr.log", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\tours.stderr.log" + }, + { + "path": "judge/E6e-nodeagent-independent-review/tours.stdout.log", + "bytes": 188, + "sha256": "8b91eaa9d523522537255352c11c4861181d47d8559a7cfee65ebd89e731476a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\tours.stdout.log" + }, + { + "path": "judge/E6e-nodeagent-independent-review/typecheck.stderr.log", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\typecheck.stderr.log" + }, + { + "path": "judge/E6e-nodeagent-independent-review/typecheck.stdout.log", + "bytes": 45, + "sha256": "1611f2f8467e52eeae9fc30b4f851e7b429aec602524637ddd6f4a9a58d6ae5f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-independent-review\\typecheck.stdout.log" + }, + { + "path": "judge/E6e-write-nodeagent-final-judge.py", + "bytes": 20132, + "sha256": "c764f4649d0f3118728dfe3aa51a6eab3fd52832c165278b4fae28532034e7d7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-write-nodeagent-final-judge.py" + }, + { + "path": "judge/E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.json", + "bytes": 49381, + "sha256": "a33a0e1932a73d6c3dbaa5d8e233567771e9091ba2815efdbc051ccde2ea7a25", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.json" + }, + { + "path": "judge/E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.md.txt", + "bytes": 6092, + "sha256": "a75a409986c8e35094922b90b9f9470ce135038443dcee345493186da2c34e01", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_CURRENT_CONSUMER_FINAL_JUDGE.md" + }, + { + "path": "judge/E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.json", + "bytes": 33354, + "sha256": "dc94f74670c577ebf98619e36e60060bb9889341fdb3728b79be1449ea00062e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.json" + }, + { + "path": "judge/E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.md.txt", + "bytes": 4245, + "sha256": "6b397b20e06cf83500f70bf5bcf0f48ec07729b5c1ebd083fcc7f0b97d7aabb5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_CURRENT_CONSUMER_RECEIPT.md" + }, + { + "path": "operator/browser-before-01-command.json", + "bytes": 366, + "sha256": "f3349585a17450163e6b1ee081b3f2af6e37fca0e775a8ea207dbb3d368383f1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-01-command.json" + }, + { + "path": "operator/browser-before-01-harness.mjs.txt", + "bytes": 12067, + "sha256": "364cfa15c6b176407b7afe8caec2f555f718ca09886e86d0596d481031a48a02", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-01-harness.mjs.txt" + }, + { + "path": "operator/browser-before-01.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-01.stderr" + }, + { + "path": "operator/browser-before-01.stdout", + "bytes": 753, + "sha256": "a9d110ed6d6282c7238008f2c51a5a544121b91f2830a629ee7e5cd3af1c8f69", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-01.stdout" + }, + { + "path": "operator/browser-before-02-command.json", + "bytes": 364, + "sha256": "7a3a79f21864cec996ae8e838057c3431ae1a7c73a76be6746f3dd1f565c97c3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-02-command.json" + }, + { + "path": "operator/browser-before-02-command.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-02-command.stderr" + }, + { + "path": "operator/browser-before-02-command.stdout", + "bytes": 1003, + "sha256": "3ee598d331df710a361076a47c5591cb83863ef2220f62015986b17c28cef06f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-02-command.stdout" + }, + { + "path": "operator/browser-before-02-harness.mjs.txt", + "bytes": 12356, + "sha256": "211987d2ea5c21337226155501cf79a665db0ee88f05e0adf71d5d2704eeb54e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-02-harness.mjs.txt" + }, + { + "path": "operator/browser-before-03-command.json", + "bytes": 365, + "sha256": "ada89b022af7aa6ec91acb627b6882b0d7927702fd7893dbdb7975ef546f68fb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-03-command.json" + }, + { + "path": "operator/browser-before-03-command.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-03-command.stderr" + }, + { + "path": "operator/browser-before-03-command.stdout", + "bytes": 533, + "sha256": "1c6472a5aaea3e4e56e36d017b4bfe5844d3d0709aed0f276e328b839b936d1d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-03-command.stdout" + }, + { + "path": "operator/browser-before-03-harness.mjs.txt", + "bytes": 12436, + "sha256": "1f74cbdf16dd807444c0986cc65063732b273c49eb48c260dabedbaa4d6e0c4d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-03-harness.mjs.txt" + }, + { + "path": "operator/canonical-audit-production.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-audit-production.stderr" + }, + { + "path": "operator/canonical-audit-production.stdout", + "bytes": 366, + "sha256": "63c0065f6900d02e8b63ffecedfe68547d17db39d991d7f67869cbf3abce2e49", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-audit-production.stdout" + }, + { + "path": "operator/canonical-build.stderr", + "bytes": 342, + "sha256": "aa9b7207d2d2d42fbf4e013331ee76fc39b9b042505b38551893c1f60f35b63a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-build.stderr" + }, + { + "path": "operator/canonical-build.stdout", + "bytes": 604, + "sha256": "dcfd2e31e77842b1f9278c39d812c5433a5f87b4090579b40019e649e8052722", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-build.stdout" + }, + { + "path": "operator/canonical-checks.json", + "bytes": 2804, + "sha256": "36fefaf8774eb0b53302640f6779e09bca9293d0c01b34d53a93d1758974299d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-checks.json" + }, + { + "path": "operator/canonical-tests.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-tests.stderr" + }, + { + "path": "operator/canonical-tests.stdout", + "bytes": 1253, + "sha256": "b939a31d2f0eb38e23b00706c1d8216c85d1571302137207f611de7b98072cf7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\canonical-tests.stdout" + }, + { + "path": "operator/capture-generated-d3-before-01.mjs.txt", + "bytes": 9017, + "sha256": "ca239549202a427b9f4a6bccf05fe4646876801f73f8d05f964357cde017ce1d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-generated-d3-before-01.mjs.txt" + }, + { + "path": "operator/capture-generated-d3-before.mjs.txt", + "bytes": 9076, + "sha256": "fade830ebb8a90c4bb82c1a5fcb0f9f27f5a7660904ac39b4a86184a95bbb61d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-generated-d3-before.mjs" + }, + { + "path": "operator/capture-generated-d3-matched-after-syntax-failure.mjs.txt", + "bytes": 7609, + "sha256": "d668a20bdbdd2e0d660e7d93a6fd74e2db99e9c6841070dc910eed91764a3c22", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-generated-d3-matched-after-syntax-failure.mjs.txt" + }, + { + "path": "operator/capture-generated-d3-matched-after.mjs.txt", + "bytes": 7608, + "sha256": "c2ca4153af05e4e128d6cd6fb38258e6dc9827f48dafa13f5119f8aa40d6af4b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-generated-d3-matched-after.mjs" + }, + { + "path": "operator/capture-source-d3-before-01.mjs.txt", + "bytes": 8554, + "sha256": "a1039f2f9f4b737c7d2b055325aee9f54ffb022e682d71c1bddc7f0edd860f7a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-source-d3-before-01.mjs.txt" + }, + { + "path": "operator/capture-source-d3-before-02.mjs.txt", + "bytes": 8962, + "sha256": "f6c05c18f4577a14cb1adec9b403b6f9eeb0e6de28f47cbf792b5676e8159e14", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-source-d3-before-02.mjs.txt" + }, + { + "path": "operator/capture-source-d3-before.mjs.txt", + "bytes": 8964, + "sha256": "5a50d40dbe8380cc366c46c289cb67c06f3bbee4de8b867d651f0a9efc3cd539", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-source-d3-before.mjs" + }, + { + "path": "operator/capture-source-d3-matched-after.mjs.txt", + "bytes": 7015, + "sha256": "a358ba9166caae7baf5b59e22f598817dbb472854b16b0bcdd8b154b62ee1113", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-source-d3-matched-after.mjs" + }, + { + "path": "operator/d3-citation-before/.tours/01-primary-user-flow.tour", + "bytes": 4743, + "sha256": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-citation-before\\.tours\\01-primary-user-flow.tour" + }, + { + "path": "operator/d3-citation-before/docs/START_HERE.md.txt", + "bytes": 17384, + "sha256": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-citation-before\\docs\\START_HERE.md" + }, + { + "path": "operator/d3-citation-correctness-addendum.json", + "bytes": 923, + "sha256": "82c548892018bec4225826ab29d9f7e989fe04dbbd6fba021715fd516cc0da32", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-citation-correctness-addendum.json" + }, + { + "path": "operator/d3-consumer-02-commands.json", + "bytes": 1831, + "sha256": "b0296d34c5fecec7f11e0b16ee1ee1ff9b9ca340021a2e3864ef64df0fdbaabb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-consumer-02-commands.json" + }, + { + "path": "operator/d3-consumer-preservation.json", + "bytes": 5441, + "sha256": "69a91e38f0001e57b2effbd7988d55302365f878235e81d81e328b7f591437df", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-consumer-preservation.json" + }, + { + "path": "operator/d3-corrected-tours-validate.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-corrected-tours-validate.stderr" + }, + { + "path": "operator/d3-corrected-tours-validate.stdout", + "bytes": 188, + "sha256": "8b91eaa9d523522537255352c11c4861181d47d8559a7cfee65ebd89e731476a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-corrected-tours-validate.stdout" + }, + { + "path": "operator/d3-enlargement-css-before.txt", + "bytes": 7126, + "sha256": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-css-before.txt" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/change-boundary.md.txt", + "bytes": 714, + "sha256": "655de20425af950dd8a7608433711266bbbe39e40e534650eade81d9ca82e27c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\change-boundary.md" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/change-boundary.png", + "bytes": 50135, + "sha256": "e3a84fa9f8010add7871ab196f8abccfbbaab4046b6aec08bbae8aac4c2f163d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\change-boundary.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/failure.html", + "bytes": 21043, + "sha256": "6a0ef3e833cb1ec1d5e81b8fa865a22606aaebf4a6325a094f80965776d3b39a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\failure.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/failure.png", + "bytes": 48450, + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\failure.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-empty-390.before.html", + "bytes": 12122, + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-empty-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-empty-390.html", + "bytes": 12122, + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-empty-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-empty-390.json", + "bytes": 1429, + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-empty-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-empty-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-empty-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-390.before.html", + "bytes": 18195, + "sha256": "20fc61c6350ca9aa39bf487c4ac4e86f042e715f214a89db813495cb80515d17", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-390.html", + "bytes": 18195, + "sha256": "20fc61c6350ca9aa39bf487c4ac4e86f042e715f214a89db813495cb80515d17", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-390.png", + "bytes": 29688, + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-again-390.before.html", + "bytes": 18195, + "sha256": "0d30220b7fa640f71b8a64f3d0a727d23a6fc0605d687ae357c3ea3343b8fdb2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-again-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-again-390.html", + "bytes": 18195, + "sha256": "0d30220b7fa640f71b8a64f3d0a727d23a6fc0605d687ae357c3ea3343b8fdb2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-again-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-again-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-again-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-again-390.png", + "bytes": 29700, + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-again-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.before.html", + "bytes": 21043, + "sha256": "6a0ef3e833cb1ec1d5e81b8fa865a22606aaebf4a6325a094f80965776d3b39a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-text-200-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.html", + "bytes": 21043, + "sha256": "6a0ef3e833cb1ec1d5e81b8fa865a22606aaebf4a6325a094f80965776d3b39a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-text-200-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.json", + "bytes": 4504, + "sha256": "5f25fcb3438e23c8da82b4f56aea5e3fca094692a605db0ee8c63d26f72e17d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-text-200-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.png", + "bytes": 48450, + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-error-text-200-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-stopped-390.before.html", + "bytes": 14721, + "sha256": "1ff85a39dce2635dc005f360f43a98d69256836561e7ee0ee5a14e3317c32f68", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-stopped-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-stopped-390.html", + "bytes": 14721, + "sha256": "1ff85a39dce2635dc005f360f43a98d69256836561e7ee0ee5a14e3317c32f68", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-stopped-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-stopped-390.json", + "bytes": 2958, + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-stopped-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/generated-stopped-390.png", + "bytes": 31695, + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\generated-stopped-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/intrinsic-width-diagnosis.json", + "bytes": 1681, + "sha256": "5f9d141b22c820efc00df05e432b6dbe77d693a7a14198307b9948c5513b3978", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\intrinsic-width-diagnosis.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01/report.json", + "bytes": 53784, + "sha256": "9c1c9d90b1d55864b66bb9b0da33b2fbd05e85d6ecf5e70ceab6ed3771d39859", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01\\report.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01.command.json", + "bytes": 512, + "sha256": "9add5c59d39b69db716453b518ea2f4914a4af3df50b6c7b85edfa77c3cb1871", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01.command.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-01.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01.stderr" + }, + { + "path": "operator/d3-enlargement-diagnosis-01.stdout", + "bytes": 476, + "sha256": "621db98d4563e6f931f5784daad4d057d0e424b42ddf76b8471129a9d78a640e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-01.stdout" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/change-boundary.png", + "bytes": 50135, + "sha256": "e3a84fa9f8010add7871ab196f8abccfbbaab4046b6aec08bbae8aac4c2f163d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\change-boundary.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/failure.html", + "bytes": 21043, + "sha256": "1667d0a2ba7a05ad13378eab6f004b32c23aeee890e3de24b954d9ba3bd349e4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\failure.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/failure.png", + "bytes": 48450, + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\failure.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-empty-390.before.html", + "bytes": 12122, + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-empty-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-empty-390.html", + "bytes": 12122, + "sha256": "33b2db72e90ecc0423362b425a74f65b7e8d392439875c60ecfa0b1350f723fd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-empty-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-empty-390.json", + "bytes": 1429, + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-empty-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-empty-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-empty-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-390.before.html", + "bytes": 18195, + "sha256": "e4e90a0c6a9b2ebd6593de15327a2163a1cae502a20b4b080565549429485ac4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-390.html", + "bytes": 18195, + "sha256": "e4e90a0c6a9b2ebd6593de15327a2163a1cae502a20b4b080565549429485ac4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-390.png", + "bytes": 29688, + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-again-390.before.html", + "bytes": 18195, + "sha256": "ac8a9f57bd49edeebff13e4e752f20d89731066258cd296196539d3e387aa1ea", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-again-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-again-390.html", + "bytes": 18195, + "sha256": "ac8a9f57bd49edeebff13e4e752f20d89731066258cd296196539d3e387aa1ea", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-again-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-again-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-again-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-again-390.png", + "bytes": 29700, + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-again-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.before.html", + "bytes": 21043, + "sha256": "1667d0a2ba7a05ad13378eab6f004b32c23aeee890e3de24b954d9ba3bd349e4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-text-200-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.html", + "bytes": 21043, + "sha256": "1667d0a2ba7a05ad13378eab6f004b32c23aeee890e3de24b954d9ba3bd349e4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-text-200-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.json", + "bytes": 4504, + "sha256": "5f25fcb3438e23c8da82b4f56aea5e3fca094692a605db0ee8c63d26f72e17d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-text-200-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.png", + "bytes": 48450, + "sha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-error-text-200-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-stopped-390.before.html", + "bytes": 14721, + "sha256": "c99d225b4a798c7f17d79360f3044b707d2491a03d913fe1cfdf022becafa36a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-stopped-390.before.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-stopped-390.html", + "bytes": 14721, + "sha256": "c99d225b4a798c7f17d79360f3044b707d2491a03d913fe1cfdf022becafa36a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-stopped-390.html" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-stopped-390.json", + "bytes": 2958, + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-stopped-390.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/generated-stopped-390.png", + "bytes": 31695, + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\generated-stopped-390.png" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/intrinsic-width-diagnosis.json", + "bytes": 1094, + "sha256": "b7ab84e026c8a4785f4e64f61f68ae15c945607f0dcc1f691d89ae29e3641952", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\intrinsic-width-diagnosis.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02/report.json", + "bytes": 53787, + "sha256": "310d33643208d5887ab00fdc9f6374d682f0067f9b1edbfd1b0bf5c3742388d3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02\\report.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02.command.json", + "bytes": 514, + "sha256": "713a05e8c3bb6ee8ed85fc49562871e1a4f5bf28ab544ffee13ec33eabfd343e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02.command.json" + }, + { + "path": "operator/d3-enlargement-diagnosis-02.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02.stderr" + }, + { + "path": "operator/d3-enlargement-diagnosis-02.stdout", + "bytes": 479, + "sha256": "31db5f264364bb7962a150434032aed09130b22f2a0032b2d362e7d59f4516d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02.stdout" + }, + { + "path": "operator/d3-final-03-build.stderr", + "bytes": 342, + "sha256": "aa9b7207d2d2d42fbf4e013331ee76fc39b9b042505b38551893c1f60f35b63a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-build.stderr" + }, + { + "path": "operator/d3-final-03-build.stdout", + "bytes": 604, + "sha256": "e726ba3b108ddbd360c358c54c04154c2dd89dc90e7003bca255b8db23f9f7b0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-build.stdout" + }, + { + "path": "operator/d3-final-03-commands.json", + "bytes": 3910, + "sha256": "cd80bf5203ea3c863f77fc5190a937e0fbe2c2a3221f4a9806ee4500cf457892", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-commands.json" + }, + { + "path": "operator/d3-final-03-test.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-test.stderr" + }, + { + "path": "operator/d3-final-03-test.stdout", + "bytes": 1251, + "sha256": "5e876ce8972556a35b75a101d275324ab2d4c244b41f088b157d019d98609c57", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-test.stdout" + }, + { + "path": "operator/d3-final-03-tours-validate.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-tours-validate.stderr" + }, + { + "path": "operator/d3-final-03-tours-validate.stdout", + "bytes": 188, + "sha256": "8b91eaa9d523522537255352c11c4861181d47d8559a7cfee65ebd89e731476a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-03-tours-validate.stdout" + }, + { + "path": "operator/d3-final-browser-01.command.json", + "bytes": 383, + "sha256": "2f49fc84dc4bc4a20d172320eb19637a2395a6ba071344982e1d02f91ae9028b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01.command.json" + }, + { + "path": "operator/d3-final-browser-01.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01.stderr" + }, + { + "path": "operator/d3-final-browser-01.stdout", + "bytes": 654, + "sha256": "fa4b3733d14708ea7862f4d4432d2dcb771a1e3d2e7b4c48c9935066c41100c2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01.stdout" + }, + { + "path": "operator/d3-final-browser-02.command.json", + "bytes": 387, + "sha256": "65e27ecda84be3e5c05b7fa9c9218015bdeda8d816e20bec678c65f658ce261c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02.command.json" + }, + { + "path": "operator/d3-final-browser-02.stderr", + "bytes": 957, + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02.stderr" + }, + { + "path": "operator/d3-final-browser-02.stdout", + "bytes": 675, + "sha256": "b05bf8785f7d5e963a38b1a0c1fa99626ee5cd225adb964fff134f6f6623e420", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02.stdout" + }, + { + "path": "operator/d3-final-browser-03/generated-accumulated-390.before.html", + "bytes": 54536, + "sha256": "59eb34ea0435ce840d70eb48a59adac70759497f3ae7a4b5584bc2488ffecbf2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-accumulated-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-accumulated-390.html", + "bytes": 54536, + "sha256": "59eb34ea0435ce840d70eb48a59adac70759497f3ae7a4b5584bc2488ffecbf2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-accumulated-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-accumulated-390.json", + "bytes": 20228, + "sha256": "6935b87a602d818b983454526a9b2b3e9d5d1c996fbed4318014aab143995adf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-accumulated-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-accumulated-390.png", + "bytes": 31563, + "sha256": "58ba9e90d8ee08e3e4de36315520230539a85f7a6f7aa00c00d551d1faeca633", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-accumulated-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1024.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1024.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1024.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1024.json", + "bytes": 1441, + "sha256": "bf71f827c6258d6850a61ffd3f44d5d49a579a8f50533c7e5b8995e599227732", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1024.json" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1024.png", + "bytes": 35614, + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1024.png" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1440.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1440.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1440.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1440.json", + "bytes": 1447, + "sha256": "ec64ee186c5090fb5b13eb0536c3d88caa2a51f55cf313b5321ef224d3ba7bf1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1440.json" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1440.png" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1920.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1920.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1920.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1920.json", + "bytes": 1447, + "sha256": "784b057efcc06117428ff64e758febd96fcead440f76cfd8bb1149a843077a42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1920.json" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-1920.png", + "bytes": 38890, + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-1920.png" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-320.before.html", + "bytes": 12162, + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-320.html", + "bytes": 12162, + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-320.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-320.json", + "bytes": 1429, + "sha256": "797209909becf655017daaaa1aa4c3561deb375c2cd86132540d874cdbc9a31d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-320.json" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-320.png", + "bytes": 27800, + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-320.png" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-390.before.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-390.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-390.json", + "bytes": 1429, + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-768.before.html", + "bytes": 12162, + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-768.html", + "bytes": 12162, + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-768.html" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-768.json", + "bytes": 1438, + "sha256": "c75f981b06d8509b77afe350c14ea252bc96e3ed341a3746f43eddc6746e6c33", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-768.json" + }, + { + "path": "operator/d3-final-browser-03/generated-empty-768.png", + "bytes": 34212, + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-empty-768.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1024.before.html", + "bytes": 18235, + "sha256": "31b63a4a1677db645819b3a8282212e35c49694d781bde3e1ee7fc0a7eac7a89", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1024.html", + "bytes": 18235, + "sha256": "31b63a4a1677db645819b3a8282212e35c49694d781bde3e1ee7fc0a7eac7a89", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1024.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1024.json", + "bytes": 4521, + "sha256": "b763d3a5d040ed75ab1034fa9b2a2c86503f719947d9bc57c800440ff9fb55b4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1024.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1024.png", + "bytes": 50960, + "sha256": "8771217ee4017d80a0d96770f8b6102ca307e466c9ce9bc892b162b00d43af5f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1024.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1440.before.html", + "bytes": 18235, + "sha256": "ff05f89650666f1a056ae7e94f9f5af7bed3077ea79ee74541717eee2d09c0c2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1440.html", + "bytes": 18235, + "sha256": "ff05f89650666f1a056ae7e94f9f5af7bed3077ea79ee74541717eee2d09c0c2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1440.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1440.json", + "bytes": 4528, + "sha256": "33ce1d3d8501c0c9bdf34e0f37ca1f9a3a2f39d0b5637f20594dff67c69b053f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1440.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1440.png", + "bytes": 53157, + "sha256": "0b0b4496efe9ccd09e844a4e75afb7ff74e37dc54ce08f64911ee322ed830d60", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1440.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1920.before.html", + "bytes": 18235, + "sha256": "7d4b324f47c6ae4f1a28be373c8f48bae4bddee948e7b02b5101f564988e5015", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1920.html", + "bytes": 18235, + "sha256": "7d4b324f47c6ae4f1a28be373c8f48bae4bddee948e7b02b5101f564988e5015", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1920.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1920.json", + "bytes": 4528, + "sha256": "2bc6cca0a819ca19908d7a4cc21e7803f649b224a1020f141090e8f703e4da75", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1920.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-1920.png", + "bytes": 55209, + "sha256": "04ea13ef9f7347a8b3f69e0c6d8cbe277197c38ea5c31a4571154504696a7207", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-1920.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-320.before.html", + "bytes": 18235, + "sha256": "8b29c5d26da3aeedb4ecee0b4b40a189d1a3470160fae0ac23af5c5c49d704c1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-320.html", + "bytes": 18235, + "sha256": "8b29c5d26da3aeedb4ecee0b4b40a189d1a3470160fae0ac23af5c5c49d704c1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-320.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-320.json", + "bytes": 4502, + "sha256": "acbd3eb3b7d0890f2c42ee7c2de5651a0e3b47a40719f0a65f953adbd372ddba", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-320.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-320.png", + "bytes": 27882, + "sha256": "914d34e5c4e3c77a75568bda1683fcad1e85d27ec995dd45cb9ab945c04b56b7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-320.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-390.before.html", + "bytes": 18235, + "sha256": "831bd2526f3ebdbd1795616642137818fc6f4df8fd64c06d989098c8bb667685", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-390.html", + "bytes": 18235, + "sha256": "831bd2526f3ebdbd1795616642137818fc6f4df8fd64c06d989098c8bb667685", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-390.png", + "bytes": 29688, + "sha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-768.before.html", + "bytes": 18235, + "sha256": "bc1685eeb14ac6dde0ceb78f3bb834213d7b02ee5ce55204cc1825589165191b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-768.html", + "bytes": 18235, + "sha256": "bc1685eeb14ac6dde0ceb78f3bb834213d7b02ee5ce55204cc1825589165191b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-768.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-768.json", + "bytes": 4528, + "sha256": "629a509368163ec0675ab696b8317dd4d79c305a22ca9871b6874e4a3b9ec075", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-768.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-768.png", + "bytes": 49649, + "sha256": "7b29501873ba5b601f6bbb3ef55468f49a159347bf4839eeeb181e5d7bba9710", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-768.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1024.before.html", + "bytes": 18235, + "sha256": "1b70b093669a29e7c913b7fd5cd19aa3804f90d1c205e31b217003d6f701f9e1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1024.html", + "bytes": 18235, + "sha256": "1b70b093669a29e7c913b7fd5cd19aa3804f90d1c205e31b217003d6f701f9e1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1024.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1024.json", + "bytes": 4521, + "sha256": "b763d3a5d040ed75ab1034fa9b2a2c86503f719947d9bc57c800440ff9fb55b4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1024.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1024.png", + "bytes": 50971, + "sha256": "56f0f5a4352c57b7c56842dcd6da1f6c90d04dfb46cfae4995994a48995ec2e2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1024.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1440.before.html", + "bytes": 18235, + "sha256": "96661f580c686a2b16cecee3997a37c008cb26218824900b238512b4e52b80e9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1440.html", + "bytes": 18235, + "sha256": "96661f580c686a2b16cecee3997a37c008cb26218824900b238512b4e52b80e9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1440.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1440.json", + "bytes": 4524, + "sha256": "51378138438aa879575cff6711662990b1d2dcf1d417c4a9b85ba0a0c3c09421", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1440.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1440.png", + "bytes": 53122, + "sha256": "07765375ec1a2f2786cd335ef09b11e6daf43b5625483e646f3c722a6f5b291b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1440.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1920.before.html", + "bytes": 18235, + "sha256": "38f2d9548bd5544e0002105ed7bef8c6b1b25365855291c95f2cbb67dfe91045", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1920.html", + "bytes": 18235, + "sha256": "38f2d9548bd5544e0002105ed7bef8c6b1b25365855291c95f2cbb67dfe91045", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1920.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1920.json", + "bytes": 4528, + "sha256": "2bc6cca0a819ca19908d7a4cc21e7803f649b224a1020f141090e8f703e4da75", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1920.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-1920.png", + "bytes": 55222, + "sha256": "8af7493a48bb6c6c5c98e4bcc94edf71d35ffe14af6a3db4b696e2923f5f123b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-1920.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-320.before.html", + "bytes": 18235, + "sha256": "2a635423912976e0f7d6cc99e47ff9e669b8b355b542faa27b62924d68971a28", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-320.html", + "bytes": 18235, + "sha256": "2a635423912976e0f7d6cc99e47ff9e669b8b355b542faa27b62924d68971a28", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-320.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-320.json", + "bytes": 4498, + "sha256": "188c5498ec6159003e143423834a7aa6938d9f49a3ec7c85d742a2a4d453e52d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-320.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-320.png", + "bytes": 27824, + "sha256": "937c54b96421ca35ca308d9de0682e87350da227de26184abb7a3754220c5cd8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-320.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-390.before.html", + "bytes": 18235, + "sha256": "da528412b4f08c62c8ba769cd9b9dfc478a84976c339b57c9743fafd91e4ebac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-390.html", + "bytes": 18235, + "sha256": "da528412b4f08c62c8ba769cd9b9dfc478a84976c339b57c9743fafd91e4ebac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-390.json", + "bytes": 4502, + "sha256": "3db6af757d82478536320876a0a4cc7cc86ec41975d949545985f66a075ef3ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-390.png", + "bytes": 29700, + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-768.before.html", + "bytes": 18235, + "sha256": "332daa0d255caa5899f7aa121dfca63d9691a6ea22b08be21b36fe358125c200", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-768.html", + "bytes": 18235, + "sha256": "332daa0d255caa5899f7aa121dfca63d9691a6ea22b08be21b36fe358125c200", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-768.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-768.json", + "bytes": 4524, + "sha256": "dd95ca6fc9d1cd2bc995e8a97c30ae72c37bed8c09b38cf869c8263355556adc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-768.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-again-768.png", + "bytes": 49582, + "sha256": "b04709917a1a7c0571b29d18e84a1f98b2dbc9071ac2689281b8f7e2bde61968", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-again-768.png" + }, + { + "path": "operator/d3-final-browser-03/generated-error-text-200-390.before.html", + "bytes": 21083, + "sha256": "f3e85102aecc9303d5ff25eaffda807cf41d3444ed8bf1d6f72fce2f13565175", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-text-200-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-text-200-390.html", + "bytes": 21083, + "sha256": "f3e85102aecc9303d5ff25eaffda807cf41d3444ed8bf1d6f72fce2f13565175", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-text-200-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-error-text-200-390.json", + "bytes": 4506, + "sha256": "f623528e34fb1e7fccd23e840e1c9502f91966ba01d204592b1ecf7ad4a3aca3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-text-200-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-error-text-200-390.png", + "bytes": 49228, + "sha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-error-text-200-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1024.before.html", + "bytes": 19736, + "sha256": "9bce97b3f946570ac670b7ba0e5cbe0ec0dd2dc0cb3fd0159fe91a5f51dbe0c1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1024.html", + "bytes": 19736, + "sha256": "9bce97b3f946570ac670b7ba0e5cbe0ec0dd2dc0cb3fd0159fe91a5f51dbe0c1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1024.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1024.json", + "bytes": 4898, + "sha256": "09ed69e83dee153dcfcf86b3396f0a8bceb7b8513b51014c8a57262cf4b7e6d6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1024.json" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1024.png", + "bytes": 51830, + "sha256": "a0f976461b91b9595c61523d38a92ffeb29812b08ec7e43a9539782a8bbb1ad9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1024.png" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1440.before.html", + "bytes": 19736, + "sha256": "9cd399a50921668f33cde1ed70df59b680ac9282a44dcacaf7b479b9ea865cbe", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1440.html", + "bytes": 19736, + "sha256": "9cd399a50921668f33cde1ed70df59b680ac9282a44dcacaf7b479b9ea865cbe", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1440.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1440.json", + "bytes": 4900, + "sha256": "a113dd2bc8fce82da49447e11f2427ae3799c57e868e815d31a3cedc660b770e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1440.json" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1440.png", + "bytes": 54055, + "sha256": "a11ca95732178919c8ec6f957d8c8ce1e30376525fda5a4aace5b1870ac31dd2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1440.png" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1920.before.html", + "bytes": 19736, + "sha256": "14874ab71f36c95ca64bdcd3eb5f656f6c5a6f0fb72ff9f5f5adc57bd4a46e6b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1920.html", + "bytes": 19736, + "sha256": "14874ab71f36c95ca64bdcd3eb5f656f6c5a6f0fb72ff9f5f5adc57bd4a46e6b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1920.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1920.json", + "bytes": 4904, + "sha256": "f9784ce6975cbf0006b7e526e08a1fd7f67487354962cca52ac0163001f0db22", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1920.json" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-1920.png", + "bytes": 56277, + "sha256": "ef4cc1b5a4d754bcc95061400b93152dc8aa9b536e221e8b9dec376b3623860d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-1920.png" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-320.before.html", + "bytes": 19736, + "sha256": "f009a1ec5c5538c0c5bc1f078ce8070c810d3fa3709e6705ba2dfb4faee0042c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-320.html", + "bytes": 19736, + "sha256": "f009a1ec5c5538c0c5bc1f078ce8070c810d3fa3709e6705ba2dfb4faee0042c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-320.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-320.json", + "bytes": 4882, + "sha256": "eba49027b686d051cfec574abc3d529fb6e1738c01367c32f3cdc66485e1f7ba", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-320.json" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-320.png", + "bytes": 28623, + "sha256": "1ffeaf2cc5fcbb17e9fbc1dd7cfa1d46a42c460804fb45953b888760756df998", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-320.png" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-390.before.html", + "bytes": 19736, + "sha256": "b633586e65ea1710c3179a50fba99b6c286530fa0d2180104b4f43e54e7d46e0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-390.html", + "bytes": 19736, + "sha256": "b633586e65ea1710c3179a50fba99b6c286530fa0d2180104b4f43e54e7d46e0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-390.json", + "bytes": 4886, + "sha256": "919f9b1861ed7e8b243b04a43d3fb579c36cc962ff43b30fb6f562ee52fd4c5c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-390.png", + "bytes": 31565, + "sha256": "33ee4ebc7c01a3f826e4b66b873fa57610fce8cd9120df361172a40c3def033d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-768.before.html", + "bytes": 19736, + "sha256": "9f2c704770b4c42340d3598da93093bda55cf79ea910ad205ef68a8644db7532", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-768.html", + "bytes": 19736, + "sha256": "9f2c704770b4c42340d3598da93093bda55cf79ea910ad205ef68a8644db7532", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-768.html" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-768.json", + "bytes": 4871, + "sha256": "7e4b9963215262a407359174f1f42d59d60322a631832e1b86df469081dec80b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-768.json" + }, + { + "path": "operator/d3-final-browser-03/generated-recovered-768.png", + "bytes": 49385, + "sha256": "335650ac40dab0dbf9289b21fea9191ed2ed072bd43d63847810d026edb53f08", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-recovered-768.png" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1024.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1024.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1024.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1024.json", + "bytes": 1441, + "sha256": "bf71f827c6258d6850a61ffd3f44d5d49a579a8f50533c7e5b8995e599227732", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1024.json" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1024.png", + "bytes": 35614, + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1024.png" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1440.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1440.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1440.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1440.json", + "bytes": 1447, + "sha256": "ec64ee186c5090fb5b13eb0536c3d88caa2a51f55cf313b5321ef224d3ba7bf1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1440.json" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1440.png" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1920.before.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1920.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1920.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1920.json", + "bytes": 1447, + "sha256": "784b057efcc06117428ff64e758febd96fcead440f76cfd8bb1149a843077a42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1920.json" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-1920.png", + "bytes": 38890, + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-1920.png" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-320.before.html", + "bytes": 12162, + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-320.html", + "bytes": 12162, + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-320.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-320.json", + "bytes": 1429, + "sha256": "797209909becf655017daaaa1aa4c3561deb375c2cd86132540d874cdbc9a31d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-320.json" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-320.png", + "bytes": 27800, + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-320.png" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-390.before.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-390.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-390.json", + "bytes": 1429, + "sha256": "2c525457a1aba07685e72f49bc59d209bc18f57560f39c287848d0800f9458f2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-768.before.html", + "bytes": 12162, + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-768.html", + "bytes": 12162, + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-768.html" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-768.json", + "bytes": 1438, + "sha256": "c75f981b06d8509b77afe350c14ea252bc96e3ed341a3746f43eddc6746e6c33", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-768.json" + }, + { + "path": "operator/d3-final-browser-03/generated-reloaded-768.png", + "bytes": 34212, + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-reloaded-768.png" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1024.before.html", + "bytes": 14761, + "sha256": "6a2b277861fddc1c9b8d5d5c04608675e87cb1b0ff1dba099145b98805a064b7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1024.html", + "bytes": 14761, + "sha256": "6a2b277861fddc1c9b8d5d5c04608675e87cb1b0ff1dba099145b98805a064b7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1024.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1024.json", + "bytes": 2960, + "sha256": "5f0bf8dea5cd58549821744d98ac9f95da73d00b8f2f5217e60e13af57411751", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1024.json" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1024.png", + "bytes": 45309, + "sha256": "37d80b33fdd0769336860ba760072bca9682e6bef5d683e318a3f1752f3d6596", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1024.png" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1440.before.html", + "bytes": 14761, + "sha256": "f6a7d50b138436bd6d5ad5bcf72adb62568d19d43707a19193c7e3fa3070857f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1440.html", + "bytes": 14761, + "sha256": "f6a7d50b138436bd6d5ad5bcf72adb62568d19d43707a19193c7e3fa3070857f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1440.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1440.json", + "bytes": 2967, + "sha256": "a28da15d369adaad05e18e10240035df47bd14c334728dd0214a97b54b8d3b5e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1440.json" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1440.png", + "bytes": 47515, + "sha256": "83264c4288a5f0b7240a757a12571f7f292902ea890b426b9f4b5318dd3a85c7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1440.png" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1920.before.html", + "bytes": 14761, + "sha256": "f64f501220f8a0276d7a3bc5ab741d6c7a5c941a0cd77f2d75ccb7bc61131316", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1920.html", + "bytes": 14761, + "sha256": "f64f501220f8a0276d7a3bc5ab741d6c7a5c941a0cd77f2d75ccb7bc61131316", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1920.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1920.json", + "bytes": 2967, + "sha256": "5706a5988c38ce0d152a829c6e6f4dd7452998b3c4912bd0a8fe99e5194acc08", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1920.json" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-1920.png", + "bytes": 49151, + "sha256": "c6e314e7866c16a0a9fb893ab53e708b69d01cf1dfc91e175171021ad1563339", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-1920.png" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-320.before.html", + "bytes": 14761, + "sha256": "3fdff8dd2ec426a7eb057f3929eaa848287d708d6ef03d2056c72a6312eb5e81", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-320.html", + "bytes": 14761, + "sha256": "3fdff8dd2ec426a7eb057f3929eaa848287d708d6ef03d2056c72a6312eb5e81", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-320.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-320.json", + "bytes": 2958, + "sha256": "de17fa92bb7fb042e84db8d007b906105914069aa8eebc1c5fab248601a3b8e1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-320.json" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-320.png", + "bytes": 28849, + "sha256": "652934d39f0e3eb65357e59ab2312c57f16fe9c2c2c0e4791e407dc9303dc6ec", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-320.png" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-390.before.html", + "bytes": 14761, + "sha256": "9a6ae3a3b3ee5cfccf5b18dd2b430d95c8947deae9ed3f387c09e263b13d0cde", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-390.html", + "bytes": 14761, + "sha256": "9a6ae3a3b3ee5cfccf5b18dd2b430d95c8947deae9ed3f387c09e263b13d0cde", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-390.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-390.json", + "bytes": 2958, + "sha256": "e3f58331ed6cebaf94b12e2228cad3e04c98dae4475930aad27a3b5a03716475", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-390.json" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-390.png", + "bytes": 31695, + "sha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-390.png" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-768.before.html", + "bytes": 14761, + "sha256": "c10e18c5db05e195233a32d1edf484a915bed44fce4e84742a91f9498c76833c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-768.html", + "bytes": 14761, + "sha256": "c10e18c5db05e195233a32d1edf484a915bed44fce4e84742a91f9498c76833c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-768.html" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-768.json", + "bytes": 2975, + "sha256": "608dcc480ad05aa2d6f509de3185c8b78a85123b58ffe0e7d509776dba1bdf41", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-768.json" + }, + { + "path": "operator/d3-final-browser-03/generated-stopped-768.png", + "bytes": 43950, + "sha256": "d2e9ff544a462e6031dbfed0f425caf9bf1472afdadc02b5bd94ef233e6bb442", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\generated-stopped-768.png" + }, + { + "path": "operator/d3-final-browser-03/report.json", + "bytes": 577947, + "sha256": "76dd8ca1416225bd0f9abe0b524ced0299a86c975fb839cafa18551d04759f24", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\report.json" + }, + { + "path": "operator/d3-final-browser-03/source-accumulated-390.before.html", + "bytes": 86122, + "sha256": "cda586085a94bd048abe0d6a5d01f8ba4d47021806584558790352f4b67508b8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-accumulated-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-accumulated-390.html", + "bytes": 86122, + "sha256": "cda586085a94bd048abe0d6a5d01f8ba4d47021806584558790352f4b67508b8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-accumulated-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-accumulated-390.json", + "bytes": 28403, + "sha256": "8977d05241f0529107d785c5d2536e2896258bd583088176086cff623edc0365", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-accumulated-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-accumulated-390.png", + "bytes": 63085, + "sha256": "a98d959fb951441de714ee82308450b40628fdf83a422dba3ab14604d078d46f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-accumulated-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1024.before.html", + "bytes": 18277, + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1024.html", + "bytes": 18277, + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1024.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1024.json", + "bytes": 1709, + "sha256": "ede2876f19713dc531795df79fae94f1e4be1e6e59dde4c890d5a15c437dd3d5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1024.json" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1024.png", + "bytes": 76719, + "sha256": "1f1dcb02d9a8bc787a3c8f34284a37db509fe3c713c8cd2f1a0be280bec536bb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1024.png" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1440.before.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1440.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1440.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1440.json", + "bytes": 1715, + "sha256": "44f9802ac671da13c467ad5fd9e3283586cd10703eaa3cc653202c61ffe74a1f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1440.json" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1440.png", + "bytes": 84811, + "sha256": "d76544c99d3ac4bf70171cb55a4a984f5abb833b1b31ab3f17c971fb8ee13e3c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1440.png" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1920.before.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1920.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1920.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1920.json", + "bytes": 1717, + "sha256": "260c343e2494c57f66afb214a65220b03398ea2ca995d675370604361cb9632f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1920.json" + }, + { + "path": "operator/d3-final-browser-03/source-empty-1920.png", + "bytes": 87564, + "sha256": "d15109fef507a1ff5c03ee7e219148e97c5d4cea7087eac04d48f8145a750aeb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-1920.png" + }, + { + "path": "operator/d3-final-browser-03/source-empty-320.before.html", + "bytes": 18277, + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-320.html", + "bytes": 18277, + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-320.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-320.json", + "bytes": 1702, + "sha256": "8c49d01652d8a2b38a4b49aa70554305b1b5c5a5f9c8dffc59a28619cdee5568", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-320.json" + }, + { + "path": "operator/d3-final-browser-03/source-empty-320.png", + "bytes": 57493, + "sha256": "a62e4eb88af10918e0ad7ad40deb6f0c6e3e9482bada71e9a316054d12f14e44", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-320.png" + }, + { + "path": "operator/d3-final-browser-03/source-empty-390.before.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-390.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-390.json", + "bytes": 1702, + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-empty-390.png", + "bytes": 58620, + "sha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-empty-768.before.html", + "bytes": 18277, + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-768.html", + "bytes": 18277, + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-768.html" + }, + { + "path": "operator/d3-final-browser-03/source-empty-768.json", + "bytes": 1723, + "sha256": "727077405ce6cf0d1b2b56d4dc0b62cd2cf8f91a0c13ec45e7d14f912ac6a880", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-768.json" + }, + { + "path": "operator/d3-final-browser-03/source-empty-768.png", + "bytes": 77232, + "sha256": "0e831f09beeba076c2b20de1a4d87afd5e312efe5ad5a0c82f8b76842de7463b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-empty-768.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-1024.before.html", + "bytes": 31169, + "sha256": "e553008bedfc8c779e1aca0aed9f21f0f71892bd41833c89af142313a4e45176", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-1024.html", + "bytes": 31169, + "sha256": "e553008bedfc8c779e1aca0aed9f21f0f71892bd41833c89af142313a4e45176", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1024.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-1024.json", + "bytes": 5908, + "sha256": "47f71ee461942f04a9f20ea9761d21911e447ed777780023eeb75627027b87ab", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1024.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-1024.png", + "bytes": 128884, + "sha256": "b381afd9f7491eacf6a037ceccdb12f2569d41517d332d0de8f32c54f0efc544", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1024.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-1440.before.html", + "bytes": 31169, + "sha256": "41fcbe79d81022e7a960a8bb9328923fc34cb7defdbdb84796d4fe76ecb53ac3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-1440.html", + "bytes": 31169, + "sha256": "41fcbe79d81022e7a960a8bb9328923fc34cb7defdbdb84796d4fe76ecb53ac3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1440.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-1440.json", + "bytes": 5922, + "sha256": "5ee19e2c30ca7a72425d05c7933872c423762cb05903081c441f9b5a296b7cd7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1440.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-1440.png", + "bytes": 144304, + "sha256": "7c4827c0c1db231e6bc77de6fad921d2a49e101088f96d5d9b15118b23a663cb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1440.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-1920.before.html", + "bytes": 31169, + "sha256": "cf319e2bddb9dd1617bfcda584096781a0c8ebe4531e20b4adcafd2e1bd25950", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-1920.html", + "bytes": 31169, + "sha256": "cf319e2bddb9dd1617bfcda584096781a0c8ebe4531e20b4adcafd2e1bd25950", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1920.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-1920.json", + "bytes": 5925, + "sha256": "3e3f387a51adf6b75f054e02682f15c9e69f67df0a20b1ac550cb7a208f501f5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1920.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-1920.png", + "bytes": 147532, + "sha256": "0dd49d3a3361769a55fd9b85464a8c162131053d49cc9dbd332fbe3354bfbe36", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-1920.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-320.before.html", + "bytes": 31169, + "sha256": "6c386eb711883bbe758651a97d5cd1a34c7253abadc9702adaa845b70a6a75fc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-320.html", + "bytes": 31169, + "sha256": "6c386eb711883bbe758651a97d5cd1a34c7253abadc9702adaa845b70a6a75fc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-320.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-320.json", + "bytes": 5904, + "sha256": "a76329ce047c1f2b281868ea0ae4f4a44a8da8652f61da354c8a6b3bfe7e99c4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-320.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-320.png", + "bytes": 43791, + "sha256": "44c7e1467f62779beab1c0183ffe4514eb6fe13b34535663c9c38b6f1933a2f9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-320.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-390.before.html", + "bytes": 31169, + "sha256": "e41e344d41614a74f81c12b6048d07a41aa37dcb2cac3d496a6f04b4399a2958", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-390.html", + "bytes": 31169, + "sha256": "e41e344d41614a74f81c12b6048d07a41aa37dcb2cac3d496a6f04b4399a2958", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-390.json", + "bytes": 5899, + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-390.png", + "bytes": 58164, + "sha256": "4c0ec09af5cd6b81a74dc757af114d0b0af8298d7f1554eea6175132903036e8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-768.before.html", + "bytes": 31169, + "sha256": "3cea10bb8724cf16065e3590a9f84e673f06344cd2a01444221b56cad60372cd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-768.html", + "bytes": 31169, + "sha256": "3cea10bb8724cf16065e3590a9f84e673f06344cd2a01444221b56cad60372cd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-768.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-768.json", + "bytes": 5927, + "sha256": "913126dff6202cfe9571f31351c74fe36bd9243cc5ca45be239d4debb11f0448", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-768.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-768.png", + "bytes": 95358, + "sha256": "53662466a8e63ee63c22ef3048470ef87953482e9a26f76930cd0c8794b75328", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-768.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1024.before.html", + "bytes": 31169, + "sha256": "335a0b2107d52542902df88b616c64a58489fff420c320d3164bc0c7e4a31db1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1024.html", + "bytes": 31169, + "sha256": "335a0b2107d52542902df88b616c64a58489fff420c320d3164bc0c7e4a31db1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1024.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1024.json", + "bytes": 5908, + "sha256": "47f71ee461942f04a9f20ea9761d21911e447ed777780023eeb75627027b87ab", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1024.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1024.png", + "bytes": 128461, + "sha256": "97835197502d12bd65dd9a1fe6e859da8892a2251871bf263c1daae2808b3033", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1024.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1440.before.html", + "bytes": 31169, + "sha256": "677b47b9f59f62898a937fb9833211778e512d32468a25af7f8be58c3570bd51", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1440.html", + "bytes": 31169, + "sha256": "677b47b9f59f62898a937fb9833211778e512d32468a25af7f8be58c3570bd51", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1440.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1440.json", + "bytes": 5918, + "sha256": "ff0a36f9e62a3e0e18996d3645809fdbd0b7d38dc8b7352c737f930779c43375", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1440.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1440.png", + "bytes": 143678, + "sha256": "2d93b1676903b446f2e89ef6d62d674198ad1b5daf033ab2c0398ea48c348537", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1440.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1920.before.html", + "bytes": 31169, + "sha256": "5f6d472525009ad331ac226f5afb0595b46f7e8ae5abd33efc26dfb25dfa424a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1920.html", + "bytes": 31169, + "sha256": "5f6d472525009ad331ac226f5afb0595b46f7e8ae5abd33efc26dfb25dfa424a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1920.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1920.json", + "bytes": 5925, + "sha256": "3e3f387a51adf6b75f054e02682f15c9e69f67df0a20b1ac550cb7a208f501f5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1920.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-1920.png", + "bytes": 148281, + "sha256": "fd6ec63d65548c8b6d3ca5558fe5f8758dc84134daa518e3aa7d31d74748f580", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-1920.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-320.before.html", + "bytes": 31169, + "sha256": "fe4794d61ddb453b58bb3a0574c0a44a7fcc6be535f490c14c94049a960f92d0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-320.html", + "bytes": 31169, + "sha256": "fe4794d61ddb453b58bb3a0574c0a44a7fcc6be535f490c14c94049a960f92d0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-320.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-320.json", + "bytes": 5900, + "sha256": "82dfea2ac32f8f1fe1d03d22017e0f602fe1e0f94b8bd86153a9835acc6a61f3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-320.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-320.png", + "bytes": 44396, + "sha256": "1de10380e5438e19a7e0c6e19690cfdbb24cc1822a01dc28fd8dc411c937a2ca", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-320.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-390.before.html", + "bytes": 31169, + "sha256": "10c7b663d6011ac66410f6ebbce0e2f3ff147ba78a4f6edeedd162e17fad42cd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-390.html", + "bytes": 31169, + "sha256": "10c7b663d6011ac66410f6ebbce0e2f3ff147ba78a4f6edeedd162e17fad42cd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-390.json", + "bytes": 5899, + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-390.png", + "bytes": 58882, + "sha256": "1d8241a055cfaeb73eb0a25a1cc110e4ac50c9409e58035754c1896fb8bd1e8e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-768.before.html", + "bytes": 31169, + "sha256": "d892de46b7fbe83d7641f8318d7921ea185d885ea811a9a76fb268b6ffd8ba2b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-768.html", + "bytes": 31169, + "sha256": "d892de46b7fbe83d7641f8318d7921ea185d885ea811a9a76fb268b6ffd8ba2b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-768.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-768.json", + "bytes": 5923, + "sha256": "1ee677e15820c0634a102a07dd99781030db38f7dd86cfe815eaaf88053fc74f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-768.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-again-768.png", + "bytes": 95382, + "sha256": "0e9234dad7bd90d049e43078933c4d4e9caf3196d44c94f89b7409be6c6e7cac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-again-768.png" + }, + { + "path": "operator/d3-final-browser-03/source-error-text-200-390.before.html", + "bytes": 34627, + "sha256": "635ad2633109d1b6c14560008a5610cb4140883b4f2e64b8aa8df364056e2370", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-text-200-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-text-200-390.html", + "bytes": 34627, + "sha256": "635ad2633109d1b6c14560008a5610cb4140883b4f2e64b8aa8df364056e2370", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-text-200-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-error-text-200-390.json", + "bytes": 5891, + "sha256": "9e7860273aad6cb70d41aa493f23df595335e8b9b7f32cfa74208bca04c4f0ab", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-text-200-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-error-text-200-390.png", + "bytes": 73249, + "sha256": "2d2c6213cf705762e21755eabebddcf2d20c07c01a2e505125107c95c0e77f4b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-error-text-200-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1024.before.html", + "bytes": 33646, + "sha256": "f02a4a6fccf701e01a35aa8c39e857ac0f832610164e934d66bbe3b0d60337a3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1024.html", + "bytes": 33646, + "sha256": "f02a4a6fccf701e01a35aa8c39e857ac0f832610164e934d66bbe3b0d60337a3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1024.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1024.json", + "bytes": 6720, + "sha256": "7fb180c6286013944831d8ddef09b36883ba273908b8f74ff1ae8a1f8da6eba7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1024.json" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1024.png", + "bytes": 135585, + "sha256": "92ccbdfce3e0995faf70ad1939d12f8d6f8ad2ecf9727ee11df9f51467879343", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1024.png" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1440.before.html", + "bytes": 33646, + "sha256": "154964016222b6c1a1e7aae1d5a39ac1c1b4bf5fc18d99a9e8c7bdaf164cc1fa", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1440.html", + "bytes": 33646, + "sha256": "154964016222b6c1a1e7aae1d5a39ac1c1b4bf5fc18d99a9e8c7bdaf164cc1fa", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1440.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1440.json", + "bytes": 6723, + "sha256": "06b0c8772672c8c540bdf19a9a6998610ec44597c062617bb734e19dea24c7cf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1440.json" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1440.png", + "bytes": 149978, + "sha256": "ccf4f2074df5b75ae9e53203f6683046d4a07119c0aa39cf40cd234ed1972516", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1440.png" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1920.before.html", + "bytes": 33646, + "sha256": "13230db9d544e4360191b568e56ea867b0bd65f60669a8947b55fd4c07696bdd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1920.html", + "bytes": 33646, + "sha256": "13230db9d544e4360191b568e56ea867b0bd65f60669a8947b55fd4c07696bdd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1920.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1920.json", + "bytes": 6729, + "sha256": "76e4f68e794708d8b4be5f8c4b1f2082272f5617e7276993b76b289c43bd2dcf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1920.json" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-1920.png", + "bytes": 153852, + "sha256": "c54cc28181262b58434cc5ef9d1eedefa4b339d341e06a6659ce8ae1b20d64d0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-1920.png" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-320.before.html", + "bytes": 33646, + "sha256": "de3c5a3ee1edb4fe3a58890088d96d9a37e86e1134cb3c577bdda5dd0b414a54", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-320.html", + "bytes": 33646, + "sha256": "de3c5a3ee1edb4fe3a58890088d96d9a37e86e1134cb3c577bdda5dd0b414a54", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-320.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-320.json", + "bytes": 6713, + "sha256": "107dd9fba874a78c5b9b2d70c0a016ebb76554ae2c5335a661626d8c7ed34bb7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-320.json" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-320.png", + "bytes": 47462, + "sha256": "f710fb7b3a81a6b996172ecad176745a6aca8fa6ed8cabfc1beed3553c6c3415", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-320.png" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-390.before.html", + "bytes": 33646, + "sha256": "4d08085c951fa3fa1f428eb8bcd6fdb9113fa8c027c8805fa8265644b88a6151", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-390.html", + "bytes": 33646, + "sha256": "4d08085c951fa3fa1f428eb8bcd6fdb9113fa8c027c8805fa8265644b88a6151", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-390.json", + "bytes": 6717, + "sha256": "2f228584dd5b101347fecb1ac11f22ce41b69b7e55636bcd677337c1e5b65aec", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-390.png", + "bytes": 62410, + "sha256": "3be1d4d87ab86cd042f7a2e2409df9521bcd3d0185e5490a9bdebdfc2322c589", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-768.before.html", + "bytes": 33646, + "sha256": "8cbb83779555a7a2883e88841c0fd2d1d8492c0786620cb122ae6b73fff148cc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-768.html", + "bytes": 33646, + "sha256": "8cbb83779555a7a2883e88841c0fd2d1d8492c0786620cb122ae6b73fff148cc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-768.html" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-768.json", + "bytes": 6725, + "sha256": "cf4917458a2da22f6713825f75bf94fb9638d0f0cfefd2a8bd356f3f5bb6b69a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-768.json" + }, + { + "path": "operator/d3-final-browser-03/source-recovered-768.png", + "bytes": 102890, + "sha256": "d6426e2c8551db0ea54785c9752fd126c43dadc7c68a6639b7ae762cf9e2ded0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-recovered-768.png" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1024.before.html", + "bytes": 18277, + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1024.html", + "bytes": 18277, + "sha256": "cf2d529c5ac25eb459d2114e1470ddb33e2052932b611d59dfda5dee33d35b34", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1024.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1024.json", + "bytes": 1709, + "sha256": "ede2876f19713dc531795df79fae94f1e4be1e6e59dde4c890d5a15c437dd3d5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1024.json" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1024.png", + "bytes": 76675, + "sha256": "28a5b8cbc04f9676ec6e93efc0abef0dc688bfc28e428e1f11dde8ad94a15047", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1024.png" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1440.before.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1440.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1440.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1440.json", + "bytes": 1715, + "sha256": "44f9802ac671da13c467ad5fd9e3283586cd10703eaa3cc653202c61ffe74a1f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1440.json" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1440.png", + "bytes": 84775, + "sha256": "af46f2737897dc01909a26e05dfcc40315a367b28e8cd459750e635793859608", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1440.png" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1920.before.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1920.html", + "bytes": 18277, + "sha256": "d76db8006a9d21fcee951b460aa90a2c5b7730ae741fa69494908e441131c21d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1920.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1920.json", + "bytes": 1717, + "sha256": "260c343e2494c57f66afb214a65220b03398ea2ca995d675370604361cb9632f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1920.json" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-1920.png", + "bytes": 87561, + "sha256": "bbe8000a70f12ef30e269a508730b96a71569d75555526ae2c85cc1c29434a9b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-1920.png" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-320.before.html", + "bytes": 18277, + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-320.html", + "bytes": 18277, + "sha256": "58e4a83414443c9269ce6fbf981d2cce767b1a4edf66bab125bee9734ebab981", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-320.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-320.json", + "bytes": 1702, + "sha256": "8c49d01652d8a2b38a4b49aa70554305b1b5c5a5f9c8dffc59a28619cdee5568", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-320.json" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-320.png", + "bytes": 57478, + "sha256": "79fb416362b6d91c86f3287cf855f7c98c746abe4be85d9bfba3f7cd670956f2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-320.png" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-390.before.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-390.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-390.json", + "bytes": 1702, + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-390.png", + "bytes": 58601, + "sha256": "ff6103598e731b2f89b6f9eec44f4d3f1e901d905cb37c4b3139d4a30aa31de8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-768.before.html", + "bytes": 18277, + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-768.html", + "bytes": 18277, + "sha256": "9f7a18a96ac361751bb52bd33fe3f1b788b4d78f00a5474a00d2049e1ad75985", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-768.html" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-768.json", + "bytes": 1723, + "sha256": "727077405ce6cf0d1b2b56d4dc0b62cd2cf8f91a0c13ec45e7d14f912ac6a880", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-768.json" + }, + { + "path": "operator/d3-final-browser-03/source-reloaded-768.png", + "bytes": 77201, + "sha256": "8ff8dc987409066bd07225af18517486c5b5c6f813cfdd5504cc76c2ad83942e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-reloaded-768.png" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1024.before.html", + "bytes": 25903, + "sha256": "67ae30f361414c14a0e3370ac1374545310b84031cdf10867fbc07a27e9a535d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1024.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1024.html", + "bytes": 25903, + "sha256": "67ae30f361414c14a0e3370ac1374545310b84031cdf10867fbc07a27e9a535d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1024.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1024.json", + "bytes": 3794, + "sha256": "f856be09c38311c976f3fa8bced7e7e691c824bee145f46918deadd9b8d9b2e7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1024.json" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1024.png", + "bytes": 131813, + "sha256": "974cf22ed8518165144d257bc4eb9a4b179f7ec79baa5badb74038deb6ecd39f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1024.png" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1440.before.html", + "bytes": 25903, + "sha256": "e99e9e91522bd3e50baaf80dc8633bfb85aa7dfe53f8cbb2d52c593ba9b2c406", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1440.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1440.html", + "bytes": 25903, + "sha256": "e99e9e91522bd3e50baaf80dc8633bfb85aa7dfe53f8cbb2d52c593ba9b2c406", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1440.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1440.json", + "bytes": 3811, + "sha256": "d5b8ffa3745e3270bbbf6b26325c4cc6ec1c089a8367934ffbe3ae86ea6762ed", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1440.json" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1440.png", + "bytes": 142862, + "sha256": "e370868af0ecaaca436356008fc24545265e37c63ecb2e8b9fdfdd99fd1a8212", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1440.png" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1920.before.html", + "bytes": 25903, + "sha256": "adb8e6f298ffe081b6c79523af3996bb2e95ccbaf9c1dc31d2968862cc63895f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1920.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1920.html", + "bytes": 25903, + "sha256": "adb8e6f298ffe081b6c79523af3996bb2e95ccbaf9c1dc31d2968862cc63895f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1920.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1920.json", + "bytes": 3814, + "sha256": "0ae98020ee1f42f82bd2deb850ddb436256ac8777fb87e3ebdb94f462f6047d5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1920.json" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-1920.png", + "bytes": 147287, + "sha256": "ce6b21480ba81a5c5b0d172dcd7b44b4fcaf999c4fcd7696fbc3b63305ca6dc3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-1920.png" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-320.before.html", + "bytes": 25903, + "sha256": "4b4a1f56a824d930787f3288ee8ce29e1013d2ed61757a94ea68932c7e29af60", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-320.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-320.html", + "bytes": 25903, + "sha256": "4b4a1f56a824d930787f3288ee8ce29e1013d2ed61757a94ea68932c7e29af60", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-320.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-320.json", + "bytes": 3791, + "sha256": "a520606f96c1a0e08d83b3f0c1821bd1e74c514aa2bb5a85cddbc7d66165a077", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-320.json" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-320.png", + "bytes": 44734, + "sha256": "12ff4ab7c4bf5c9d15fa6cd71d5b5d43d2684f73b2ff6dc4d84e26ff711ea8a8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-320.png" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-390.before.html", + "bytes": 25903, + "sha256": "c3cef1789fbc8e9e327a86ffdea8e54bb90d062fb7813c5bc18caba4768fb6b6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-390.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-390.html", + "bytes": 25903, + "sha256": "c3cef1789fbc8e9e327a86ffdea8e54bb90d062fb7813c5bc18caba4768fb6b6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-390.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-390.json", + "bytes": 3790, + "sha256": "1aff41667b5c71a7a8837fd32990a1da65f759dd33eeb51427d048c26e2372d1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-390.json" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-390.png", + "bytes": 61815, + "sha256": "75dfacf045b4fb2ef8fb3e8aec88f3f5662bbfe513fed7cddfd1dfa2bd31a642", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-390.png" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-768.before.html", + "bytes": 25903, + "sha256": "7e37c2ab68fe793a202f44c3b6cbd5e04d8e3d07086a79e33c0b7dd2bb5a4c1a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-768.before.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-768.html", + "bytes": 25903, + "sha256": "7e37c2ab68fe793a202f44c3b6cbd5e04d8e3d07086a79e33c0b7dd2bb5a4c1a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-768.html" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-768.json", + "bytes": 3818, + "sha256": "5ea3551f00031a2024574e1cd3306b6889ab70d488ccd409f8d3210ed568f8a2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-768.json" + }, + { + "path": "operator/d3-final-browser-03/source-stopped-768.png", + "bytes": 109462, + "sha256": "b2466d0ff97cf542a63593b904a50661332abb1189084f966d03a1152ad93396", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03\\source-stopped-768.png" + }, + { + "path": "operator/d3-final-browser-03.stderr", + "bytes": 957, + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03.stderr" + }, + { + "path": "operator/d3-final-browser-03.stdout", + "bytes": 205, + "sha256": "a592d7c4ae366440302991fd057976fa66727bc0590b5759b58e686eeedbcd05", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03.stdout" + }, + { + "path": "operator/d3-final-build.stderr", + "bytes": 342, + "sha256": "aa9b7207d2d2d42fbf4e013331ee76fc39b9b042505b38551893c1f60f35b63a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-build.stderr" + }, + { + "path": "operator/d3-final-build.stdout", + "bytes": 604, + "sha256": "be9dc75957812cac470f8d40434ab7baf382dd612a5cd87ba1297ade132c181c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-build.stdout" + }, + { + "path": "operator/d3-final-commands.json", + "bytes": 3360, + "sha256": "c50027c7830d7e61e42fdd3c18cbd4dbb96e42793f187d2f05a5e1f79f554f69", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-commands.json" + }, + { + "path": "operator/d3-final-diff-check.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-diff-check.stderr" + }, + { + "path": "operator/d3-final-diff-check.stdout", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-diff-check.stdout" + }, + { + "path": "operator/d3-final-examples-guidance-smoke.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-examples-guidance-smoke.stderr" + }, + { + "path": "operator/d3-final-examples-guidance-smoke.stdout", + "bytes": 140, + "sha256": "a76988d0455da311e5797878cecd1be495ffe63b33e13660346e8e5c9e6d4145", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-examples-guidance-smoke.stdout" + }, + { + "path": "operator/d3-final-lf-normalization.json", + "bytes": 1911, + "sha256": "ad3946ae3f0820a256a0b839baa87ee13cbe90af699928eb835e1b4d23449a2f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-lf-normalization.json" + }, + { + "path": "operator/d3-final-metadata-checks.json", + "bytes": 352, + "sha256": "97bfce3ca8caf4426cbed16abd81411f11bc5e5c542128767a2edcd700e1a3fa", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-metadata-checks.json" + }, + { + "path": "operator/d3-final-prose.txt", + "bytes": 5982, + "sha256": "2f4a73aadbf1e87b479d202c9bf5e7a1cd936f159dc5292844f59c18048f91d0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-prose.txt" + }, + { + "path": "operator/d3-final-secret-scan.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-secret-scan.stderr" + }, + { + "path": "operator/d3-final-secret-scan.stdout", + "bytes": 141, + "sha256": "1574dfc9f9dc1c7175652ec851b5944d2d6b0ee97ad1afbcf989783f2090ce34", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-secret-scan.stdout" + }, + { + "path": "operator/d3-final-test.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-test.stderr" + }, + { + "path": "operator/d3-final-test.stdout", + "bytes": 1251, + "sha256": "415a30904771db5a1a8eaeea6001ef3d5022750dbef6055a0f08d881afc20279", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-test.stdout" + }, + { + "path": "operator/d3-final-tours-validate.stderr", + "bytes": 925, + "sha256": "578309586345b873d69f513fcf383357afb83fdbf8edc8fddbda8774c7ec7d8d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-tours-validate.stderr" + }, + { + "path": "operator/d3-final-tours-validate.stdout", + "bytes": 69, + "sha256": "dc8b18d469f3ea284dc0a307e769a6bb99d249514925c4d43c316425248704a9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-tours-validate.stdout" + }, + { + "path": "operator/d3-final-typecheck.command.json", + "bytes": 117, + "sha256": "9b888dae88823ee1d9e4938e3a961e5bd033289f3979451e04f40dda55541787", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-typecheck.command.json" + }, + { + "path": "operator/d3-final-typecheck.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-typecheck.stderr" + }, + { + "path": "operator/d3-final-typecheck.stdout", + "bytes": 45, + "sha256": "1611f2f8467e52eeae9fc30b4f851e7b429aec602524637ddd6f4a9a58d6ae5f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-typecheck.stdout" + }, + { + "path": "operator/d3-first-typecheck.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-first-typecheck.stderr" + }, + { + "path": "operator/d3-first-typecheck.stdout", + "bytes": 45, + "sha256": "1611f2f8467e52eeae9fc30b4f851e7b429aec602524637ddd6f4a9a58d6ae5f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-first-typecheck.stdout" + }, + { + "path": "operator/d3-focus-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "bytes": 5320, + "sha256": "8c3c452e944de438b6449be63f5cbc9b38102fa50dc7c5a8e50c2699914c552f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-focus-before\\examples\\apps\\chat-ui\\template\\src\\nodeagent-chat\\NodeAgentChatApp.jsx" + }, + { + "path": "operator/d3-focus-before/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "bytes": 4444, + "sha256": "04e64097b0c543254f59694d6a85e86f5892ba245ad308780af3013ef1284fb8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-focus-before\\src\\features\\node-agent\\components\\NodeAgentThread.tsx" + }, + { + "path": "operator/d3-generated-boundary-01.command.json", + "bytes": 52, + "sha256": "35d95e32b577ec1614b54f2a181df91e87f05eb2be066a165df2666d8ccdef56", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-boundary-01.command.json" + }, + { + "path": "operator/d3-generated-boundary-01.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-boundary-01.stderr" + }, + { + "path": "operator/d3-generated-boundary-01.stdout", + "bytes": 206, + "sha256": "d3207ae164ec553d27128337bafcf866847453c57306650b5584846eeeac432a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-boundary-01.stdout" + }, + { + "path": "operator/d3-generated-boundary-02.command.json", + "bytes": 52, + "sha256": "23a0c22580d00eaa8f0f616d4f1cb4c29c70eab2010a093bec6252b5cd5fa5fe", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-boundary-02.command.json" + }, + { + "path": "operator/d3-generated-boundary-02.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-boundary-02.stderr" + }, + { + "path": "operator/d3-generated-boundary-02.stdout", + "bytes": 206, + "sha256": "d3207ae164ec553d27128337bafcf866847453c57306650b5584846eeeac432a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-boundary-02.stdout" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-1440.after.html", + "bytes": 14623, + "sha256": "93802404a4ff289806f9540d10a8841cec309d644c1021fadbd2db2133b97be7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-1440.after.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-1440.before.html", + "bytes": 14623, + "sha256": "93802404a4ff289806f9540d10a8841cec309d644c1021fadbd2db2133b97be7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-1440.before.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-1440.html", + "bytes": 14623, + "sha256": "93802404a4ff289806f9540d10a8841cec309d644c1021fadbd2db2133b97be7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-1440.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-1440.png", + "bytes": 47462, + "sha256": "5a572d368b6e666892fa186814393ec7db29a4801bf9a048fcb9a74b84391528", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-1440.png" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-390.after.html", + "bytes": 14623, + "sha256": "fc96fe9a6a8f6823aae8e6e2d51cd087c2f139e9cb71818f1e0a704ed81916fb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-390.after.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-390.before.html", + "bytes": 14623, + "sha256": "fc96fe9a6a8f6823aae8e6e2d51cd087c2f139e9cb71818f1e0a704ed81916fb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-390.before.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-390.html", + "bytes": 14623, + "sha256": "fc96fe9a6a8f6823aae8e6e2d51cd087c2f139e9cb71818f1e0a704ed81916fb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-390.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-error-390.png", + "bytes": 35598, + "sha256": "b36a7a967eef092af86ff1417cc142b8182bf05e335915027c18b31f530e95e2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-error-390.png" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-1440.after.html", + "bytes": 11429, + "sha256": "5c123d864606c7128fd6393efee5afc385ef6b19507e1f264507ac8e8ea43754", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-1440.after.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-1440.before.html", + "bytes": 11429, + "sha256": "5c123d864606c7128fd6393efee5afc385ef6b19507e1f264507ac8e8ea43754", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-1440.before.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-1440.html", + "bytes": 11429, + "sha256": "5c123d864606c7128fd6393efee5afc385ef6b19507e1f264507ac8e8ea43754", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-1440.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-1440.png", + "bytes": 28413, + "sha256": "4f9cb8fedbf3fb25f07292e9624c521a078c1cce713fe440b36d8479b8a409cc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-1440.png" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-390.after.html", + "bytes": 11429, + "sha256": "477a30d738a7db9e316dd46450d85ab47b260a34f3f561dbf0a352c7af29fb56", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-390.after.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-390.before.html", + "bytes": 11429, + "sha256": "477a30d738a7db9e316dd46450d85ab47b260a34f3f561dbf0a352c7af29fb56", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-390.before.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-390.html", + "bytes": 11429, + "sha256": "477a30d738a7db9e316dd46450d85ab47b260a34f3f561dbf0a352c7af29fb56", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-390.html" + }, + { + "path": "operator/d3-generated-matched-after/generated-running-390.png", + "bytes": 23160, + "sha256": "c3c92b4a3907ad40dbc766b7d20ac8449228fcbeb6f47e1cacb1962b2330314e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\generated-running-390.png" + }, + { + "path": "operator/d3-generated-matched-after/report.json", + "bytes": 67162, + "sha256": "0ac3c1b23adee9509c4af8d3bd38bda1299767760cfba8ca02d9bb4ff9dc328c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after\\report.json" + }, + { + "path": "operator/d3-generated-matched-after-replay.command.json", + "bytes": 262, + "sha256": "dbf4e6f44970b71deb31420fd656478fa3771c0f2371a606f26ae0a0e34837d2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after-replay.command.json" + }, + { + "path": "operator/d3-generated-matched-after-replay.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after-replay.stderr" + }, + { + "path": "operator/d3-generated-matched-after-replay.stdout", + "bytes": 200, + "sha256": "81849c8fc4e0f312f9f700a75b64872b1c7ccc07f3603f3708e4af2a49e8f90a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after-replay.stdout" + }, + { + "path": "operator/d3-generated-matched-after.command.json", + "bytes": 264, + "sha256": "4965158868507ed28ce0c9713c0bbafb94297a53377f185f33ba5fc12effdaf1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after.command.json" + }, + { + "path": "operator/d3-generated-matched-after.stderr", + "bytes": 1621, + "sha256": "a6262f3bc18d1e059bbe7c260ae0dfa6f35ae37facac2d98ca69231ca4cb97e4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after.stderr" + }, + { + "path": "operator/d3-generated-matched-after.stdout", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-generated-matched-after.stdout" + }, + { + "path": "operator/d3-handoff-packaged-before.md.txt", + "bytes": 3118, + "sha256": "17e983697edaf77f341bf588e4618e0cb53f46d6e04ef8e8f9f4914c3ab00d98", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-handoff-packaged-before.md.txt" + }, + { + "path": "operator/d3-host-install-02.stderr", + "bytes": 150, + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-host-install-02.stderr" + }, + { + "path": "operator/d3-host-install-02.stdout", + "bytes": 144, + "sha256": "9c0a23925ed0f61c116e515f3ac86f72484b07c39ca88f666e1308367904c430", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-host-install-02.stdout" + }, + { + "path": "operator/d3-host-install-03.stderr", + "bytes": 150, + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-host-install-03.stderr" + }, + { + "path": "operator/d3-host-install-03.stdout", + "bytes": 144, + "sha256": "f42cbf23e239333ad2c9df50f1b39047eb7f0135eaccd1f8890010b7afba7002", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-host-install-03.stdout" + }, + { + "path": "operator/d3-host-install.stderr", + "bytes": 150, + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-host-install.stderr" + }, + { + "path": "operator/d3-host-install.stdout", + "bytes": 144, + "sha256": "38d4a818c8f81e88f34d665cd8e9a9684dd2d78fabf44910dea82f70b3b52487", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-host-install.stdout" + }, + { + "path": "operator/d3-installed-consumer-02.json", + "bytes": 38387, + "sha256": "62b48f27af6329f3122d4d578a11dc654189edb5c87cc3b2650992ce93396912", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-consumer-02.json" + }, + { + "path": "operator/d3-installed-consumer-03.json", + "bytes": 38387, + "sha256": "1e04ecb75be184c4669c8d3fd3e8f3e1fb498e05366d4fbc43f970dcb7560200", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-consumer-03.json" + }, + { + "path": "operator/d3-installed-consumer.json", + "bytes": 38384, + "sha256": "fae10ad9b9215f01e61d6f54131a151c4bc6e954d0e445efdde0cae90ffb43fd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-consumer.json" + }, + { + "path": "operator/d3-installed-doctor-02.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-doctor-02.stderr" + }, + { + "path": "operator/d3-installed-doctor-02.stdout", + "bytes": 1118, + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-doctor-02.stdout" + }, + { + "path": "operator/d3-installed-doctor-03.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-doctor-03.stderr" + }, + { + "path": "operator/d3-installed-doctor-03.stdout", + "bytes": 1118, + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-doctor-03.stdout" + }, + { + "path": "operator/d3-installed-doctor.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-doctor.stderr" + }, + { + "path": "operator/d3-installed-doctor.stdout", + "bytes": 1118, + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-doctor.stdout" + }, + { + "path": "operator/d3-installed-scaffold-02.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-scaffold-02.stderr" + }, + { + "path": "operator/d3-installed-scaffold-02.stdout", + "bytes": 2049, + "sha256": "e6a0b0802dcae37f0871edbb9529c6de8c267fbdd76e7d25d778fdac29399465", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-scaffold-02.stdout" + }, + { + "path": "operator/d3-installed-scaffold-03.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-scaffold-03.stderr" + }, + { + "path": "operator/d3-installed-scaffold-03.stdout", + "bytes": 2049, + "sha256": "97ee1203b2491dd31963beb8a254e988303431bd1c7774216518701d2a29bdcb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-scaffold-03.stdout" + }, + { + "path": "operator/d3-installed-scaffold.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-scaffold.stderr" + }, + { + "path": "operator/d3-installed-scaffold.stdout", + "bytes": 2043, + "sha256": "d6c942e15a568d6f223322b485ad439264f825f12ae3ac6fda097d6e0fe1fe9b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-installed-scaffold.stdout" + }, + { + "path": "operator/d3-keyboard-citation-relocation.json", + "bytes": 197, + "sha256": "245409157ef54aebccec0e58ffd6fcc482f9dd9335a8969daaaaa49193ff455a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-citation-relocation.json" + }, + { + "path": "operator/d3-keyboard-focus-before.tsx.txt", + "bytes": 5161, + "sha256": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-focus-before.tsx.txt" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/change-boundary.md.txt", + "bytes": 715, + "sha256": "d91dfa0a68b04f01cc66b0bcc67d7726e502616618789a8128a8bbe0ef966310", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\change-boundary.md" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/change-boundary.png", + "bytes": 76297, + "sha256": "8559c7727d6c0a1750d7ffe7e6dc4bb2f7ede81c6c0180dfa9c582dff95cdf38", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\change-boundary.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.before.html", + "bytes": 34627, + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\diagnostic-keyboard-recovery-region.before.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.html", + "bytes": 34627, + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\diagnostic-keyboard-recovery-region.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.json", + "bytes": 5891, + "sha256": "9e7860273aad6cb70d41aa493f23df595335e8b9b7f32cfa74208bca04c4f0ab", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\diagnostic-keyboard-recovery-region.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.png", + "bytes": 72889, + "sha256": "846136dc3a855a4191839ce33ca98e9d79dd476dca996256865edd6a140b6c36", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\diagnostic-keyboard-recovery-region.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/failure.html", + "bytes": 34627, + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\failure.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/failure.png", + "bytes": 72872, + "sha256": "544ccbfcb162c1441025eba9bb53f26b7de351a07c7704c135c886a782d658a7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\failure.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/keyboard-scroll-diagnosis.json", + "bytes": 1143, + "sha256": "55db54af6a77501aafffad8d4ae2acb9111e17a4c1817e2c322e990e37b82414", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\keyboard-scroll-diagnosis.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/report.json", + "bytes": 69620, + "sha256": "007dfcf15b7c2d539101b54b3bce3b1a6b75a6b6530f9bd2683d7976eed87118", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\report.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.before.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-empty-390.before.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.html", + "bytes": 18277, + "sha256": "6710a8d55dd7cb7a45366e4146b7a0c7428b30ba21f09e3516edacc20a819468", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-empty-390.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.json", + "bytes": 1702, + "sha256": "c19bd03c6e18a0a401ad77e5259c0e9d58b2bb4d7952413f6d720433f7492592", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-empty-390.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.png", + "bytes": 58620, + "sha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-empty-390.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-390.before.html", + "bytes": 31169, + "sha256": "1777b797c4ab6d7213fa74ec2f5e54382191bddd132644b81d6bdc5acf022151", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-390.before.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-390.html", + "bytes": 31169, + "sha256": "1777b797c4ab6d7213fa74ec2f5e54382191bddd132644b81d6bdc5acf022151", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-390.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-390.json", + "bytes": 5899, + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-390.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-390.png", + "bytes": 58202, + "sha256": "29a7493e6ac3a9eb3cba4804f8040d2827c465c2a5d05b2660e22c8857f63916", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-390.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.before.html", + "bytes": 31169, + "sha256": "aeb966646b5d6076442f56e8ed8b7830d2e701cd094036b90c5251a9e933b700", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-again-390.before.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.html", + "bytes": 31169, + "sha256": "aeb966646b5d6076442f56e8ed8b7830d2e701cd094036b90c5251a9e933b700", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-again-390.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.json", + "bytes": 5899, + "sha256": "777ed871a4bf97f168ab5331331d5fcd0cb4f5d28bcb97b7832c476d27530d42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-again-390.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.png", + "bytes": 58905, + "sha256": "c481e005cee97d17a7f53d59ecc2a544369e32a6235277d4366ed43e19dc9707", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-again-390.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.before.html", + "bytes": 34627, + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-text-200-390.before.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.html", + "bytes": 34627, + "sha256": "6afa40365db5e034aad6b8af6e096c22e5587e9524d87de459ea8043e52a9bd7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-text-200-390.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.json", + "bytes": 5898, + "sha256": "642561a152465d1c806c5fdcabc6f00a992ba7619cca8c90be7d25d5a633f9ab", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-text-200-390.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.png", + "bytes": 75771, + "sha256": "654cf0d4f6001314c345f1b0251b004983cf16ffb0cca46f13d5a444ffdc4873", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-error-text-200-390.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.before.html", + "bytes": 25903, + "sha256": "ed93ea49927d1848280dcb2f572f22e784e2c4d6cf48d999352530608ac460d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-stopped-390.before.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.html", + "bytes": 25903, + "sha256": "ed93ea49927d1848280dcb2f572f22e784e2c4d6cf48d999352530608ac460d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-stopped-390.html" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.json", + "bytes": 3790, + "sha256": "1aff41667b5c71a7a8837fd32990a1da65f759dd33eeb51427d048c26e2372d1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-stopped-390.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.png", + "bytes": 61699, + "sha256": "4f2e24a7795ce397f769657bf0374fc4dad5851cf2b0f37a83a9063fd25ef3b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01\\source-stopped-390.png" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01.command.json", + "bytes": 523, + "sha256": "36e5322b09a2fd127ece84b5c6962544670eb635df7414ff603b30db0d2a5a0e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01.command.json" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01.stderr", + "bytes": 957, + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01.stderr" + }, + { + "path": "operator/d3-keyboard-scroll-diagnosis-01.stdout", + "bytes": 484, + "sha256": "5192efce398ea8e42e0e5491510d7c15ed129e70bcb99c148c4f6506be061d81", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01.stdout" + }, + { + "path": "operator/d3-pack-02.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-pack-02.stderr" + }, + { + "path": "operator/d3-pack-02.stdout", + "bytes": 28782, + "sha256": "e11980e1856109a5a49eeed701d54fe2a86c74074a9801d83ccf42112f48dc32", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-pack-02.stdout" + }, + { + "path": "operator/d3-pack-03.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-pack-03.stderr" + }, + { + "path": "operator/d3-pack-03.stdout", + "bytes": 28782, + "sha256": "1555caaa51c0d682e37026c24fd650a1182cc4b94d8d6dc15d7f63454db5324c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-pack-03.stdout" + }, + { + "path": "operator/d3-pack.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-pack.stderr" + }, + { + "path": "operator/d3-pack.stdout", + "bytes": 28782, + "sha256": "9db89fc7edf9f219f4cdc0e43a08c601fe1aa98287b9add52f4dff1abe6d72f1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-pack.stdout" + }, + { + "path": "operator/d3-primary-preservation-readback.json", + "bytes": 829, + "sha256": "f9d8db5add97926c73e771e38192c5c36eaf51e86d45ff48428863b101012288", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-primary-preservation-readback.json" + }, + { + "path": "operator/d3-primary-preservation-verified.json", + "bytes": 630, + "sha256": "ac19b4efa8e540a184852d9c2c21f3dff15171ec8fc481b3e9c86ca51bcb77ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-primary-preservation-verified.json" + }, + { + "path": "operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "bytes": 4280, + "sha256": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-product-before-custody\\examples\\apps\\chat-ui\\template\\src\\nodeagent-chat\\NodeAgentChatApp.jsx" + }, + { + "path": "operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx.txt", + "bytes": 3350, + "sha256": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-product-before-custody\\examples\\apps\\chat-ui\\template\\src\\nodeagent-chat\\toolUIs.jsx" + }, + { + "path": "operator/d3-product-before-custody/examples/apps/chat-ui/template/src/styles.css", + "bytes": 6410, + "sha256": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-product-before-custody\\examples\\apps\\chat-ui\\template\\src\\styles.css" + }, + { + "path": "operator/d3-product-before-custody/src/app/styles.css", + "bytes": 13641, + "sha256": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-product-before-custody\\src\\app\\styles.css" + }, + { + "path": "operator/d3-product-before-custody/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "bytes": 3401, + "sha256": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-product-before-custody\\src\\features\\node-agent\\components\\NodeAgentThread.tsx" + }, + { + "path": "operator/d3-product-before-custody/src/features/node-agent/components/toolUIs.tsx.txt", + "bytes": 5635, + "sha256": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-product-before-custody\\src\\features\\node-agent\\components\\toolUIs.tsx" + }, + { + "path": "operator/d3-retry-guard-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "bytes": 5495, + "sha256": "1b13c028fb4db0bdf2a7ce91b2a3b9d185a2026b27c068492f3c122c0f1ad7e6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-retry-guard-before\\examples\\apps\\chat-ui\\template\\src\\nodeagent-chat\\NodeAgentChatApp.jsx" + }, + { + "path": "operator/d3-retry-guard-before/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "bytes": 4713, + "sha256": "2d2644ae39e93b598d8386807d18fb886d1635e68dd38f5903e3a7b5f8be06fb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-retry-guard-before\\src\\features\\node-agent\\components\\NodeAgentThread.tsx" + }, + { + "path": "operator/d3-runtime-state-guard-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt", + "bytes": 5692, + "sha256": "737689cbaac3caae9670c023437877eefe34d611286947e8899e8e1ee6959efa", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-runtime-state-guard-before\\examples\\apps\\chat-ui\\template\\src\\nodeagent-chat\\NodeAgentChatApp.jsx" + }, + { + "path": "operator/d3-runtime-state-guard-before/src/features/node-agent/components/NodeAgentThread.tsx.txt", + "bytes": 4941, + "sha256": "90c6194898c4330a140b84731928e1573141e96db88158173539d93fe4de12c4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-runtime-state-guard-before\\src\\features\\node-agent\\components\\NodeAgentThread.tsx" + }, + { + "path": "operator/d3-source-boundary-01.command.json", + "bytes": 53, + "sha256": "2bea3aefe25f049c940de1c8bebfb658d567b010717c6b156d69a669f4dfeecb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-01.command.json" + }, + { + "path": "operator/d3-source-boundary-01.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-01.stderr" + }, + { + "path": "operator/d3-source-boundary-01.stdout", + "bytes": 960, + "sha256": "63ea90dc4a68b1cd0a0595e10831a59565a4fbb4cefa849e31fad43232502b7c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-01.stdout" + }, + { + "path": "operator/d3-source-boundary-02.command.json", + "bytes": 53, + "sha256": "b6a94d61fceaf70c2198ff946038ab841f60b57616c1dfa638759686e338a26d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-02.command.json" + }, + { + "path": "operator/d3-source-boundary-02.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-02.stderr" + }, + { + "path": "operator/d3-source-boundary-02.stdout", + "bytes": 745, + "sha256": "e4f49b9ae665c31e6d5258505630bd35d85fe410861d66876acdbf66bfcdf1bf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-02.stdout" + }, + { + "path": "operator/d3-source-boundary-03.command.json", + "bytes": 53, + "sha256": "351f0aaa5dc66de62a8a176f5197da7d3731af51b661555d8e1db2ac71723a5f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-03.command.json" + }, + { + "path": "operator/d3-source-boundary-03.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-03.stderr" + }, + { + "path": "operator/d3-source-boundary-03.stdout", + "bytes": 206, + "sha256": "d3207ae164ec553d27128337bafcf866847453c57306650b5584846eeeac432a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-boundary-03.stdout" + }, + { + "path": "operator/d3-source-matched-after/report.json", + "bytes": 113363, + "sha256": "891b91c24dc53ac23392dd45044c9d8d2aff7303fe02e679a31746686d80e5b1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\report.json" + }, + { + "path": "operator/d3-source-matched-after/source-error-1024.after.html", + "bytes": 25598, + "sha256": "648ef36168785001c975a10566f14a820596fabc1284ec6e0219bf9f15607126", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1024.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1024.before.html", + "bytes": 25598, + "sha256": "648ef36168785001c975a10566f14a820596fabc1284ec6e0219bf9f15607126", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1024.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1024.html", + "bytes": 25598, + "sha256": "648ef36168785001c975a10566f14a820596fabc1284ec6e0219bf9f15607126", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1024.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1024.png", + "bytes": 107187, + "sha256": "d6bffd8792afcf80f5ee707750829a0f9480757b2bc0ba4eb34c13eba3877a7c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1024.png" + }, + { + "path": "operator/d3-source-matched-after/source-error-1440.after.html", + "bytes": 25598, + "sha256": "c85ba3ce6249043c62be6bc73907d82f7f77c59fcefe8cde15fc18bc70d6c28e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1440.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1440.before.html", + "bytes": 25598, + "sha256": "c85ba3ce6249043c62be6bc73907d82f7f77c59fcefe8cde15fc18bc70d6c28e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1440.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1440.html", + "bytes": 25598, + "sha256": "c85ba3ce6249043c62be6bc73907d82f7f77c59fcefe8cde15fc18bc70d6c28e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1440.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1440.png", + "bytes": 115853, + "sha256": "dc646a03b5847107cabc0a8fbcc03df3860582d796ad05e246ea5e03afbb7f65", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1440.png" + }, + { + "path": "operator/d3-source-matched-after/source-error-1920.after.html", + "bytes": 25598, + "sha256": "cbbb396c37407962f115ddfe0b60b2677e0a4550ea578a5b965e6b47538fefd8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1920.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1920.before.html", + "bytes": 25598, + "sha256": "cbbb396c37407962f115ddfe0b60b2677e0a4550ea578a5b965e6b47538fefd8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1920.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1920.html", + "bytes": 25598, + "sha256": "cbbb396c37407962f115ddfe0b60b2677e0a4550ea578a5b965e6b47538fefd8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1920.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-1920.png", + "bytes": 119769, + "sha256": "235215a40fb09444529bf04720c3357e3b2be192edb2ffbdb36679a24539d506", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-1920.png" + }, + { + "path": "operator/d3-source-matched-after/source-error-320.after.html", + "bytes": 25598, + "sha256": "10bc6c6eccd613e5980e1d2dffe9f87fd4861fd5c0928be378e91c4f26bfe128", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-320.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-320.before.html", + "bytes": 25598, + "sha256": "10bc6c6eccd613e5980e1d2dffe9f87fd4861fd5c0928be378e91c4f26bfe128", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-320.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-320.html", + "bytes": 25598, + "sha256": "10bc6c6eccd613e5980e1d2dffe9f87fd4861fd5c0928be378e91c4f26bfe128", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-320.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-320.png", + "bytes": 51647, + "sha256": "1e25cfe2702214ae85b9e6b3f1a233102e3078b571d2daaab0bf82f7c5cdb08d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-320.png" + }, + { + "path": "operator/d3-source-matched-after/source-error-390.after.html", + "bytes": 25598, + "sha256": "38c0b973540ae1f394c613bf605e4c211d720277a237dfd2f2322e0df598f016", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-390.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-390.before.html", + "bytes": 25598, + "sha256": "38c0b973540ae1f394c613bf605e4c211d720277a237dfd2f2322e0df598f016", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-390.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-390.html", + "bytes": 25598, + "sha256": "38c0b973540ae1f394c613bf605e4c211d720277a237dfd2f2322e0df598f016", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-390.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-390.png", + "bytes": 67735, + "sha256": "133256ed2c9bfbfc6f02ef0da27411bb7c1a17e10edf1f8c401c9a451b15c63a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-390.png" + }, + { + "path": "operator/d3-source-matched-after/source-error-768.after.html", + "bytes": 25598, + "sha256": "5879f1e8cc5ef03922d81fea089b44cabf585c09c8ea927a525499fe582e593c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-768.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-768.before.html", + "bytes": 25598, + "sha256": "5879f1e8cc5ef03922d81fea089b44cabf585c09c8ea927a525499fe582e593c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-768.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-768.html", + "bytes": 25598, + "sha256": "5879f1e8cc5ef03922d81fea089b44cabf585c09c8ea927a525499fe582e593c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-768.html" + }, + { + "path": "operator/d3-source-matched-after/source-error-768.png", + "bytes": 100489, + "sha256": "10024c8bf9b57877ffb6e0cc7089fb96ef843f48a39eeea96c2a84da1bb02f31", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-error-768.png" + }, + { + "path": "operator/d3-source-matched-after/source-running-1024.after.html", + "bytes": 18788, + "sha256": "270be4e7ec1b72ff3359a5956d42d56bf880f95843ab98af0298ec186857c4f1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1024.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1024.before.html", + "bytes": 18788, + "sha256": "270be4e7ec1b72ff3359a5956d42d56bf880f95843ab98af0298ec186857c4f1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1024.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1024.html", + "bytes": 18788, + "sha256": "270be4e7ec1b72ff3359a5956d42d56bf880f95843ab98af0298ec186857c4f1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1024.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1024.png", + "bytes": 46261, + "sha256": "b09b2b01f37a29dde76805aead4a0a07ea614a976f121738826c8f6a7df1b791", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1024.png" + }, + { + "path": "operator/d3-source-matched-after/source-running-1440.after.html", + "bytes": 18788, + "sha256": "4ae6563bb2417d9d81491586bb997d04da76ba24f2493d8313ef14987b43d57e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1440.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1440.before.html", + "bytes": 18788, + "sha256": "4ae6563bb2417d9d81491586bb997d04da76ba24f2493d8313ef14987b43d57e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1440.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1440.html", + "bytes": 18788, + "sha256": "4ae6563bb2417d9d81491586bb997d04da76ba24f2493d8313ef14987b43d57e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1440.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1440.png", + "bytes": 54475, + "sha256": "3e75fbcf907d074f0a3487b34487f77eb976214f5b69a3c09cbb634f224288f1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1440.png" + }, + { + "path": "operator/d3-source-matched-after/source-running-1920.after.html", + "bytes": 18788, + "sha256": "65e0d482bcd46b46a782ee086b2e4ccd9d75d4dc5359b3421fb6c8f9494767d6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1920.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1920.before.html", + "bytes": 18788, + "sha256": "65e0d482bcd46b46a782ee086b2e4ccd9d75d4dc5359b3421fb6c8f9494767d6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1920.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1920.html", + "bytes": 18788, + "sha256": "65e0d482bcd46b46a782ee086b2e4ccd9d75d4dc5359b3421fb6c8f9494767d6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1920.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-1920.png", + "bytes": 57241, + "sha256": "009fdbd78f0e6af1c107ca20f7bdbedac63f4c4c69015ab4f826a9f002fd0251", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-1920.png" + }, + { + "path": "operator/d3-source-matched-after/source-running-320.after.html", + "bytes": 18788, + "sha256": "172585daf2cf4be2cf72e1bb853d58f363057206998043228e0d41b1f51acfa7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-320.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-320.before.html", + "bytes": 18788, + "sha256": "172585daf2cf4be2cf72e1bb853d58f363057206998043228e0d41b1f51acfa7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-320.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-320.html", + "bytes": 18788, + "sha256": "172585daf2cf4be2cf72e1bb853d58f363057206998043228e0d41b1f51acfa7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-320.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-320.png", + "bytes": 35556, + "sha256": "c9f0a54175296caf8ec1dac28b7efdafc2a48ba7b834b8ac3e1c0c8cb8020df6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-320.png" + }, + { + "path": "operator/d3-source-matched-after/source-running-390.after.html", + "bytes": 18788, + "sha256": "03149366edbdd8514cdc62d9790e1f4cc6b26cb0fa8a2c802ecd557dd54ef8ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-390.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-390.before.html", + "bytes": 18788, + "sha256": "03149366edbdd8514cdc62d9790e1f4cc6b26cb0fa8a2c802ecd557dd54ef8ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-390.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-390.html", + "bytes": 18788, + "sha256": "03149366edbdd8514cdc62d9790e1f4cc6b26cb0fa8a2c802ecd557dd54ef8ac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-390.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-390.png", + "bytes": 37795, + "sha256": "02f3cdccee3dc97499d21ac9fabfc93c4720847dbc6651cad2080a6f5eb20400", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-390.png" + }, + { + "path": "operator/d3-source-matched-after/source-running-768.after.html", + "bytes": 18788, + "sha256": "2d463254009e7853685c0152595578a51b4e8ea7f935fc91432056ffe5aef54c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-768.after.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-768.before.html", + "bytes": 18788, + "sha256": "2d463254009e7853685c0152595578a51b4e8ea7f935fc91432056ffe5aef54c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-768.before.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-768.html", + "bytes": 18788, + "sha256": "2d463254009e7853685c0152595578a51b4e8ea7f935fc91432056ffe5aef54c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-768.html" + }, + { + "path": "operator/d3-source-matched-after/source-running-768.png", + "bytes": 49548, + "sha256": "60b103f5712b7d02a41c96e65a727243a8306a755d5af9f75a03e41b94108aee", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after\\source-running-768.png" + }, + { + "path": "operator/d3-source-matched-after.command.json", + "bytes": 260, + "sha256": "32ca14e4c93bd39af98c01a748f3503483f2953cca1bd765183e601d8e69e8bf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after.command.json" + }, + { + "path": "operator/d3-source-matched-after.stderr", + "bytes": 957, + "sha256": "f51f78c20b8fd4d325f92d97e6cb3d8bde61a8db6be8bdc118cd8fa4323b5cf3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after.stderr" + }, + { + "path": "operator/d3-source-matched-after.stdout", + "bytes": 542, + "sha256": "eb71d02b08461475c2bf895acb53c4cad3cd072b7565bf00feb0fc57c6bbcc36", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-matched-after.stdout" + }, + { + "path": "operator/d3-source-smoke-01-harness.mjs.txt", + "bytes": 12958, + "sha256": "71d5cc86b7b7b6ed1334814a8c4c170ddf7fd354c1d42134bc98a36f48158ff7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01-harness.mjs.txt" + }, + { + "path": "operator/d3-source-smoke-01.command.json", + "bytes": 393, + "sha256": "4794c1786f09d2f2e348aa05d46beddb2a51dd9217191571cfa89a6227c818ca", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01.command.json" + }, + { + "path": "operator/d3-source-smoke-01.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01.stderr" + }, + { + "path": "operator/d3-source-smoke-01.stdout", + "bytes": 653, + "sha256": "b5a5efccf2dfb0707d1e8b1e35e025f0fa88f1d257512b3eedb6b8f2d6536402", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01.stdout" + }, + { + "path": "operator/d3-source-smoke-02-harness.mjs.txt", + "bytes": 13238, + "sha256": "ced9b544ccd3a5df3c45b55d3d48ce007da210a5583b055a2ef450f912fc443a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02-harness.mjs.txt" + }, + { + "path": "operator/d3-source-smoke-02.command.json", + "bytes": 394, + "sha256": "a4dcf8c89f09f6d22f1d28c3d924ddcd383616bd24d16fef763e3ae3d166e985", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02.command.json" + }, + { + "path": "operator/d3-source-smoke-02.stderr", + "bytes": 957, + "sha256": "8e989bf204d81238931e0202af6026d231f2909f2d7779e973023ee9d5d26bc4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02.stderr" + }, + { + "path": "operator/d3-source-smoke-02.stdout", + "bytes": 668, + "sha256": "927d6c44fc14d5701f1fd566887d6bb6989ac6f69133c32f6e93380f9265018c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02.stdout" + }, + { + "path": "operator/d3-source-smoke-03.command.json", + "bytes": 394, + "sha256": "d4fb994f6a46cf8dc6b7619b963c1b3048e4fbca414f876dc084453e80969f18", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03.command.json" + }, + { + "path": "operator/d3-source-smoke-03.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03.stderr" + }, + { + "path": "operator/d3-source-smoke-03.stdout", + "bytes": 669, + "sha256": "dfcb82d49f334b0344810f1f0bcf2669473ad310508529e09bc7d7db56d42eb1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03.stdout" + }, + { + "path": "operator/d3-source-smoke-04.command.json", + "bytes": 393, + "sha256": "c239aa53ff6c43231d3d5db6cf247a15a3dc7dab2cc3053a8944742568b03cb5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04.command.json" + }, + { + "path": "operator/d3-source-smoke-04.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04.stderr" + }, + { + "path": "operator/d3-source-smoke-04.stdout", + "bytes": 669, + "sha256": "be0ce753748c33e06db528c96582a8fcd09b075090705a425ddbaad5ec924000", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04.stdout" + }, + { + "path": "operator/d3-source-smoke-05.command.json", + "bytes": 393, + "sha256": "86c8622f98a3ed9469e68094efb6a762ddf2d13373e1a19d4de1c32aa21bed97", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05.command.json" + }, + { + "path": "operator/d3-source-smoke-05.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05.stderr" + }, + { + "path": "operator/d3-source-smoke-05.stdout", + "bytes": 646, + "sha256": "912572a5393b15e106742684ef0295dcc9d98371ae730ec20738fe91898ed968", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05.stdout" + }, + { + "path": "operator/d3-source-smoke-06.command.json", + "bytes": 395, + "sha256": "b30472c4e21a9a85e126c0638a51e9692ba75ba5859276d7552166a4e79c719e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-06.command.json" + }, + { + "path": "operator/d3-source-smoke-06.stderr", + "bytes": 957, + "sha256": "b31b0b6b465a60c99ba193e084cc22a9158e7e151f1e0ba77e655f21362be5d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-06.stderr" + }, + { + "path": "operator/d3-source-smoke-06.stdout", + "bytes": 204, + "sha256": "1f009737630b0a9383f453690758f0ab523e395e921b163f711ee7c361a4e3c3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-06.stdout" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1024.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1024.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1024.json", + "bytes": 781, + "sha256": "fef437686da90fb30c1695bf24857511ab673fd3433fde6e2f9fc08b1945edde", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1024.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1024.png", + "bytes": 35614, + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1024.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1440.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1440.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1440.json", + "bytes": 781, + "sha256": "570231f3dcf9edb056c264107537aff3355767bbf55b03ce4a7746e27e4e191c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1440.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1440.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1920.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1920.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1920.json", + "bytes": 781, + "sha256": "d024eeecbb79068c08c972afdd4a8d3ddfe32dd74e4bddcadf0a3456b4c8d254", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1920.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-1920.png", + "bytes": 38890, + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-1920.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-320.html", + "bytes": 12162, + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-320.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-320.json", + "bytes": 771, + "sha256": "a25457e20907bfb6d736e476b94a79b57c4a319f09d74649179e9b81e6be2466", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-320.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-320.png", + "bytes": 27800, + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-320.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-390.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-390.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-390.json", + "bytes": 771, + "sha256": "2f08689787e6860b5d9423a2cd3e159db596db8834ae60d84b3db90084612fc9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-390.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-390.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-768.html", + "bytes": 12162, + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-768.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-768.json", + "bytes": 780, + "sha256": "be0f1a4a8e09376b3fdd294b0a71164fb4dc27ab75f71d7ad7f15d0d7b56278c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-768.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-empty-768.png", + "bytes": 34212, + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-empty-768.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1024.html", + "bytes": 13979, + "sha256": "08af8eabc5c206dc1df038ad7e626d2391afac007ff41095b01e20072db8013a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1024.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1024.json", + "bytes": 1677, + "sha256": "4611766c84391fb828b9b8dbfaa8d102afb105feb6d8f4763cf8eea3908c2227", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1024.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1024.png", + "bytes": 56598, + "sha256": "db5b14a2d4e77e3545d129ee6413f70874b349de7c7d67fe60ff75b23e824174", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1024.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1440.html", + "bytes": 13979, + "sha256": "793461c26c95da766166fdb577844fca1443237da6ada15fc94f2685e44f83a5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1440.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1440.json", + "bytes": 1677, + "sha256": "2111cab62fbf611ed9b809b45d2428acbeb22dae793b9fd4934e9f2a1330a093", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1440.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1440.png", + "bytes": 58800, + "sha256": "0bc2f3246755af576a03fd013a3f79acb377261ab1b0b7a2ae0be65d99110ffb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1440.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1920.html", + "bytes": 13979, + "sha256": "73dea16d9f1347b2a8789cd1bd94ccc8c18ac0df1f3dc2770a63020e691a9fba", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1920.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1920.json", + "bytes": 1677, + "sha256": "24c927e26722f21d7dbb66d43375b3fcf16df9ec580abc95af5bfff9fc183f96", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1920.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-1920.png", + "bytes": 61278, + "sha256": "f35bc072e2f56b00950ad4a12abd14df26e1562deb707c54e460123d022714bc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-1920.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-320.html", + "bytes": 13979, + "sha256": "c0a6b20980d2272a9b2fe2c39a84c9e0e608609c3046742015f801f74dd7034c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-320.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-320.json", + "bytes": 1667, + "sha256": "a0a233af0d13d1bfe6a59c721b97a19d33e0a9c884a8f675f90f78aedfcf7122", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-320.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-320.png", + "bytes": 29749, + "sha256": "62b1ec0fc69fb0c4b1c4caf0c3705c8d6f552402e50c611a8625aed21690b64c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-320.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-390.html", + "bytes": 13979, + "sha256": "4abbc70660c6b45b9453913d3483682d83810c7c29f35493e9a6434aa1eb5f1d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-390.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-390.json", + "bytes": 1667, + "sha256": "b1e150f695d7ada8904a8059483be051293418ce5079af34aa1e20c781ac02c6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-390.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-390.png", + "bytes": 31073, + "sha256": "382ec6f9a7846cc694a7ffb848dccb1ded561a8d64e2c2ff5c5e7834d499cc6f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-390.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-768.html", + "bytes": 13979, + "sha256": "ffa36bfdc179d8065687805be10642a1ab38553049691ec5cfa4b94056994fff", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-768.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-768.json", + "bytes": 1676, + "sha256": "4f908d7aad0b43c938864ab320afb5e90741607744de0675e078859eb22f39c5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-768.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-populated-768.png", + "bytes": 53412, + "sha256": "8f39389bb97178ffa7148afde59ec70d87173744f8188295f37726a0250d7ee0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-populated-768.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1024.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1024.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1024.json", + "bytes": 781, + "sha256": "fef437686da90fb30c1695bf24857511ab673fd3433fde6e2f9fc08b1945edde", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1024.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1024.png", + "bytes": 35614, + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1024.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1440.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1440.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1440.json", + "bytes": 781, + "sha256": "570231f3dcf9edb056c264107537aff3355767bbf55b03ce4a7746e27e4e191c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1440.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1440.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1920.html", + "bytes": 12162, + "sha256": "8aa32cb7838cf1cb866a15893f58138e08945f3ea8624d0037f77f3b842d2412", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1920.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1920.json", + "bytes": 781, + "sha256": "d024eeecbb79068c08c972afdd4a8d3ddfe32dd74e4bddcadf0a3456b4c8d254", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1920.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-1920.png", + "bytes": 38890, + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-1920.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-320.html", + "bytes": 12162, + "sha256": "9f468fb137c0a9cba7991637e5d0d6455b95f71c0822da1cf8bdebc0646fd52f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-320.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-320.json", + "bytes": 771, + "sha256": "a25457e20907bfb6d736e476b94a79b57c4a319f09d74649179e9b81e6be2466", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-320.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-320.png", + "bytes": 27800, + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-320.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-390.html", + "bytes": 12162, + "sha256": "40eeffab368587aa5a640bd99ef136507068876897cfa12630001575c7c937d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-390.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-390.json", + "bytes": 771, + "sha256": "2f08689787e6860b5d9423a2cd3e159db596db8834ae60d84b3db90084612fc9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-390.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-390.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-768.html", + "bytes": 12162, + "sha256": "b5dbec2e67536f1a5836f40944cb5444f0c8c35986f28b106fdbdab6adcc5c90", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-768.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-768.json", + "bytes": 780, + "sha256": "be0f1a4a8e09376b3fdd294b0a71164fb4dc27ab75f71d7ad7f15d0d7b56278c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-768.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-reloaded-768.png", + "bytes": 34212, + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-reloaded-768.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1024.html", + "bytes": 11513, + "sha256": "279c5b5fec35dd8d4e46f4c362fa86b0cd6c690a31abaa02a9085312bc9fff07", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1024.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1024.json", + "bytes": 630, + "sha256": "a9b9aac93faf2f230f0af32b49d022f83748e2a1f5301ce0f33ae36896811d5f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1024.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1024.png", + "bytes": 30783, + "sha256": "9fc2d4e713fd9535791513e5091d0de8996203dc06e2b7fb09a1987088742f4d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1024.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1440.html", + "bytes": 11513, + "sha256": "a9826b49566c311d5a9ef2af25e6a21720d44f34d60b3bfa72d11ca9524bcd9e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1440.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1440.json", + "bytes": 630, + "sha256": "f2df5710790fd3c84c38228f5f3ab4306f08e07bdf3dca9ec6e2c8b9d345b082", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1440.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1440.png", + "bytes": 32109, + "sha256": "35af4cbe6bbec6c1162e77e788b645ed9f41d0d579e2f9a4e26cfaf1c113bdcf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1440.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1920.html", + "bytes": 11513, + "sha256": "c4ed8eb882cb0d9450fccb0727c65c55566d95305710b04acddc229e0926de41", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1920.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1920.json", + "bytes": 630, + "sha256": "1d687c735c43b60b405b61e1cc35fc6063fc95da089757727475f3af69c002aa", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1920.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-1920.png", + "bytes": 33534, + "sha256": "8f132143a465e72aab76b3d538be286fd5086d5489eb4ec3cb86ed5caba9eabb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-1920.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-320.html", + "bytes": 11513, + "sha256": "556f310301df656811f63f7a3c39381537a8271411a651045c52e65433006883", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-320.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-320.json", + "bytes": 620, + "sha256": "7a31d5b1bb58afcb24b781c84e97764284b877ce50aaa15f85762e9aa8954239", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-320.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-320.png", + "bytes": 25919, + "sha256": "2463b6b0dd814a68aa8a11add62698f312dc14965a58d3fd1e4cae25f0d95dce", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-320.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-390.html", + "bytes": 11513, + "sha256": "050cc89d76579291b5c5eb4f5e5a4ecd5b4eaeec9d028397b812f954a3220268", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-390.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-390.json", + "bytes": 620, + "sha256": "4dcee313bacf29c80513a6f8d9d889b17cc7b1606d701fe680499f1a788e3dc0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-390.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-390.png", + "bytes": 26556, + "sha256": "481085b6770cbd83d8ad02ff39cd2092363b987a419579ce37a6272b3c3828f9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-390.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-768.html", + "bytes": 11513, + "sha256": "1013ffce65391aa4031c6ba8b071b843e1288c903437f6b12246a6d16df3d5f0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-768.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-768.json", + "bytes": 629, + "sha256": "8294a7d40d6695029d36a14b021fdb16d349e1d5393b8b3011681f61d65e8f76", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-768.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-running-768.png", + "bytes": 30386, + "sha256": "e8dae771111a83055368058a7fd6e1fca1e8b7fdddec46e31e98bdd9ac2278f8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-running-768.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-sustained-390.html", + "bytes": 34380, + "sha256": "c0fbc071bf0bf60a14580f706be1c97037923078c664a117dc2fc2b203b06fbf", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-sustained-390.html" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-sustained-390.json", + "bytes": 6513, + "sha256": "f5453e29c2451fba43df437a73399c3a7f896983fdd11f41ab866b4d0bb292a5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-sustained-390.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay/generated-sustained-390.png", + "bytes": 30267, + "sha256": "9edf791fc10d37996214708c197022e52134cae4af28e9b7b4d2d404946a763e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\generated-sustained-390.png" + }, + { + "path": "operator/d3-unchanged-baseline-replay/report.json", + "bytes": 128638, + "sha256": "67e4a2f55c64c5cacb076009260b6db7ac85b291c4d36a2489d323d2888383fd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay\\report.json" + }, + { + "path": "operator/d3-unchanged-baseline-replay.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay.stderr" + }, + { + "path": "operator/d3-unchanged-baseline-replay.stdout", + "bytes": 215, + "sha256": "ae8b7e6b4aaeb7505f427d7ec2c6f147c6579e81dacf3779e936328c5a145cb3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay.stdout" + }, + { + "path": "operator/d3-worker-visual-inspection.json", + "bytes": 5548, + "sha256": "1bf7cf2bed41b89fe4e77b31b008e6421c51e0ef1274968c93c02646c719c476", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-worker-visual-inspection.json" + }, + { + "path": "operator/D3_SOURCE_BEFORE_BINDINGS.json", + "bytes": 1140, + "sha256": "11866c9e365fe8617a32e726c9d038d4b81392ba19ab25ae8c88f24c5d691b6b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\D3_SOURCE_BEFORE_BINDINGS.json" + }, + { + "path": "operator/dependency-repair-freeze/e2e/current-consumer-proof.mjs.txt", + "bytes": 9566, + "sha256": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\dependency-repair-freeze\\e2e\\current-consumer-proof.mjs" + }, + { + "path": "operator/dependency-repair-freeze/examples/apps/chat-ui/template/package-lock.json", + "bytes": 235233, + "sha256": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\dependency-repair-freeze\\examples\\apps\\chat-ui\\template\\package-lock.json" + }, + { + "path": "operator/dependency-repair-freeze/HANDOFF.md.txt", + "bytes": 3118, + "sha256": "17e983697edaf77f341bf588e4618e0cb53f46d6e04ef8e8f9f4914c3ab00d98", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\dependency-repair-freeze\\HANDOFF.md" + }, + { + "path": "operator/diagnose-d3-enlargement-02.mjs.txt", + "bytes": 18412, + "sha256": "d927ddd3fcf0359e0df5be937aa35d084a6f06ad16c4f718337e596e72467e8a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\diagnose-d3-enlargement-02.mjs" + }, + { + "path": "operator/diagnose-d3-enlargement.mjs.txt", + "bytes": 18303, + "sha256": "222fc550f2c5f7db79bc9bc24383da74102da817355082341f04e9e7cc312094", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\diagnose-d3-enlargement.mjs" + }, + { + "path": "operator/diagnose-d3-keyboard-scroll.mjs.txt", + "bytes": 18648, + "sha256": "d19e7a45d98d37bf58a926f7c5d775011e550e5f3e4bb89f07441fe332f23511", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\diagnose-d3-keyboard-scroll.mjs" + }, + { + "path": "operator/diagnose-dependency-comparison.mjs.txt", + "bytes": 7149, + "sha256": "af193a6c3fdf45800eacad574a1d794390cad26a2a79758f1f44b64a398f5b26", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\diagnose-dependency-comparison.mjs" + }, + { + "path": "operator/diagnose-first-submit.mjs.txt", + "bytes": 6491, + "sha256": "31544790508aba81975972f1e7f1309156d9b289fea0cb80397413a882a948ea", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\diagnose-first-submit.mjs" + }, + { + "path": "operator/durable.json", + "bytes": 798, + "sha256": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\durable.json" + }, + { + "path": "operator/durable.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\durable.stderr" + }, + { + "path": "operator/durable.stdout", + "bytes": 119, + "sha256": "63c4aa3726029258df491bb45b000952202358eb18952fb55badccdfd25174ff", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\durable.stdout" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.html", + "bytes": 13614, + "sha256": "d894f372a4684549965b43175343fbc84cb9dd2f742528136fbaec13aaad958b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-1440\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.png", + "bytes": 48118, + "sha256": "dfe6dac19f02fa877e68d2f7b2ab9bd34b63e40672b97f03f1e10817643cdf76", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-1440\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.md.txt", + "bytes": 2287, + "sha256": "fd72dcc3e3aa36dba9cd7fb8b99c5cfe99dfc6c3ff80fc1472d12af2910f9fa0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-1440\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.png", + "bytes": 50055, + "sha256": "1f293044017241177f2d0309a4d38666354094aa0d89a795a391872a1f72313a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-1440\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.html", + "bytes": 13614, + "sha256": "c48d41aec4b70653d1332500c71ddb48206c00ebd0ee17b71e3725d0d485f98f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-390\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.png", + "bytes": 36326, + "sha256": "8b93816c80e6a031e5c3ef55f59908de5aabe94deb66a689f0c85aa33053be09", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-390\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.md.txt", + "bytes": 2286, + "sha256": "076356849f3dac9ed2bbdf468f204451a030d18f8cfdcea78185bf2979d70e2d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-390\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.png", + "bytes": 38148, + "sha256": "d67b6e1aa81d6ff5faa4145a7788a14b8df5fdacc00c5680c8ff5a31371262ea", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-error-390\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.html", + "bytes": 11046, + "sha256": "761fd28a3263db95a2a84d562098e5b4159d57b9ded1eb6ee19dafc84cc940c7", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-1440\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.png", + "bytes": 28307, + "sha256": "eda7a7723d479187fb0619ca86cefed2f1d9823b58384b13791a3b2b3f9b5eff", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-1440\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.md.txt", + "bytes": 2289, + "sha256": "20ff3ba4e0960bec3ac05ba539ad1b56982aeaf8ff1dd2a5a3334fc61c668f29", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-1440\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.png", + "bytes": 30441, + "sha256": "ba11f02e651c2aed2d457cd399ca65e2cc47ffe9758968ced9704edef32e1fac", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-1440\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.html", + "bytes": 11046, + "sha256": "18c21072f507296df813237d77664c79e2ca96af59888f36b60364872f44d9fb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-390\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.png", + "bytes": 22898, + "sha256": "f7572cfed5aac624f85da0982a77a257cb4ffb734e4a62f1f0f83df785b2d5a5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-390\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.md.txt", + "bytes": 2288, + "sha256": "c8319944cc77c6ea945680c9ad7bbfb5b82218e3c19a0554c5413e939d682e27", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-390\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.png", + "bytes": 24761, + "sha256": "3d2adb7dc5324fea59764955b7b5b880b36924fff4de9c20cc34ce70a54ce7e8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-generated-before\\generated-running-390\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-1440/before.html", + "bytes": 24798, + "sha256": "9ccdedbb36c9831763cd818531941ced8aa40ef2bb383c2d9e4c62e1a22e881a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-1440\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-1440/before.png", + "bytes": 122472, + "sha256": "3d883b2f102989efad6aa4db4d01f6d6011686080a400fa011afc09af248ca20", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-1440\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.md.txt", + "bytes": 2197, + "sha256": "18e6d7be52d41e4456ffc908babd4fe09b5cc8041bf68dee6b7f4def573c86d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-1440\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.png", + "bytes": 123664, + "sha256": "835986f05145c79da8c42d8198702795cc83d4b0cfa382f9cb825e83268a2a36", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-1440\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-390/before.html", + "bytes": 24798, + "sha256": "c8ef7c6661e61f00522ffc8029d161a4f00c129aa76357ca459b2239bfb10854", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-390\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-390/before.png", + "bytes": 66921, + "sha256": "cb8f8708db77c224540ab29df4c5ccea80154c0c670a1913bd12332065c65e37", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-390\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.md.txt", + "bytes": 2196, + "sha256": "1afe921376e9e4241d61153ffa2903387f7d4e57423359e0a4b66a7cdea9715b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-390\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.png", + "bytes": 68240, + "sha256": "02217ecb45988088b5c8a329d439cf1edf36daff0c94485eaad75edbd58406ec", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-error-390\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-1440/before.html", + "bytes": 18200, + "sha256": "c1b66551d2d8e0cb2f23ab9f851daef0ffa3038a339c371bbce1b51094f47136", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-1440\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-1440/before.png", + "bytes": 53671, + "sha256": "5b01100cf1f778ff6d40bab901e78c1eb8fa9e66a639d6347a2b7b9a4d594c37", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-1440\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.md.txt", + "bytes": 2199, + "sha256": "3a3d36d5efe8398f1d2590e2cffe21bf6a83caa2826b228043da203238bcdb97", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-1440\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.png", + "bytes": 55404, + "sha256": "f5e8fbf4b550ddf1270bb4b1dd2ba01677aae3b586cde19143a55651b8d08ef4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-1440\\change-boundary.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-390/before.html", + "bytes": 18200, + "sha256": "d85ebdfe201f4b84132465fecd094e047aaf63d8eb79d72d9e67dcf023b50998", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-390\\before.html" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-390/before.png", + "bytes": 37104, + "sha256": "5a9c04c5e13b4d0fd042195ad1b085e9983dc4c64ceea89b16f98ee074d2f51f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-390\\before.png" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.md.txt", + "bytes": 2198, + "sha256": "0188548c94d2f20e5457ddb1618a24ba6e220c1553b6d1f64900fb22937a6507", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-390\\change-boundary.md" + }, + { + "path": "operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.png", + "bytes": 38466, + "sha256": "0e61aa353c714c586a86f780e6edee68d43e5d4a26b68b8b98ae0d4ebfaea873", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\evidence\\nodeagent-d3-source-before\\source-running-390\\change-boundary.png" + }, + { + "path": "operator/existing-target-refusal.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\existing-target-refusal.stderr" + }, + { + "path": "operator/existing-target-refusal.stdout", + "bytes": 510, + "sha256": "c86fbc0b75aaf748e98f15c1d9164a987178241b6305db389b148321d418c998", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\existing-target-refusal.stdout" + }, + { + "path": "operator/first-submit-dependency-comparison-01.command.json", + "bytes": 53, + "sha256": "6d1af5393673ee710d1cc3548719ac70b009c8b70fbd41d03b3ff703e675d995", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-dependency-comparison-01.command.json" + }, + { + "path": "operator/first-submit-dependency-comparison-01.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-dependency-comparison-01.stderr" + }, + { + "path": "operator/first-submit-dependency-comparison-01.stdout", + "bytes": 254, + "sha256": "288ec9e5389b4a42284451223ed0c055f40e3ff50f439d2755c5e210c4325851", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-dependency-comparison-01.stdout" + }, + { + "path": "operator/first-submit-diagnosis-01.command.json", + "bytes": 53, + "sha256": "7249780c8f8ce5e6657a1dfcab481617c22124482f1b0077bc19faad316f71d8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-diagnosis-01.command.json" + }, + { + "path": "operator/first-submit-diagnosis-01.stderr", + "bytes": 957, + "sha256": "0f0101da9e13b0b9ff730a51a7fc8f97a48df7578a0446eafb8608a6649cb606", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-diagnosis-01.stderr" + }, + { + "path": "operator/first-submit-diagnosis-01.stdout", + "bytes": 627, + "sha256": "cab47cf593ac8b76b0895c10b2defc9d94d131c6f3a783cf1b1a9c28e3326362", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\first-submit-diagnosis-01.stdout" + }, + { + "path": "operator/frame.json", + "bytes": 513, + "sha256": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\frame.json" + }, + { + "path": "operator/frame.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\frame.stderr" + }, + { + "path": "operator/frame.stdout", + "bytes": 92, + "sha256": "3930a6e7a06514d750370d57d4c847d207e7e65ad7cb37ec7e6a427a57102137", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\frame.stdout" + }, + { + "path": "operator/host-install.stderr", + "bytes": 150, + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\host-install.stderr" + }, + { + "path": "operator/host-install.stdout", + "bytes": 144, + "sha256": "9c0a23925ed0f61c116e515f3ac86f72484b07c39ca88f666e1308367904c430", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\host-install.stdout" + }, + { + "path": "operator/install-consumer-commands.json", + "bytes": 3987, + "sha256": "efdddba96f40774206af664cc1b000d44c5542aca22a4eec7665d6f469e6a8b8", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\install-consumer-commands.json" + }, + { + "path": "operator/installed-apps.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-apps.stderr" + }, + { + "path": "operator/installed-apps.stdout", + "bytes": 453, + "sha256": "8e1a0749d92500e1c135eca70a6d0de1d72cfa69a1bbb2616c7d156a9fb9f7dd", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-apps.stdout" + }, + { + "path": "operator/installed-consumer.json", + "bytes": 667, + "sha256": "2c8795ab4e1631cb87b71a470b6a665cc9c22c6e94cbf3b2bd95cdc48a6ff481", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-consumer.json" + }, + { + "path": "operator/installed-doctor.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-doctor.stderr" + }, + { + "path": "operator/installed-doctor.stdout", + "bytes": 1118, + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-doctor.stdout" + }, + { + "path": "operator/installed-scaffold.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-scaffold.stderr" + }, + { + "path": "operator/installed-scaffold.stdout", + "bytes": 2028, + "sha256": "fa6d77785236eab1b2afc92aa364673c47c9ca6c8f3d80790e50016f2b48ac24", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\installed-scaffold.stdout" + }, + { + "path": "operator/locked-browser-01-harness.mjs.txt", + "bytes": 14004, + "sha256": "16497d628f5bec3dfae29f522f2702c9966bbcb4cbbbb78204db1dcd969662ef", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01-harness.mjs.txt" + }, + { + "path": "operator/locked-browser-01.command.json", + "bytes": 386, + "sha256": "888a86630c4ba453cbf632af6e36de5787e5a3b4c0a2a35f970e0600e2132703", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01.command.json" + }, + { + "path": "operator/locked-browser-01.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01.stderr" + }, + { + "path": "operator/locked-browser-01.stdout", + "bytes": 601, + "sha256": "b297de53b8051524a0e517517205efa1ea56a9c840059ac2683956042d5afcc1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01.stdout" + }, + { + "path": "operator/locked-browser-02/generated-empty-1024.html", + "bytes": 11395, + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1024.html" + }, + { + "path": "operator/locked-browser-02/generated-empty-1024.json", + "bytes": 781, + "sha256": "20472708b8e160864ed2c59112089c060a39d29536f9883cc4c66fdbd2bbb3a1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1024.json" + }, + { + "path": "operator/locked-browser-02/generated-empty-1024.png", + "bytes": 35614, + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1024.png" + }, + { + "path": "operator/locked-browser-02/generated-empty-1440.html", + "bytes": 11395, + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1440.html" + }, + { + "path": "operator/locked-browser-02/generated-empty-1440.json", + "bytes": 781, + "sha256": "7ef87274b0a92f189bbe41a853b0c9a7036b4e165efeedf976812f01fb15b014", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1440.json" + }, + { + "path": "operator/locked-browser-02/generated-empty-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1440.png" + }, + { + "path": "operator/locked-browser-02/generated-empty-1920.html", + "bytes": 11395, + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1920.html" + }, + { + "path": "operator/locked-browser-02/generated-empty-1920.json", + "bytes": 781, + "sha256": "1a29b3e2698a1ca8e44b68769bc0d4e820520eee04991f58af82e9381c1fab91", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1920.json" + }, + { + "path": "operator/locked-browser-02/generated-empty-1920.png", + "bytes": 38890, + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-1920.png" + }, + { + "path": "operator/locked-browser-02/generated-empty-320.html", + "bytes": 11395, + "sha256": "ea0f8421cb234cdbf7828496ee341b0cd90f56d91b9e91e016a14df74b871e69", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-320.html" + }, + { + "path": "operator/locked-browser-02/generated-empty-320.json", + "bytes": 771, + "sha256": "13772bc5a2d076ba18c595eac522a49fbd6e82c6e08ad376f3080d2e116ddbf9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-320.json" + }, + { + "path": "operator/locked-browser-02/generated-empty-320.png", + "bytes": 27800, + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-320.png" + }, + { + "path": "operator/locked-browser-02/generated-empty-390.html", + "bytes": 11395, + "sha256": "0c376ea4fa6e3709fffb76aaf77e5d7938ae941f74e64e0182bcfd282bbc8e42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-390.html" + }, + { + "path": "operator/locked-browser-02/generated-empty-390.json", + "bytes": 771, + "sha256": "5e88f45ae5a4624760dd89f10284284574699bf6a0f67b72fd4b6fd0a04a8fc2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-390.json" + }, + { + "path": "operator/locked-browser-02/generated-empty-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-390.png" + }, + { + "path": "operator/locked-browser-02/generated-empty-768.html", + "bytes": 11395, + "sha256": "116ece6fc1a4651fcf5c94a5cb818d3032c335e7a63bc52f10cc88875cf0a680", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-768.html" + }, + { + "path": "operator/locked-browser-02/generated-empty-768.json", + "bytes": 780, + "sha256": "dcc42f10b4d8b7581db9ad2b758750b17a3119c783d3d56917145561f3de4f8b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-768.json" + }, + { + "path": "operator/locked-browser-02/generated-empty-768.png", + "bytes": 34212, + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-empty-768.png" + }, + { + "path": "operator/locked-browser-02/generated-populated-1024.html", + "bytes": 13112, + "sha256": "932bd9519c8d38b5e35b503c172f80035e2509992d351c246c2d1ca4d2bb219e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1024.html" + }, + { + "path": "operator/locked-browser-02/generated-populated-1024.json", + "bytes": 1677, + "sha256": "51686d3ac465d75e318db0c05a56c67c54601b88a07bb0974a3ac85a9133ea30", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1024.json" + }, + { + "path": "operator/locked-browser-02/generated-populated-1024.png", + "bytes": 56598, + "sha256": "db5b14a2d4e77e3545d129ee6413f70874b349de7c7d67fe60ff75b23e824174", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1024.png" + }, + { + "path": "operator/locked-browser-02/generated-populated-1440.html", + "bytes": 13112, + "sha256": "5ef2d07b3f7f9e9291ad25f265cbd7a67384e07e43fabc946601a9fad1cf392c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1440.html" + }, + { + "path": "operator/locked-browser-02/generated-populated-1440.json", + "bytes": 1677, + "sha256": "fdba9ca269ec34af9d0202f2c7e81cc3294bcae2e02cfc35b6123154c3b8f15e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1440.json" + }, + { + "path": "operator/locked-browser-02/generated-populated-1440.png", + "bytes": 58800, + "sha256": "0bc2f3246755af576a03fd013a3f79acb377261ab1b0b7a2ae0be65d99110ffb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1440.png" + }, + { + "path": "operator/locked-browser-02/generated-populated-1920.html", + "bytes": 13112, + "sha256": "58ae7362a88ce6b6dc5de1999ae6295bb566b6c0622322a8ee6ed81eb528d2c4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1920.html" + }, + { + "path": "operator/locked-browser-02/generated-populated-1920.json", + "bytes": 1677, + "sha256": "28f2a28b81229dd3c15189ce62e73b2c8bedcabfad22e5cb88ae81f95e1ff70b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1920.json" + }, + { + "path": "operator/locked-browser-02/generated-populated-1920.png", + "bytes": 61278, + "sha256": "f35bc072e2f56b00950ad4a12abd14df26e1562deb707c54e460123d022714bc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-1920.png" + }, + { + "path": "operator/locked-browser-02/generated-populated-320.html", + "bytes": 13112, + "sha256": "1c7cfa5ffc46f66c135f85cc2d431a7678fd8e79d4a644e56f6d50dbb4e3f40e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-320.html" + }, + { + "path": "operator/locked-browser-02/generated-populated-320.json", + "bytes": 1667, + "sha256": "ab3020b59a546744f990f4f0e95a4e5267fdd9eb513e2a3b7cb263bdb06bd8be", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-320.json" + }, + { + "path": "operator/locked-browser-02/generated-populated-320.png", + "bytes": 29749, + "sha256": "62b1ec0fc69fb0c4b1c4caf0c3705c8d6f552402e50c611a8625aed21690b64c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-320.png" + }, + { + "path": "operator/locked-browser-02/generated-populated-390.html", + "bytes": 13112, + "sha256": "d549ad323a9802ff3f4ab4857270de8129c79026d7e21d449f0c33b0d11cc669", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-390.html" + }, + { + "path": "operator/locked-browser-02/generated-populated-390.json", + "bytes": 1667, + "sha256": "6a00ae537c6e45fddb576f7cf5480ee2772df51bff88b7a244344d3bd081d51e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-390.json" + }, + { + "path": "operator/locked-browser-02/generated-populated-390.png", + "bytes": 31073, + "sha256": "382ec6f9a7846cc694a7ffb848dccb1ded561a8d64e2c2ff5c5e7834d499cc6f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-390.png" + }, + { + "path": "operator/locked-browser-02/generated-populated-768.html", + "bytes": 13112, + "sha256": "b796ffb3289eab304678df257bd62a87d970bfd644b56a852dd315719356d614", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-768.html" + }, + { + "path": "operator/locked-browser-02/generated-populated-768.json", + "bytes": 1676, + "sha256": "ad6672150db00d25b65209a6b261788739e14a664fdd62a567be945466b46302", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-768.json" + }, + { + "path": "operator/locked-browser-02/generated-populated-768.png", + "bytes": 53412, + "sha256": "8f39389bb97178ffa7148afde59ec70d87173744f8188295f37726a0250d7ee0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-populated-768.png" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1024.html", + "bytes": 11395, + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1024.html" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1024.json", + "bytes": 781, + "sha256": "20472708b8e160864ed2c59112089c060a39d29536f9883cc4c66fdbd2bbb3a1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1024.json" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1024.png", + "bytes": 35614, + "sha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1024.png" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1440.html", + "bytes": 11395, + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1440.html" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1440.json", + "bytes": 781, + "sha256": "7ef87274b0a92f189bbe41a853b0c9a7036b4e165efeedf976812f01fb15b014", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1440.json" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1440.png", + "bytes": 37415, + "sha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1440.png" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1920.html", + "bytes": 11395, + "sha256": "f45e2d2b562aac29a07100c50672497b293333c87d9ec1ff07115f7150c07076", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1920.html" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1920.json", + "bytes": 781, + "sha256": "1a29b3e2698a1ca8e44b68769bc0d4e820520eee04991f58af82e9381c1fab91", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1920.json" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-1920.png", + "bytes": 38890, + "sha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-1920.png" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-320.html", + "bytes": 11395, + "sha256": "ea0f8421cb234cdbf7828496ee341b0cd90f56d91b9e91e016a14df74b871e69", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-320.html" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-320.json", + "bytes": 771, + "sha256": "13772bc5a2d076ba18c595eac522a49fbd6e82c6e08ad376f3080d2e116ddbf9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-320.json" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-320.png", + "bytes": 27800, + "sha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-320.png" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-390.html", + "bytes": 11395, + "sha256": "0c376ea4fa6e3709fffb76aaf77e5d7938ae941f74e64e0182bcfd282bbc8e42", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-390.html" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-390.json", + "bytes": 771, + "sha256": "5e88f45ae5a4624760dd89f10284284574699bf6a0f67b72fd4b6fd0a04a8fc2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-390.json" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-390.png", + "bytes": 28177, + "sha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-390.png" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-768.html", + "bytes": 11395, + "sha256": "116ece6fc1a4651fcf5c94a5cb818d3032c335e7a63bc52f10cc88875cf0a680", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-768.html" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-768.json", + "bytes": 780, + "sha256": "dcc42f10b4d8b7581db9ad2b758750b17a3119c783d3d56917145561f3de4f8b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-768.json" + }, + { + "path": "operator/locked-browser-02/generated-reloaded-768.png", + "bytes": 34212, + "sha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-reloaded-768.png" + }, + { + "path": "operator/locked-browser-02/generated-running-1024.html", + "bytes": 11130, + "sha256": "b45ac31b9a71c27b8459a4952bf4263ce3d17b7e4fc05b6563729ab95643b010", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1024.html" + }, + { + "path": "operator/locked-browser-02/generated-running-1024.json", + "bytes": 612, + "sha256": "c6f4b04eea6f95f4562cf06d405516509407b1cbc1077dfd42bafb63051bd115", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1024.json" + }, + { + "path": "operator/locked-browser-02/generated-running-1024.png", + "bytes": 30690, + "sha256": "062ef6da15f30947243870a7bffe86fe8ecb4db036898c06ff489858bbb5f129", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1024.png" + }, + { + "path": "operator/locked-browser-02/generated-running-1440.html", + "bytes": 11130, + "sha256": "69bff0e4026d05d159febe1d52f6f954e7392150eb61b192891491390889d5de", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1440.html" + }, + { + "path": "operator/locked-browser-02/generated-running-1440.json", + "bytes": 612, + "sha256": "310acac4a182958f95a8300c8aa74529401e50177bc430e313ca58c2579ee483", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1440.json" + }, + { + "path": "operator/locked-browser-02/generated-running-1440.png", + "bytes": 32015, + "sha256": "94f72a9e74a6f3d21a53afa9bafabd4880c43eb995a6808dd7a2256b37b4abba", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1440.png" + }, + { + "path": "operator/locked-browser-02/generated-running-1920.html", + "bytes": 11130, + "sha256": "9733aaaed09782f87b7a0d5c8a81ecb2b57d8a379f527f884810201e767e25ba", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1920.html" + }, + { + "path": "operator/locked-browser-02/generated-running-1920.json", + "bytes": 612, + "sha256": "42446b64ce987f10520c142cbda41a6bc072879513aef5f1650d4dc06a2f8f5f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1920.json" + }, + { + "path": "operator/locked-browser-02/generated-running-1920.png", + "bytes": 33425, + "sha256": "9026f07501136fdfe942540c9dd4fed895f234a2c4ed0bc9ab9c2850663a68ca", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-1920.png" + }, + { + "path": "operator/locked-browser-02/generated-running-320.html", + "bytes": 11130, + "sha256": "0861ae69d373f933470a3f35d7350aee4988e58f109a044e686c8d9067c2211c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-320.html" + }, + { + "path": "operator/locked-browser-02/generated-running-320.json", + "bytes": 602, + "sha256": "c0a4e79d899225de037ebbb1937067ae893f044925957d42d5c4f8cac8f2f969", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-320.json" + }, + { + "path": "operator/locked-browser-02/generated-running-320.png", + "bytes": 25672, + "sha256": "df3e7ffedf6384aa56ca2e0fbabd285f2210fcbb98f3a0832038cd8cfb946abe", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-320.png" + }, + { + "path": "operator/locked-browser-02/generated-running-390.html", + "bytes": 11130, + "sha256": "3c6b033744a6c35b2c8e1a207b0d4922527c31f6ad531bb7961ded8cccf7c21f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-390.html" + }, + { + "path": "operator/locked-browser-02/generated-running-390.json", + "bytes": 602, + "sha256": "b094f41ffa57289a109747745e57f00a915d894877bc6d2f8291bbca404d2785", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-390.json" + }, + { + "path": "operator/locked-browser-02/generated-running-390.png", + "bytes": 26301, + "sha256": "fe40295325c3942cd1bfcf179d9fd626f7699c7dc65c84da7c4ad5a2a8f38e01", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-390.png" + }, + { + "path": "operator/locked-browser-02/generated-running-768.html", + "bytes": 11130, + "sha256": "ebfa0b72d027cd6fcbed5aecd18eb9f97bb8f38ac903f40bd173b1d18514f4e1", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-768.html" + }, + { + "path": "operator/locked-browser-02/generated-running-768.json", + "bytes": 611, + "sha256": "6c3f4b899b288288c21b74ef518e0cf682919927e7c94c68edf51db97904af3f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-768.json" + }, + { + "path": "operator/locked-browser-02/generated-running-768.png", + "bytes": 30274, + "sha256": "582683ea8ece2702fb4a096498cc00861998dcbc02f2a77a7f81523d397eb17a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-running-768.png" + }, + { + "path": "operator/locked-browser-02/generated-sustained-390.html", + "bytes": 32813, + "sha256": "71681a8101483faea00e02990f3b69edb972d43e2f2bf24f0b0319c996689a9a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-sustained-390.html" + }, + { + "path": "operator/locked-browser-02/generated-sustained-390.json", + "bytes": 6513, + "sha256": "dd7cc235cbe5dd263e284bbf24c4f6c624157d6bf0ac5e12c1340979a4c9c011", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-sustained-390.json" + }, + { + "path": "operator/locked-browser-02/generated-sustained-390.png", + "bytes": 30267, + "sha256": "9edf791fc10d37996214708c197022e52134cae4af28e9b7b4d2d404946a763e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\generated-sustained-390.png" + }, + { + "path": "operator/locked-browser-02/report.json", + "bytes": 128704, + "sha256": "0679d7de20d2694aa81c760a6be7637c3307591c81ec18638a47a0d70ab1b71e", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02\\report.json" + }, + { + "path": "operator/locked-browser-02.command.json", + "bytes": 361, + "sha256": "9dc13fab78e72c70dafeea9ff0f435054fe5bdf3fea090e5b68bd533685ad4d6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02.command.json" + }, + { + "path": "operator/locked-browser-02.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02.stderr" + }, + { + "path": "operator/locked-browser-02.stdout", + "bytes": 204, + "sha256": "9d32b1bff4d343703e17fac68be10081276fd299dc23b7a377d6647129c633fc", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02.stdout" + }, + { + "path": "operator/locked-consumer-commands.json", + "bytes": 2271, + "sha256": "dba7894afaf603c3ff3b04bc6b2c11023eab9d1faf5d96f707fd776ee01a13b2", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-consumer-commands.json" + }, + { + "path": "operator/locked-existing-target-refusal.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-existing-target-refusal.stderr" + }, + { + "path": "operator/locked-existing-target-refusal.stdout", + "bytes": 507, + "sha256": "46ba9c6dec43dd03241dfb1f296e335cd1ed7fb940809642c7284c151b4fc954", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-existing-target-refusal.stdout" + }, + { + "path": "operator/locked-final-checks.json", + "bytes": 855, + "sha256": "c603d7a3138079428ef76de92aa2299084d415a2a5cff6ede9d63d3b6349391a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-final-checks.json" + }, + { + "path": "operator/locked-generated-audit.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-generated-audit.stderr" + }, + { + "path": "operator/locked-generated-audit.stdout", + "bytes": 5325, + "sha256": "4d1456a71597d6eeb8573095e09bb2f7368c85626a769ef5a3e2dac782b8ab47", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-generated-audit.stdout" + }, + { + "path": "operator/locked-generated-production-audit.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-generated-production-audit.stderr" + }, + { + "path": "operator/locked-generated-production-audit.stdout", + "bytes": 366, + "sha256": "75206656b5cfd245d6c7e6cd2f4f579d10db9fa0b708b19c6bbc29263526b379", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-generated-production-audit.stdout" + }, + { + "path": "operator/locked-host-install.stderr", + "bytes": 150, + "sha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-host-install.stderr" + }, + { + "path": "operator/locked-host-install.stdout", + "bytes": 144, + "sha256": "b64e473f55f7adaafacfdcd0ce0ba844fd7496be03de1add6c2675ade86bf52a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-host-install.stdout" + }, + { + "path": "operator/locked-installed-consumer.json", + "bytes": 40428, + "sha256": "e555920ab2721acffc061072fe60240033b0210473e3ddc2243b91601a2316d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-installed-consumer.json" + }, + { + "path": "operator/locked-installed-doctor.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-installed-doctor.stderr" + }, + { + "path": "operator/locked-installed-doctor.stdout", + "bytes": 1118, + "sha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-installed-doctor.stdout" + }, + { + "path": "operator/locked-installed-scaffold.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-installed-scaffold.stderr" + }, + { + "path": "operator/locked-installed-scaffold.stdout", + "bytes": 2021, + "sha256": "4e0549fd844a62d3c3686d0014f3f41cc70adb95ebdc0eb2fd61e7babca21674", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-installed-scaffold.stdout" + }, + { + "path": "operator/locked-source-pack.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-source-pack.stderr" + }, + { + "path": "operator/locked-source-pack.stdout", + "bytes": 28575, + "sha256": "6bec63aa0aada6cc4036f4031a8b9c2df6e1e44a12e245f0c5e0fadbbd1d675c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-source-pack.stdout" + }, + { + "path": "operator/locked-source-test.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-source-test.stderr" + }, + { + "path": "operator/locked-source-test.stdout", + "bytes": 1251, + "sha256": "7f8f2b93171f9c40c250c321864b7a5ab9a3b2d72b00f0b0db7e24a7fddf4418", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-source-test.stdout" + }, + { + "path": "operator/package-installed-bindings.json", + "bytes": 60840, + "sha256": "29e64cdfa39615640cbef7cc0eb8eb25ca04c7a6c29b8d00001d22c3e41f00d9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\package-installed-bindings.json" + }, + { + "path": "operator/primary-head.after", + "bytes": 41, + "sha256": "60f857286c031a8172d111c183c1c2424aea72ad167f65a7eb0f13343712efce", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-head.after" + }, + { + "path": "operator/primary-index-nul.after", + "bytes": 13245, + "sha256": "76673f16be2d2376a07251eb459f191fa9d254c54e7ad9fe0e88eb5f9b812ed3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-index-nul.after" + }, + { + "path": "operator/primary-index.after", + "bytes": 13245, + "sha256": "0d7c23b38f63ed4c17a9fd7a2b93fc797a2062bfb4e5090214ad277fa5f171ea", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-index.after" + }, + { + "path": "operator/primary-index.before", + "bytes": 13245, + "sha256": "76673f16be2d2376a07251eb459f191fa9d254c54e7ad9fe0e88eb5f9b812ed3", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-index.before" + }, + { + "path": "operator/primary-refs.after", + "bytes": 576, + "sha256": "66c33b755dd5ab353501b08720e282584bbfc643331375bb49b45e09fdb45007", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-refs.after" + }, + { + "path": "operator/primary-refs.before", + "bytes": 482, + "sha256": "b9d66cb9cc694da245d342b96cd63a5ba0055c54eeda5706be40549cdc5a1407", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-refs.before" + }, + { + "path": "operator/primary-status.after", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-status.after" + }, + { + "path": "operator/primary-status.before", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-status.before" + }, + { + "path": "operator/primary-worktrees.after", + "bytes": 398, + "sha256": "960d0ec942afbfd80194e5e9c9febf8a0ae9fa7cd1e588817df50df4e8352c8a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-worktrees.after" + }, + { + "path": "operator/primary-worktrees.before", + "bytes": 171, + "sha256": "bfac049f183713aa28c3cf8dd6c85ab47f38276cd87a4c6bac3810a029e1787b", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\primary-worktrees.before" + }, + { + "path": "operator/source-audit.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-audit.stderr" + }, + { + "path": "operator/source-audit.stdout", + "bytes": 11986, + "sha256": "0507abc50afeaaf68af460c5d475d106c4749a1fdda75812c327823c36cf59ab", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-audit.stdout" + }, + { + "path": "operator/source-custody.json", + "bytes": 638, + "sha256": "98d925bb27fd407671c82302d9f143ae2099fac70cd0a751bc3f700e26b53c85", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-custody.json" + }, + { + "path": "operator/source-npm-ci.json", + "bytes": 706, + "sha256": "3b37194d316b953f547f7878e040c132b881e0368f43b2fc59f252c267e05bf9", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-npm-ci.json" + }, + { + "path": "operator/source-npm-ci.stderr", + "bytes": 358, + "sha256": "da370bd608ea0f37ee2141f76cc040fe073f2665c7130ec0d3eb441b3a077804", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-npm-ci.stderr" + }, + { + "path": "operator/source-npm-ci.stdout", + "bytes": 354, + "sha256": "a7cc1fc56bd4557bcba245d99a30bcbf76f7fc2f8347c9af41826f3d2c8d5624", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-npm-ci.stdout" + }, + { + "path": "operator/source-pack.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-pack.stderr" + }, + { + "path": "operator/source-pack.stdout", + "bytes": 28336, + "sha256": "d2d9f05091633befdb449cb5d572c882d710855117ce7acd3045c33b0dda2a59", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\source-pack.stdout" + }, + { + "path": "operator/sqlite-reopen.json", + "bytes": 967, + "sha256": "46e8a29bc91f337c1aa4e7de5e913675be6d6f2409df3594ba1edb9e0e0c622d", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\sqlite-reopen.json" + }, + { + "path": "operator/sqlite-reopen.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\sqlite-reopen.stderr" + }, + { + "path": "operator/sqlite-reopen.stdout", + "bytes": 124, + "sha256": "a6c95f2898e8b8f6d9aef94111b98fbe47a16d152b03a83d6b8dca54c0915a24", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\sqlite-reopen.stdout" + }, + { + "path": "operator/template-lock-construction.command.json", + "bytes": 177, + "sha256": "75a028c63d52564c8e08ad181ea3add979943b77ec8a5edb21012e71e5576bd0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\template-lock-construction.command.json" + }, + { + "path": "operator/template-lock-construction.result.json", + "bytes": 824, + "sha256": "7cd1f55ba3bace5b4a6c454b8f09016f4a661c24f72c4cbc1a4edf9c22718048", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\template-lock-construction.result.json" + }, + { + "path": "operator/template-lock-construction.stderr", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\template-lock-construction.stderr" + }, + { + "path": "operator/template-lock-construction.stdout", + "bytes": 134, + "sha256": "22a980973d787e806a54ff17f2a351e2f7a8bbf4c7165a85eaf428ddee087ab6", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\template-lock-construction.stdout" + }, + { + "path": "operator/template-lock-seed.json", + "bytes": 327367, + "sha256": "a708387eded0f5da3fe57d97750d8f79ed563e4fb1e12c1837ef233544d79268", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\template-lock-seed.json" + }, + { + "path": "operator/worktree-create.stderr", + "bytes": 76, + "sha256": "412d092f7f9a8341ab1e36010ff5f6f355174dfde58b060c221af47cee0fdcc0", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\worktree-create.stderr" + }, + { + "path": "operator/worktree-create.stdout", + "bytes": 97, + "sha256": "1ad1748a5ad6b4de45732f83b76313c42e8568c93ff2d91f97c0d804ed6216a4", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\worktree-create.stdout" + }, + { + "path": "plans/E6e_NODEAGENT_CURRENT_CONSUMER_PLAN.md.txt", + "bytes": 3852, + "sha256": "2b446c2d9af46eacae1a800e7ebfc8096426023d7af804562fda7f8868716f14", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_CURRENT_CONSUMER_PLAN.md" + }, + { + "path": "plans/E6e_NODEAGENT_D3_REPAIR_PLAN.json", + "bytes": 5218, + "sha256": "b06c4479e59945c68dec77488d48690b0155063e8c831f51f6468663d3284120", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_D3_REPAIR_PLAN.json" + }, + { + "path": "plans/E6e_NODEAGENT_D3_REPAIR_PLAN.md.txt", + "bytes": 4157, + "sha256": "f128cea4b359b583e2df85a3d3faa253ef96d87166034d52f8edbcd732f3821c", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_D3_REPAIR_PLAN.md" + }, + { + "path": "plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.json", + "bytes": 3665, + "sha256": "e6ceec482df252cb28f6bed66f643da10c39618ff5cd2c4706f5679004096220", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.json" + }, + { + "path": "plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.md.txt", + "bytes": 3138, + "sha256": "a72f6e4ddc3885a992cd606d7e56b92f63a1639b5938078d374cb5d9de9caae5", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.md" + }, + { + "path": "plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.json", + "bytes": 3433, + "sha256": "85c6640a3b4cbd95c428c0a2658a138751573ecaf42267316672b3a1a074a30a", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.json" + }, + { + "path": "plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.md.txt", + "bytes": 1740, + "sha256": "c4dd4d688b37e8046782e349b293db0d37b2e8564b5e1472f555297f10e95229", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.md" + }, + { + "path": "plans/E6e_NODEAGENT_ENLARGEMENT_ADDENDUM.json", + "bytes": 1067, + "sha256": "012658e5de2e590f7be123d41f8613afe7df5ef860eaaa73267c5a917ac6c86f", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_ENLARGEMENT_ADDENDUM.json" + }, + { + "path": "plans/E6e_NODEAGENT_KEYBOARD_VISIBILITY_ADDENDUM.json", + "bytes": 1332, + "sha256": "3ee3473b4bfb7fb22039b59e6e44844189f53c1ce274455021c0c62d44d59873", + "operatorSource": "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e_NODEAGENT_KEYBOARD_VISIBILITY_ADDENDUM.json" + }, + { + "path": "README.md", + "bytes": 4910, + "sha256": "9613ae8efa10e41740a2998b7d8d965ce1751f12f8aea85c0514fcac63c8789b", + "operatorSource": "Authored portable index" + } + ], + "grade": null, + "publicationCorrection": { + "preRepairManifestSha256": "c3601b7021e3d7d5a1b233b620f6952422b98828de791492de393e4776dc8210", + "sourceJudgeSha256": "a33a0e1932a73d6c3dbaa5d8e233567771e9091ba2815efdbc051ccde2ea7a25", + "priorFutureFilteredMismatches": 60, + "rule": ".gitattributes", + "historicalRawBytesUnchanged": true, + "allSource234BindingsUnchanged": true + } +} diff --git a/evidence/current-consumer-20260905/operator/D3_SOURCE_BEFORE_BINDINGS.json b/evidence/current-consumer-20260905/operator/D3_SOURCE_BEFORE_BINDINGS.json new file mode 100644 index 0000000..05ba5ad --- /dev/null +++ b/evidence/current-consumer-20260905/operator/D3_SOURCE_BEFORE_BINDINGS.json @@ -0,0 +1,32 @@ +{ + "entries": [ + { + "path": "evidence/nodeagent-d3-source-before/source-running-390", + "pngSha256": "0e61aa353c714c586a86f780e6edee68d43e5d4a26b68b8b98ae0d4ebfaea873", + "state": "running", + "width": 390 + }, + { + "path": "evidence/nodeagent-d3-source-before/source-error-390", + "pngSha256": "02217ecb45988088b5c8a329d439cf1edf36daff0c94485eaad75edbd58406ec", + "state": "error", + "width": 390 + }, + { + "path": "evidence/nodeagent-d3-source-before/source-running-1440", + "pngSha256": "f5e8fbf4b550ddf1270bb4b1dd2ba01677aae3b586cde19143a55651b8d08ef4", + "state": "running", + "width": 1440 + }, + { + "path": "evidence/nodeagent-d3-source-before/source-error-1440", + "pngSha256": "835986f05145c79da8c42d8198702795cc83d4b0cfa382f9cb825e83268a2a36", + "state": "error", + "width": 1440 + } + ], + "sourceHead": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "noSourceChanges": true, + "rawReportSha256": "256a6ca00c3041129d0048b2323bd1a2df3c0647ce19051df82f83434a7eb951", + "status": "BEFORE_ONLY_D3_NOT_IMPLEMENTED" +} diff --git a/evidence/current-consumer-20260905/operator/browser-before-01-command.json b/evidence/current-consumer-20260905/operator/browser-before-01-command.json new file mode 100644 index 0000000..418ba66 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/browser-before-01-command.json @@ -0,0 +1,10 @@ +{ + "args": [ + "node", + "e2e/current-consumer-proof.mjs", + "D:/ProjectRecovery/NodeAgent current consumer 20260905/Generated Chat app", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-01" + ], + "exitCode": 1, + "seconds": 16.511797189712524 +} diff --git a/evidence/current-consumer-20260905/operator/browser-before-01-harness.mjs.txt b/evidence/current-consumer-20260905/operator/browser-before-01-harness.mjs.txt new file mode 100644 index 0000000..0b3079c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/browser-before-01-harness.mjs.txt @@ -0,0 +1,66 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import { chromium } from 'playwright'; +import { createServer } from 'vite'; + +// The supplied app must be the retained output of the installed package CLI. +// Source/consumer adapters are changed only in browser memory for a labelled error knockout. +const source = path.resolve(import.meta.dirname, '..'); +const consumer = path.resolve(process.argv[2] ?? ''); +const evidence = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide generated consumer path and NEW evidence directory'); +await mkdir(evidence, { recursive:false }); +const sha = value => createHash('sha256').update(value).digest('hex'); +const tracked = execFileSync('git',['ls-files','-z'],{cwd:source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(Boolean).filter(file=>!path.basename(file).startsWith('.env')); +tracked.push('e2e/current-consumer-proof.mjs'); +const sourceHashes = async () => Object.fromEntries(await Promise.all(tracked.map(async file=>[file,sha(await readFile(path.join(source,file)))]))); +const consumerFiles=['package.json','package-lock.json','index.html','vite.config.mjs','src/main.jsx','src/styles.css','src/nodeagent-chat/NodeAgentChatApp.jsx','src/nodeagent-chat/nodeAgentLocalAdapter.js','src/nodeagent-chat/toolUIs.jsx']; +const consumerHashes = async () => Object.fromEntries(await Promise.all(consumerFiles.map(async file=>[file,sha(await readFile(path.join(consumer,file)))]))); +const report={namedProof:'NODEAGENT-CURRENT-CONSUMER-01',passed:false,startedAt:new Date().toISOString(),sourceBefore:await sourceHashes(),consumerBefore:await consumerHashes(),checks:[],captures:[],observations:[],console:[],requests:[],providerCalls:0,grade:null}; +const check=(value,name)=>{report.checks.push({name,passed:Boolean(value)});assert.ok(value,name);}; +let browser,page;const servers=[]; +async function server(root){const app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port:0,strictPort:false,open:false}});await app.listen();servers.push(app);return 'http://127.0.0.1:'+app.httpServer.address().port;} +async function context(base,width){ + const ctx=await browser.newContext({viewport:{width,height:width<=390?844:960},colorScheme:'light'}); + await ctx.route('**/*',route=>{const request=route.request(),url=new URL(request.url());if(report.requests.length<500)report.requests.push({origin:url.origin,path:url.pathname,method:request.method()});if(url.origin!==base&&!['fonts.googleapis.com','fonts.gstatic.com'].includes(url.hostname))return route.abort();return route.continue();}); + page=await ctx.newPage();page.setDefaultTimeout(12000);page.on('pageerror',error=>report.console.push({type:'pageerror',message:error.message}));page.on('console',message=>{if(message.type()==='error'&&report.console.length<100)report.console.push({type:'console',message:message.text()});});await page.goto(base,{waitUntil:'domcontentloaded'});await page.locator('textarea').waitFor();await page.evaluate(()=>Promise.race([document.fonts.ready,new Promise(resolve=>setTimeout(resolve,3000))]));return ctx; +} +async function capture(name){ + await page.evaluate(()=>new Promise(resolve=>requestAnimationFrame(()=>requestAnimationFrame(resolve)))); + const html=await page.content();const state=await page.evaluate(()=>({url:location.href,viewport:{width:innerWidth,height:innerHeight},focused:document.activeElement?.tagName,overflow:document.documentElement.scrollWidth-innerWidth,buttons:[...document.querySelectorAll('button')].map(e=>({label:e.getAttribute('aria-label')??e.textContent,disabled:e.disabled})),bodyText:document.body.innerText.slice(-6000)})); + await page.screenshot({path:path.join(evidence,name+'.png'),caret:'initial'});check(await page.content()===html,name+' screenshot restores exact DOM');await writeFile(path.join(evidence,name+'.html'),html);await writeFile(path.join(evidence,name+'.json'),JSON.stringify(state,null,2)+'\n');report.captures.push({name,state,pngSha256:sha(await readFile(path.join(evidence,name+'.png')))});return state; +} +async function boundary(name,selectors){ + const html=await page.content(); + await page.evaluate(items=>{for(const [index,item]of items.entries()){const target=document.querySelector(item.selector),b=target.getBoundingClientRect();const box=document.createElement('div');box.dataset.boundaryProof='true';Object.assign(box.style,{position:'fixed',left:b.left+'px',top:b.top+'px',width:b.width+'px',height:b.height+'px',border:'3px solid #d31372',boxSizing:'border-box',zIndex:'2147483646',pointerEvents:'none'});const label=document.createElement('div');label.textContent=`CHANGE ${String.fromCharCode(65+index)} · ${item.title}`;Object.assign(label.style,{position:'absolute',bottom:'100%',left:'0',background:'#971352',color:'white',padding:'3px 6px',font:'bold 12px sans-serif',whiteSpace:'nowrap'});if(b.top<35){label.style.bottom='auto';label.style.top='100%';}box.append(label);document.body.append(box);}},selectors); + await page.screenshot({path:path.join(evidence,name+'-change-boundary.png'),caret:'initial'}); + await page.evaluate(()=>document.querySelectorAll('[data-boundary-proof]').forEach(e=>e.remove()));check(await page.content()===html,name+' boundary restores exact original DOM'); + const viewport=page.viewportSize();await writeFile(path.join(evidence,name+'-change-boundary.md'),`# UI change boundary\n\nRoute: ${page.url()}\nViewport: ${viewport.width}x${viewport.height}\nTheme: light\nSession: anonymous no-key local browser\nTrigger: ${name}\nFixture: explicit local product question; error state uses a labelled in-memory adapter throw, not a provider call.\n\n${selectors.map((item,index)=>`CHANGE ${String.fromCharCode(65+index)} · ${item.title}: ${item.selector}`).join('\n\n')}\n\nCurrent: composer sends work but offers no Stop/Cancel; assistant output has no designed failure/retry surface.\nExpected next slice (requires root review): honest current run status, supported cancellation and explicit retry preserve earlier messages. Cancel must not claim to undo prior computed work or durable writes.\n\nStates: empty remains no-key; loading keeps an inspectable current step and supported Stop; error names failed run and recovery without fake completion; populated keeps four tool results; long text wraps; controls remain usable at320/390/768/1024/1440/1920 and enlarged text.\n\nProtected neighbors: branding/navigation, prior conversation/tool results, graph facts, provider/model policy, durable state and all external systems. The browser session still resets on reload until a separate persistence contract exists. No graph assertion receipt is invented.\n`); + report.observations.push({name,kind:'labelled-3px-before',selectors}); +} +async function send(text){await page.locator('textarea').fill(text);await page.locator('textarea').press('Enter');} +async function complete(generated,count=1){await page.waitForFunction(({generated,count})=>{const cards=document.querySelectorAll(generated?'.naTool':'.na-tool');return cards.length===4*count&&[...cards].every(e=>e.getAttribute('data-running')!=='true')&&document.body.innerText.includes('Done.');},{generated,count});} +async function throwOnNext(base,generated){await page.evaluate(async({modulePath,key})=>{const module=await import(modulePath);module[key].run=async function*(){yield{content:[{type:'text',text:'PROOF FIXTURE: checking the saved local result.'}]};throw new Error('PROOF FIXTURE: adapter failed before the next result.');};},{modulePath:base+(generated?'/src/nodeagent-chat/nodeAgentLocalAdapter.js':'/src/features/node-agent/runtime/nodeAgentChatAdapter.ts'),key:generated?'nodeAgentLocalAdapter':'nodeAgentChatAdapter'});} +try { + const generatedBase=await server(consumer),sourceBase=await server(source);browser=await chromium.launch({headless:true});report.browser=browser.version();report.node=process.version; + for(const width of [320,390,768,1024,1440,1920]){ + const ctx=await context(generatedBase,width);check(await page.locator('[data-nodeagent-chat="empty"]').isVisible(),'generated empty state '+width);await capture('generated-empty-'+width); + await send('PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.');await page.locator('.naTool[data-running="true"]').first().waitFor(); + const running=await capture('generated-running-'+width);check(running.overflow<=1,'generated running reflows '+width);report.observations.push({name:'generated-D3-'+width,hasStop:running.buttons.some(b=>/stop|cancel/i.test(b.label??'')),sendDisabled:running.buttons.find(b=>b.label==='Send')?.disabled}); + // A second immediate Enter cannot add a concurrent model/fixture run. + await page.locator('textarea').press('Enter');await complete(true);check(await page.locator('.naTool').count()===4,'burst Enter retains one four-card run '+width);await capture('generated-populated-'+width); + await page.reload({waitUntil:'domcontentloaded'});await page.locator('textarea').waitFor();check(await page.locator('.naTool').count()===0&&await page.locator('[data-nodeagent-chat="empty"]').isVisible(),'reload resets only browser session '+width);await capture('generated-reloaded-'+width);await ctx.close(); + } + const sustained=await context(generatedBase,390),began=Date.now();for(let i=0;i<8;i++){await send('PROOF FIXTURE repeat '+(i+1)+': inspect the same local adoption evidence.');await complete(true,i+1);check(await page.locator('.naTool').count()===4*(i+1),'sustained accumulated four-card run '+(i+1));}report.sustained={turns:8,toolCards:32,elapsedMs:Date.now()-began};await capture('generated-sustained-390');await sustained.close(); + for(const generated of [true,false])for(const width of [390,1440]){ + const base=generated?generatedBase:sourceBase,kind=generated?'generated':'source';const ctx=await context(base,width);await send('PROOF FIXTURE: inspect the current no-key agent handoff.');await page.locator(generated?'.naTool[data-running="true"]':'.na-tool').first().waitFor(); + const selectors=[{selector:generated?'.naComposer':'.na-composer',title:'Run controls'},{selector:generated?'.naMsgAssistant:last-of-type .naBubble':'.na-msg-assistant:last-of-type .na-bubble',title:'Current run response'}]; + await capture(kind+'-D3-running-'+width);await boundary(kind+'-D3-running-'+width,selectors);await complete(generated);await throwOnNext(base,generated);await send('PROOF FIXTURE: reproduce adapter failure while retaining the previous complete turn.');await page.waitForFunction(()=>document.body.innerText.includes('PROOF FIXTURE: checking the saved local result.'));await page.waitForTimeout(300); + const state=await capture(kind+'-D3-error-'+width);report.observations.push({name:kind+'-D3-error-'+width,hasVisibleError:/adapter failed before the next result/.test(state.bodyText),hasRetry:state.buttons.some(b=>/retry|try again/i.test(b.label??'')),retainedToolCards:await page.locator(generated?'.naTool':'.na-tool').count()});await boundary(kind+'-D3-error-'+width,selectors);await ctx.close(); + } + check(report.requests.every(r=>r.method==='GET'),'browser made no writes or provider requests');report.sourceAfter=await sourceHashes();report.consumerAfter=await consumerHashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);assert.deepEqual(report.consumerAfter,report.consumerBefore);check(true,'source and installed generated input bytes unchanged');report.passed=true; +}catch(error){report.error=String(error.stack??error);process.exitCode=1; +}finally{await browser?.close();for(const app of servers)await app.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(evidence,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({evidence,passed:report.passed,checks:report.checks.length,captures:report.captures.length,error:report.error}));} diff --git a/evidence/current-consumer-20260905/operator/browser-before-01.stderr b/evidence/current-consumer-20260905/operator/browser-before-01.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/browser-before-01.stdout b/evidence/current-consumer-20260905/operator/browser-before-01.stdout new file mode 100644 index 0000000..9edcc51 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/browser-before-01.stdout @@ -0,0 +1,2 @@ +Port 5173 is in use, trying another one... +{"evidence":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-01","passed":false,"checks":0,"captures":0,"error":"page.goto: Timeout 12000ms exceeded.\nCall log:\n\u001b[2m - navigating to \"http://127.0.0.1:5173/\", waiting until \"domcontentloaded\"\u001b[22m\n\n at context (D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905\\e2e\\current-consumer-proof.mjs:29:306)\n at async file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-proof.mjs:50:15"} diff --git a/evidence/current-consumer-20260905/operator/browser-before-02-command.json b/evidence/current-consumer-20260905/operator/browser-before-02-command.json new file mode 100644 index 0000000..263a04d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/browser-before-02-command.json @@ -0,0 +1,10 @@ +{ + "command": [ + "node", + "e2e/current-consumer-proof.mjs", + "D:/ProjectRecovery/NodeAgent current consumer 20260905/Generated Chat app", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-02" + ], + "exit": 1, + "seconds": 2.086836338043213 +} diff --git a/evidence/current-consumer-20260905/operator/browser-before-02-command.stderr b/evidence/current-consumer-20260905/operator/browser-before-02-command.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/browser-before-02-command.stdout b/evidence/current-consumer-20260905/operator/browser-before-02-command.stdout new file mode 100644 index 0000000..a266c0c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/browser-before-02-command.stdout @@ -0,0 +1 @@ +{"evidence":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-02","passed":false,"checks":0,"captures":0,"error":"locator.waitFor: Error: strict mode violation: locator('textarea') resolved to 2 elements:\n 1) aka getByRole('textbox', { name: 'Ask NodeAgent...' })\n 2) aka locator('textarea').nth(1)\n\nCall log:\n\u001b[2m - waiting for locator('textarea') to be visible\u001b[22m\n\n at context (D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905\\e2e\\current-consumer-proof.mjs:34:393)\n at async file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-proof.mjs:55:15"} diff --git a/evidence/current-consumer-20260905/operator/browser-before-02-harness.mjs.txt b/evidence/current-consumer-20260905/operator/browser-before-02-harness.mjs.txt new file mode 100644 index 0000000..729ae47 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/browser-before-02-harness.mjs.txt @@ -0,0 +1,72 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import { createServer as createPortProbe } from 'node:net'; +import { chromium } from 'playwright'; +import { createServer } from 'vite'; + +// The supplied app must be the retained output of the installed package CLI. +// Source/consumer adapters are changed only in browser memory for a labelled error knockout. +const source = path.resolve(import.meta.dirname, '..'); +const consumer = path.resolve(process.argv[2] ?? ''); +const evidence = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide generated consumer path and NEW evidence directory'); +await mkdir(evidence, { recursive:false }); +const sha = value => createHash('sha256').update(value).digest('hex'); +const tracked = execFileSync('git',['ls-files','-z'],{cwd:source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(Boolean).filter(file=>!path.basename(file).startsWith('.env')); +tracked.push('e2e/current-consumer-proof.mjs'); +const sourceHashes = async () => Object.fromEntries(await Promise.all(tracked.map(async file=>[file,sha(await readFile(path.join(source,file)))]))); +const consumerFiles=['package.json','package-lock.json','index.html','vite.config.mjs','src/main.jsx','src/styles.css','src/nodeagent-chat/NodeAgentChatApp.jsx','src/nodeagent-chat/nodeAgentLocalAdapter.js','src/nodeagent-chat/toolUIs.jsx']; +const consumerHashes = async () => Object.fromEntries(await Promise.all(consumerFiles.map(async file=>[file,sha(await readFile(path.join(consumer,file)))]))); +const report={namedProof:'NODEAGENT-CURRENT-CONSUMER-01',passed:false,startedAt:new Date().toISOString(),sourceBefore:await sourceHashes(),consumerBefore:await consumerHashes(),checks:[],captures:[],observations:[],console:[],requests:[],providerCalls:0,grade:null}; +const check=(value,name)=>{report.checks.push({name,passed:Boolean(value)});assert.ok(value,name);}; +let browser,page;const servers=[]; +async function server(root){ + const probe=createPortProbe(); await new Promise(resolve=>probe.listen(0,'127.0.0.1',resolve)); const port=probe.address().port; await new Promise(resolve=>probe.close(resolve)); + const app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}}); await app.listen(); servers.push(app); + return 'http://127.0.0.1:'+port; +} +async function context(base,width){ + const ctx=await browser.newContext({viewport:{width,height:width<=390?844:960},colorScheme:'light'}); + await ctx.route('**/*',route=>{const request=route.request(),url=new URL(request.url());if(report.requests.length<500)report.requests.push({origin:url.origin,path:url.pathname,method:request.method()});if(url.origin!==base&&!['fonts.googleapis.com','fonts.gstatic.com'].includes(url.hostname))return route.abort();return route.continue();}); + page=await ctx.newPage();page.setDefaultTimeout(12000);page.on('pageerror',error=>report.console.push({type:'pageerror',message:error.message}));page.on('console',message=>{if(message.type()==='error'&&report.console.length<100)report.console.push({type:'console',message:message.text()});});await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea').waitFor();await page.evaluate(()=>Promise.race([document.fonts.ready,new Promise(resolve=>setTimeout(resolve,3000))]));return ctx; +} +async function capture(name){ + await page.evaluate(()=>new Promise(resolve=>requestAnimationFrame(()=>requestAnimationFrame(resolve)))); + const html=await page.content();const state=await page.evaluate(()=>({url:location.href,viewport:{width:innerWidth,height:innerHeight},focused:document.activeElement?.tagName,overflow:document.documentElement.scrollWidth-innerWidth,buttons:[...document.querySelectorAll('button')].map(e=>({label:e.getAttribute('aria-label')??e.textContent,disabled:e.disabled})),bodyText:document.body.innerText.slice(-6000)})); + await page.screenshot({path:path.join(evidence,name+'.png'),caret:'initial'});check(await page.content()===html,name+' screenshot restores exact DOM');await writeFile(path.join(evidence,name+'.html'),html);await writeFile(path.join(evidence,name+'.json'),JSON.stringify(state,null,2)+'\n');report.captures.push({name,state,pngSha256:sha(await readFile(path.join(evidence,name+'.png')))});return state; +} +async function boundary(name,selectors){ + const html=await page.content(); + await page.evaluate(items=>{for(const [index,item]of items.entries()){const target=document.querySelector(item.selector),b=target.getBoundingClientRect();const box=document.createElement('div');box.dataset.boundaryProof='true';Object.assign(box.style,{position:'fixed',left:b.left+'px',top:b.top+'px',width:b.width+'px',height:b.height+'px',border:'3px solid #d31372',boxSizing:'border-box',zIndex:'2147483646',pointerEvents:'none'});const label=document.createElement('div');label.textContent=`CHANGE ${String.fromCharCode(65+index)} · ${item.title}`;Object.assign(label.style,{position:'absolute',bottom:'100%',left:'0',background:'#971352',color:'white',padding:'3px 6px',font:'bold 12px sans-serif',whiteSpace:'nowrap'});if(b.top<35){label.style.bottom='auto';label.style.top='100%';}box.append(label);document.body.append(box);}},selectors); + await page.screenshot({path:path.join(evidence,name+'-change-boundary.png'),caret:'initial'}); + await page.evaluate(()=>document.querySelectorAll('[data-boundary-proof]').forEach(e=>e.remove()));check(await page.content()===html,name+' boundary restores exact original DOM'); + const viewport=page.viewportSize();await writeFile(path.join(evidence,name+'-change-boundary.md'),`# UI change boundary\n\nRoute: ${page.url()}\nViewport: ${viewport.width}x${viewport.height}\nTheme: light\nSession: anonymous no-key local browser\nTrigger: ${name}\nFixture: explicit local product question; error state uses a labelled in-memory adapter throw, not a provider call.\n\n${selectors.map((item,index)=>`CHANGE ${String.fromCharCode(65+index)} · ${item.title}: ${item.selector}`).join('\n\n')}\n\nCurrent: composer sends work but offers no Stop/Cancel; assistant output has no designed failure/retry surface.\nExpected next slice (requires root review): honest current run status, supported cancellation and explicit retry preserve earlier messages. Cancel must not claim to undo prior computed work or durable writes.\n\nStates: empty remains no-key; loading keeps an inspectable current step and supported Stop; error names failed run and recovery without fake completion; populated keeps four tool results; long text wraps; controls remain usable at320/390/768/1024/1440/1920 and enlarged text.\n\nProtected neighbors: branding/navigation, prior conversation/tool results, graph facts, provider/model policy, durable state and all external systems. The browser session still resets on reload until a separate persistence contract exists. No graph assertion receipt is invented.\n`); + report.observations.push({name,kind:'labelled-3px-before',selectors}); +} +async function send(text){await page.locator('textarea').fill(text);await page.locator('textarea').press('Enter');} +async function complete(generated,count=1){await page.waitForFunction(({generated,count})=>{const cards=document.querySelectorAll(generated?'.naTool':'.na-tool');return cards.length===4*count&&[...cards].every(e=>e.getAttribute('data-running')!=='true')&&document.body.innerText.includes('Done.');},{generated,count});} +async function throwOnNext(base,generated){await page.evaluate(async({modulePath,key})=>{const module=await import(modulePath);module[key].run=async function*(){yield{content:[{type:'text',text:'PROOF FIXTURE: checking the saved local result.'}]};throw new Error('PROOF FIXTURE: adapter failed before the next result.');};},{modulePath:base+(generated?'/src/nodeagent-chat/nodeAgentLocalAdapter.js':'/src/features/node-agent/runtime/nodeAgentChatAdapter.ts'),key:generated?'nodeAgentLocalAdapter':'nodeAgentChatAdapter'});} +try { + const generatedBase=await server(consumer); let sourceBase;browser=await chromium.launch({headless:true});report.browser=browser.version();report.node=process.version; + for(const width of [320,390,768,1024,1440,1920]){ + const ctx=await context(generatedBase,width);check(await page.locator('[data-nodeagent-chat="empty"]').isVisible(),'generated empty state '+width);await capture('generated-empty-'+width); + await send('PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.');await page.locator('.naTool[data-running="true"]').first().waitFor(); + const running=await capture('generated-running-'+width);check(running.overflow<=1,'generated running reflows '+width);report.observations.push({name:'generated-D3-'+width,hasStop:running.buttons.some(b=>/stop|cancel/i.test(b.label??'')),sendDisabled:running.buttons.find(b=>b.label==='Send')?.disabled}); + // A second immediate Enter cannot add a concurrent model/fixture run. + await page.locator('textarea').press('Enter');await complete(true);check(await page.locator('.naTool').count()===4,'burst Enter retains one four-card run '+width);await capture('generated-populated-'+width); + await page.reload({waitUntil:'domcontentloaded'});await page.locator('textarea').waitFor();check(await page.locator('.naTool').count()===0&&await page.locator('[data-nodeagent-chat="empty"]').isVisible(),'reload resets only browser session '+width);await capture('generated-reloaded-'+width);await ctx.close(); + } + const sustained=await context(generatedBase,390),began=Date.now();for(let i=0;i<8;i++){await send('PROOF FIXTURE repeat '+(i+1)+': inspect the same local adoption evidence.');await complete(true,i+1);check(await page.locator('.naTool').count()===4*(i+1),'sustained accumulated four-card run '+(i+1));}report.sustained={turns:8,toolCards:32,elapsedMs:Date.now()-began};await capture('generated-sustained-390');await sustained.close(); + for(const generated of [true,false])for(const width of [390,1440]){ + if(!generated&&!sourceBase) sourceBase=await server(source); + const base=generated?generatedBase:sourceBase,kind=generated?'generated':'source';const ctx=await context(base,width);await send('PROOF FIXTURE: inspect the current no-key agent handoff.');await page.locator(generated?'.naTool[data-running="true"]':'.na-tool').first().waitFor(); + const selectors=[{selector:generated?'.naComposer':'.na-composer',title:'Run controls'},{selector:generated?'.naMsgAssistant:last-of-type .naBubble':'.na-msg-assistant:last-of-type .na-bubble',title:'Current run response'}]; + await capture(kind+'-D3-running-'+width);await boundary(kind+'-D3-running-'+width,selectors);await complete(generated);await throwOnNext(base,generated);await send('PROOF FIXTURE: reproduce adapter failure while retaining the previous complete turn.');await page.waitForFunction(()=>document.body.innerText.includes('PROOF FIXTURE: checking the saved local result.'));await page.waitForTimeout(300); + const state=await capture(kind+'-D3-error-'+width);report.observations.push({name:kind+'-D3-error-'+width,hasVisibleError:/adapter failed before the next result/.test(state.bodyText),hasRetry:state.buttons.some(b=>/retry|try again/i.test(b.label??'')),retainedToolCards:await page.locator(generated?'.naTool':'.na-tool').count()});await boundary(kind+'-D3-error-'+width,selectors);await ctx.close(); + } + check(report.requests.every(r=>r.method==='GET'),'browser made no writes or provider requests');report.sourceAfter=await sourceHashes();report.consumerAfter=await consumerHashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);assert.deepEqual(report.consumerAfter,report.consumerBefore);check(true,'source and installed generated input bytes unchanged');report.passed=true; +}catch(error){report.error=String(error.stack??error);process.exitCode=1; +}finally{await browser?.close();for(const app of servers)await app.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(evidence,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({evidence,passed:report.passed,checks:report.checks.length,captures:report.captures.length,error:report.error}));} diff --git a/evidence/current-consumer-20260905/operator/browser-before-03-command.json b/evidence/current-consumer-20260905/operator/browser-before-03-command.json new file mode 100644 index 0000000..97667ca --- /dev/null +++ b/evidence/current-consumer-20260905/operator/browser-before-03-command.json @@ -0,0 +1,10 @@ +{ + "command": [ + "node", + "e2e/current-consumer-proof.mjs", + "D:/ProjectRecovery/NodeAgent current consumer 20260905/Generated Chat app", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-03" + ], + "exit": 1, + "seconds": 14.219947814941406 +} diff --git a/evidence/current-consumer-20260905/operator/browser-before-03-command.stderr b/evidence/current-consumer-20260905/operator/browser-before-03-command.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/browser-before-03-command.stdout b/evidence/current-consumer-20260905/operator/browser-before-03-command.stdout new file mode 100644 index 0000000..1343531 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/browser-before-03-command.stdout @@ -0,0 +1 @@ +{"evidence":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\browser-before-03","passed":false,"checks":2,"captures":1,"error":"locator.waitFor: Timeout 12000ms exceeded.\nCall log:\n\u001b[2m - waiting for locator('.naTool[data-running=\"true\"]').first() to be visible\u001b[22m\n\n at D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905\\e2e\\current-consumer-proof.mjs:56:168"} diff --git a/evidence/current-consumer-20260905/operator/browser-before-03-harness.mjs.txt b/evidence/current-consumer-20260905/operator/browser-before-03-harness.mjs.txt new file mode 100644 index 0000000..d2d4c00 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/browser-before-03-harness.mjs.txt @@ -0,0 +1,72 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import { createServer as createPortProbe } from 'node:net'; +import { chromium } from 'playwright'; +import { createServer } from 'vite'; + +// The supplied app must be the retained output of the installed package CLI. +// Source/consumer adapters are changed only in browser memory for a labelled error knockout. +const source = path.resolve(import.meta.dirname, '..'); +const consumer = path.resolve(process.argv[2] ?? ''); +const evidence = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide generated consumer path and NEW evidence directory'); +await mkdir(evidence, { recursive:false }); +const sha = value => createHash('sha256').update(value).digest('hex'); +const tracked = execFileSync('git',['ls-files','-z'],{cwd:source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(Boolean).filter(file=>!path.basename(file).startsWith('.env')); +tracked.push('e2e/current-consumer-proof.mjs'); +const sourceHashes = async () => Object.fromEntries(await Promise.all(tracked.map(async file=>[file,sha(await readFile(path.join(source,file)))]))); +const consumerFiles=['package.json','package-lock.json','index.html','vite.config.mjs','src/main.jsx','src/styles.css','src/nodeagent-chat/NodeAgentChatApp.jsx','src/nodeagent-chat/nodeAgentLocalAdapter.js','src/nodeagent-chat/toolUIs.jsx']; +const consumerHashes = async () => Object.fromEntries(await Promise.all(consumerFiles.map(async file=>[file,sha(await readFile(path.join(consumer,file)))]))); +const report={namedProof:'NODEAGENT-CURRENT-CONSUMER-01',passed:false,startedAt:new Date().toISOString(),sourceBefore:await sourceHashes(),consumerBefore:await consumerHashes(),checks:[],captures:[],observations:[],console:[],requests:[],providerCalls:0,grade:null}; +const check=(value,name)=>{report.checks.push({name,passed:Boolean(value)});assert.ok(value,name);}; +let browser,page;const servers=[]; +async function server(root){ + const probe=createPortProbe(); await new Promise(resolve=>probe.listen(0,'127.0.0.1',resolve)); const port=probe.address().port; await new Promise(resolve=>probe.close(resolve)); + const app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}}); await app.listen(); servers.push(app); + return 'http://127.0.0.1:'+port; +} +async function context(base,width){ + const ctx=await browser.newContext({viewport:{width,height:width<=390?844:960},colorScheme:'light'}); + await ctx.route('**/*',route=>{const request=route.request(),url=new URL(request.url());if(report.requests.length<500)report.requests.push({origin:url.origin,path:url.pathname,method:request.method()});if(url.origin!==base&&!['fonts.googleapis.com','fonts.gstatic.com'].includes(url.hostname))return route.abort();return route.continue();}); + page=await ctx.newPage();page.setDefaultTimeout(12000);page.on('pageerror',error=>report.console.push({type:'pageerror',message:error.message}));page.on('console',message=>{if(message.type()==='error'&&report.console.length<100)report.console.push({type:'console',message:message.text()});});await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor();await page.evaluate(()=>Promise.race([document.fonts.ready,new Promise(resolve=>setTimeout(resolve,3000))]));return ctx; +} +async function capture(name){ + await page.evaluate(()=>new Promise(resolve=>requestAnimationFrame(()=>requestAnimationFrame(resolve)))); + const html=await page.content();const state=await page.evaluate(()=>({url:location.href,viewport:{width:innerWidth,height:innerHeight},focused:document.activeElement?.tagName,overflow:document.documentElement.scrollWidth-innerWidth,buttons:[...document.querySelectorAll('button')].map(e=>({label:e.getAttribute('aria-label')??e.textContent,disabled:e.disabled})),bodyText:document.body.innerText.slice(-6000)})); + await page.screenshot({path:path.join(evidence,name+'.png'),caret:'initial'});check(await page.content()===html,name+' screenshot restores exact DOM');await writeFile(path.join(evidence,name+'.html'),html);await writeFile(path.join(evidence,name+'.json'),JSON.stringify(state,null,2)+'\n');report.captures.push({name,state,pngSha256:sha(await readFile(path.join(evidence,name+'.png')))});return state; +} +async function boundary(name,selectors){ + const html=await page.content(); + await page.evaluate(items=>{for(const [index,item]of items.entries()){const target=document.querySelector(item.selector),b=target.getBoundingClientRect();const box=document.createElement('div');box.dataset.boundaryProof='true';Object.assign(box.style,{position:'fixed',left:b.left+'px',top:b.top+'px',width:b.width+'px',height:b.height+'px',border:'3px solid #d31372',boxSizing:'border-box',zIndex:'2147483646',pointerEvents:'none'});const label=document.createElement('div');label.textContent=`CHANGE ${String.fromCharCode(65+index)} · ${item.title}`;Object.assign(label.style,{position:'absolute',bottom:'100%',left:'0',background:'#971352',color:'white',padding:'3px 6px',font:'bold 12px sans-serif',whiteSpace:'nowrap'});if(b.top<35){label.style.bottom='auto';label.style.top='100%';}box.append(label);document.body.append(box);}},selectors); + await page.screenshot({path:path.join(evidence,name+'-change-boundary.png'),caret:'initial'}); + await page.evaluate(()=>document.querySelectorAll('[data-boundary-proof]').forEach(e=>e.remove()));check(await page.content()===html,name+' boundary restores exact original DOM'); + const viewport=page.viewportSize();await writeFile(path.join(evidence,name+'-change-boundary.md'),`# UI change boundary\n\nRoute: ${page.url()}\nViewport: ${viewport.width}x${viewport.height}\nTheme: light\nSession: anonymous no-key local browser\nTrigger: ${name}\nFixture: explicit local product question; error state uses a labelled in-memory adapter throw, not a provider call.\n\n${selectors.map((item,index)=>`CHANGE ${String.fromCharCode(65+index)} · ${item.title}: ${item.selector}`).join('\n\n')}\n\nCurrent: composer sends work but offers no Stop/Cancel; assistant output has no designed failure/retry surface.\nExpected next slice (requires root review): honest current run status, supported cancellation and explicit retry preserve earlier messages. Cancel must not claim to undo prior computed work or durable writes.\n\nStates: empty remains no-key; loading keeps an inspectable current step and supported Stop; error names failed run and recovery without fake completion; populated keeps four tool results; long text wraps; controls remain usable at320/390/768/1024/1440/1920 and enlarged text.\n\nProtected neighbors: branding/navigation, prior conversation/tool results, graph facts, provider/model policy, durable state and all external systems. The browser session still resets on reload until a separate persistence contract exists. No graph assertion receipt is invented.\n`); + report.observations.push({name,kind:'labelled-3px-before',selectors}); +} +async function send(text){await page.locator('textarea[name="input"]').fill(text);await page.locator('textarea[name="input"]').press('Enter');} +async function complete(generated,count=1){await page.waitForFunction(({generated,count})=>{const cards=document.querySelectorAll(generated?'.naTool':'.na-tool');return cards.length===4*count&&[...cards].every(e=>e.getAttribute('data-running')!=='true')&&document.body.innerText.includes('Done.');},{generated,count});} +async function throwOnNext(base,generated){await page.evaluate(async({modulePath,key})=>{const module=await import(modulePath);module[key].run=async function*(){yield{content:[{type:'text',text:'PROOF FIXTURE: checking the saved local result.'}]};throw new Error('PROOF FIXTURE: adapter failed before the next result.');};},{modulePath:base+(generated?'/src/nodeagent-chat/nodeAgentLocalAdapter.js':'/src/features/node-agent/runtime/nodeAgentChatAdapter.ts'),key:generated?'nodeAgentLocalAdapter':'nodeAgentChatAdapter'});} +try { + const generatedBase=await server(consumer); let sourceBase;browser=await chromium.launch({headless:true});report.browser=browser.version();report.node=process.version; + for(const width of [320,390,768,1024,1440,1920]){ + const ctx=await context(generatedBase,width);check(await page.locator('[data-nodeagent-chat="empty"]').isVisible(),'generated empty state '+width);await capture('generated-empty-'+width); + await send('PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.');await page.locator('.naTool[data-running="true"]').first().waitFor(); + const running=await capture('generated-running-'+width);check(running.overflow<=1,'generated running reflows '+width);report.observations.push({name:'generated-D3-'+width,hasStop:running.buttons.some(b=>/stop|cancel/i.test(b.label??'')),sendDisabled:running.buttons.find(b=>b.label==='Send')?.disabled}); + // A second immediate Enter cannot add a concurrent model/fixture run. + await page.locator('textarea[name="input"]').press('Enter');await complete(true);check(await page.locator('.naTool').count()===4,'burst Enter retains one four-card run '+width);await capture('generated-populated-'+width); + await page.reload({waitUntil:'domcontentloaded'});await page.locator('textarea[name="input"]').waitFor();check(await page.locator('.naTool').count()===0&&await page.locator('[data-nodeagent-chat="empty"]').isVisible(),'reload resets only browser session '+width);await capture('generated-reloaded-'+width);await ctx.close(); + } + const sustained=await context(generatedBase,390),began=Date.now();for(let i=0;i<8;i++){await send('PROOF FIXTURE repeat '+(i+1)+': inspect the same local adoption evidence.');await complete(true,i+1);check(await page.locator('.naTool').count()===4*(i+1),'sustained accumulated four-card run '+(i+1));}report.sustained={turns:8,toolCards:32,elapsedMs:Date.now()-began};await capture('generated-sustained-390');await sustained.close(); + for(const generated of [true,false])for(const width of [390,1440]){ + if(!generated&&!sourceBase) sourceBase=await server(source); + const base=generated?generatedBase:sourceBase,kind=generated?'generated':'source';const ctx=await context(base,width);await send('PROOF FIXTURE: inspect the current no-key agent handoff.');await page.locator(generated?'.naTool[data-running="true"]':'.na-tool').first().waitFor(); + const selectors=[{selector:generated?'.naComposer':'.na-composer',title:'Run controls'},{selector:generated?'.naMsgAssistant:last-of-type .naBubble':'.na-msg-assistant:last-of-type .na-bubble',title:'Current run response'}]; + await capture(kind+'-D3-running-'+width);await boundary(kind+'-D3-running-'+width,selectors);await complete(generated);await throwOnNext(base,generated);await send('PROOF FIXTURE: reproduce adapter failure while retaining the previous complete turn.');await page.waitForFunction(()=>document.body.innerText.includes('PROOF FIXTURE: checking the saved local result.'));await page.waitForTimeout(300); + const state=await capture(kind+'-D3-error-'+width);report.observations.push({name:kind+'-D3-error-'+width,hasVisibleError:/adapter failed before the next result/.test(state.bodyText),hasRetry:state.buttons.some(b=>/retry|try again/i.test(b.label??'')),retainedToolCards:await page.locator(generated?'.naTool':'.na-tool').count()});await boundary(kind+'-D3-error-'+width,selectors);await ctx.close(); + } + check(report.requests.every(r=>r.method==='GET'),'browser made no writes or provider requests');report.sourceAfter=await sourceHashes();report.consumerAfter=await consumerHashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);assert.deepEqual(report.consumerAfter,report.consumerBefore);check(true,'source and installed generated input bytes unchanged');report.passed=true; +}catch(error){report.error=String(error.stack??error);process.exitCode=1; +}finally{await browser?.close();for(const app of servers)await app.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(evidence,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({evidence,passed:report.passed,checks:report.checks.length,captures:report.captures.length,error:report.error}));} diff --git a/evidence/current-consumer-20260905/operator/canonical-audit-production.stderr b/evidence/current-consumer-20260905/operator/canonical-audit-production.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/canonical-audit-production.stdout b/evidence/current-consumer-20260905/operator/canonical-audit-production.stdout new file mode 100644 index 0000000..59feacf --- /dev/null +++ b/evidence/current-consumer-20260905/operator/canonical-audit-production.stdout @@ -0,0 +1,22 @@ +{ + "auditReportVersion": 2, + "vulnerabilities": {}, + "metadata": { + "vulnerabilities": { + "info": 0, + "low": 0, + "moderate": 0, + "high": 0, + "critical": 0, + "total": 0 + }, + "dependencies": { + "prod": 268, + "dev": 250, + "optional": 151, + "peer": 1, + "peerOptional": 0, + "total": 544 + } + } +} diff --git a/evidence/current-consumer-20260905/operator/canonical-build.stderr b/evidence/current-consumer-20260905/operator/canonical-build.stderr new file mode 100644 index 0000000..7381710 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/canonical-build.stderr @@ -0,0 +1,5 @@ + +(!) Some chunks are larger than 500 kB after minification. Consider: +- Using dynamic import() to code-split the application +- Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/configuration-options/#output-manualchunks +- Adjust chunk size limit for this warning via build.chunkSizeWarningLimit. diff --git a/evidence/current-consumer-20260905/operator/canonical-build.stdout b/evidence/current-consumer-20260905/operator/canonical-build.stdout new file mode 100644 index 0000000..0d7415d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/canonical-build.stdout @@ -0,0 +1,13 @@ + +> nodeagent@0.1.0 build +> tsc --noEmit && vite build + +vite v6.4.3 building for production... +transforming... +✓ 777 modules transformed. +rendering chunks... +computing gzip size... +dist/index.html  1.37 kB │ gzip: 0.75 kB +dist/assets/index-Ctp5xwBP.css  8.28 kB │ gzip: 2.49 kB +dist/assets/index-CJPkhj2s.js 655.20 kB │ gzip: 186.73 kB │ map: 2,757.54 kB +✓ built in 8.95s diff --git a/evidence/current-consumer-20260905/operator/canonical-checks.json b/evidence/current-consumer-20260905/operator/canonical-checks.json new file mode 100644 index 0000000..b9f670d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/canonical-checks.json @@ -0,0 +1,83 @@ +[ + { + "name": "canonical-tests", + "argv": [ + "npm.cmd", + "test" + ], + "exitCode": 0, + "seconds": 6.34, + "stdoutSha256": "b939a31d2f0eb38e23b00706c1d8216c85d1571302137207f611de7b98072cf7", + "stderrSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "name": "canonical-build", + "argv": [ + "npm.cmd", + "run", + "build" + ], + "exitCode": 0, + "seconds": 33.52, + "stdoutSha256": "dcfd2e31e77842b1f9278c39d812c5433a5f87b4090579b40019e649e8052722", + "stderrSha256": "aa9b7207d2d2d42fbf4e013331ee76fc39b9b042505b38551893c1f60f35b63a" + }, + { + "name": "frame", + "argv": [ + "node", + "node_modules/tsx/dist/cli.mjs", + "scripts/nodeagent-frame-smoke.ts", + "--json-out", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\frame.json" + ], + "exitCode": 0, + "seconds": 1.09, + "stdoutSha256": "3930a6e7a06514d750370d57d4c847d207e7e65ad7cb37ec7e6a427a57102137", + "stderrSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "name": "durable", + "argv": [ + "node", + "node_modules/tsx/dist/cli.mjs", + "scripts/nodeagent-durable-smoke.ts", + "--json-out", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\durable.json" + ], + "exitCode": 0, + "seconds": 0.36, + "stdoutSha256": "63c4aa3726029258df491bb45b000952202358eb18952fb55badccdfd25174ff", + "stderrSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "name": "sqlite-reopen", + "argv": [ + "node", + "node_modules/tsx/dist/cli.mjs", + "scripts/nodeagent-sqlite-smoke.ts", + "--db", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\durable-proof.sqlite", + "--keep-db", + "--json-out", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\sqlite-reopen.json" + ], + "exitCode": 0, + "seconds": 0.33, + "stdoutSha256": "a6c95f2898e8b8f6d9aef94111b98fbe47a16d152b03a83d6b8dca54c0915a24", + "stderrSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "name": "canonical-audit-production", + "argv": [ + "npm.cmd", + "audit", + "--omit=dev", + "--json" + ], + "exitCode": 0, + "seconds": 1.14, + "stdoutSha256": "63c0065f6900d02e8b63ffecedfe68547d17db39d991d7f67869cbf3abce2e49", + "stderrSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } +] diff --git a/evidence/current-consumer-20260905/operator/canonical-tests.stderr b/evidence/current-consumer-20260905/operator/canonical-tests.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/canonical-tests.stdout b/evidence/current-consumer-20260905/operator/canonical-tests.stdout new file mode 100644 index 0000000..7c07c22 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/canonical-tests.stdout @@ -0,0 +1,20 @@ + +> nodeagent@0.1.0 test +> vitest run + + + RUN  v2.1.9 D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905 + + ✓ tests/omnigentAdapter.test.ts (2 tests) 5ms + ✓ tests/searchSynthesize.test.ts (10 tests) 6ms + ✓ tests/spreadsheetDelta.test.ts (13 tests) 10ms + ✓ tests/reasoningFrameRunner.test.ts (2 tests) 5ms + ✓ tests/nodeAgentRuntime.test.ts (8 tests) 6ms + ✓ tests/durableRuntime.test.ts (4 tests) 7ms + ✓ tests/sqliteDurableRuntime.test.ts (2 tests) 128ms + + Test Files  7 passed (7) + Tests  41 passed (41) + Start at  00:15:19 + Duration  1.98s (transform 528ms, setup 0ms, collect 1.38s, tests 167ms, environment 1ms, prepare 6.32s) + diff --git a/evidence/current-consumer-20260905/operator/capture-generated-d3-before-01.mjs.txt b/evidence/current-consumer-20260905/operator/capture-generated-d3-before-01.mjs.txt new file mode 100644 index 0000000..2bbfc97 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/capture-generated-d3-before-01.mjs.txt @@ -0,0 +1,32 @@ +import { createServer } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/node/index.js'; +import { chromium } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/playwright/index.mjs'; +import { createServer as portServer } from 'node:net'; +import { mkdir,readFile,writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import assert from 'node:assert/strict'; +const out=path.join(import.meta.dirname,'d3-generated-boundary-01'); await mkdir(out); const sha=b=>createHash('sha256').update(b).digest('hex'); +const roots={generated:'D:/ProjectRecovery/NodeAgent current consumer 20260905/Generated Chat app',source:'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'}; +const files=execFileSync('git',['ls-files','-z'],{cwd:roots.source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(p=>p&&!path.basename(p).startsWith('.env')); +files.push('examples/apps/chat-ui/template/package-lock.json'); +const hashes=async()=>Object.fromEntries(await Promise.all(files.map(async p=>[p,sha(await readFile(path.join(roots.source,p)))]))); +const report={startedAt:new Date().toISOString(),sourceBefore:await hashes(),cells:[],requests:[],grade:null};let browser,app; +async function shot(page,name){await page.evaluate(()=>new Promise(r=>requestAnimationFrame(()=>requestAnimationFrame(r))));let prior=await page.content();for(let i=0;i<8;i++){await page.waitForTimeout(250);const current=await page.content();if(current===prior)break;prior=current;}const html=await page.content();await writeFile(path.join(out,name+'.before.html'),html);await page.screenshot({path:path.join(out,name+'.png'),caret:'initial'});await writeFile(path.join(out,name+'.after.html'),await page.content());assert.equal(await page.content(),html);await writeFile(path.join(out,name+'.html'),html);return {name,pngSha256:sha(await readFile(path.join(out,name+'.png'))),state:await page.evaluate(()=>({text:document.body.innerText,scrollWidth:document.documentElement.scrollWidth,width:innerWidth,buttons:[...document.querySelectorAll('button')].map(b=>({label:b.getAttribute('aria-label')||b.textContent,disabled:b.disabled}))}))};} +async function boundary(page,name,selectors){const html=await page.content();const boxes=await page.evaluate(selectors=>selectors.map((s,i)=>{const el=[...document.querySelectorAll(s.selector)].at(-1); if(!el)throw new Error('Missing '+s.selector);const b=el.getBoundingClientRect();const box=document.createElement('div');box.dataset.boundaryProof='true';Object.assign(box.style,{position:'fixed',left:b.left+'px',top:b.top+'px',width:b.width+'px',height:b.height+'px',boxSizing:'border-box',border:'3px solid #d31372',zIndex:2147483646,pointerEvents:'none'});const label=document.createElement('span');label.textContent='CHANGE '+String.fromCharCode(65+i)+' / '+s.title;Object.assign(label.style,{position:'absolute',left:'0',bottom:'100%',font:'bold 12px sans-serif',padding:'4px',background:'#971352',color:'white',whiteSpace:'nowrap'});if(b.top<32){label.style.bottom='auto';label.style.top='0';}box.append(label);document.body.append(box);return {selector:s.selector,x:b.x,y:b.y,width:b.width,height:b.height};}),selectors);await page.screenshot({path:path.join(out,name+'-change-boundary.png'),caret:'initial'});await page.evaluate(()=>document.querySelectorAll('[data-boundary-proof]').forEach(x=>x.remove()));assert.equal(await page.content(),html);await writeFile(path.join(out,name+'-change-boundary.md'),`# Actual before boundary\n\nRoute: ${page.url()}\nViewport: ${JSON.stringify(page.viewportSize())}\nTheme: light; anonymous local generated/current source.\nTrigger: ${name}\n\n${JSON.stringify(boxes,null,2)}\n\nFirst submission must preserve the shell, show inspectable progress and yield four scripted tool cards. Current dependency-selected generated app throws before its first tool card. Subsequent D3 Stop/error/retry inspection is blocked on that app. The current source comparison uses the actual locked source without modification. Protected neighbors: branding, no-key disclosure, tool facts, graph ownership, prior messages and separate SQLite durable proof. No provider request or credential is used.\n`);return {name,boxes,pngSha256:sha(await readFile(path.join(out,name+'-change-boundary.png')))};} +try { + browser=await chromium.launch({headless:true}); + const root='D:/ProjectRecovery/NodeAgent current consumer 20260905/Locked Chat app',probe=portServer();await new Promise(r=>probe.listen(0,'127.0.0.1',r));const port=probe.address().port;await new Promise(r=>probe.close(r));app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}});await app.listen();const base='http://127.0.0.1:'+port; + for(const width of [390,1440]) { + const ctx=await browser.newContext({viewport:{width,height:960}});await ctx.route('**/*',route=>{const r=route.request();report.requests.push({url:r.url().split('?')[0],method:r.method()});return new URL(r.url()).origin===base?route.continue():route.abort();}); + const page=await ctx.newPage();page.setDefaultTimeout(15000);const cell={kind:'generated',width,errors:[],captures:[],fixture:'Actual installed generated no-key adapter, with iterator paused after its actual first running tool frame solely to settle screenshots; then explicit in-memory one-run adapter throw.'};report.cells.push(cell);page.on('pageerror',e=>cell.errors.push({message:e.message,stack:e.stack}));await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor(); + const question=await page.evaluate(async()=>{const m=await import('/src/nodeagent-chat/nodeAgentLocalAdapter.js');const original=m.nodeAgentLocalAdapter.run;window.proofOriginalRun=original;m.nodeAgentLocalAdapter.run=async function*(args){let held=false;for await(const frame of original(args)){yield frame;if(!held&&frame.content.some(p=>p.type==='tool-call'&&!p.result)){held=true;window.proofHeldText=frame.content.find(p=>p.type==='text').text;await new Promise(resolve=>window.proofRelease=resolve);}}};return m.SUGGESTED_PROMPT;}); + cell.question=question;await page.locator('textarea[name="input"]').fill(question);await page.locator('textarea[name="input"]').press('Enter');await page.locator('.naTool[data-running="true"]').waitFor();await page.waitForFunction(()=>typeof window.proofRelease==='function'&&document.body.innerText.includes(window.proofHeldText)); + const selectors=[{selector:'.naComposer',title:'Run controls'},{selector:'.naMsgAssistant .naBubble',title:'Current run response'}]; + const running=await shot(page,'generated-running-'+width);cell.captures.push(running);cell.hasStop=running.state.buttons.some(b=>/stop|cancel/i.test(b.label));cell.captures.push(await boundary(page,'generated-running-'+width,selectors));await page.evaluate(()=>window.proofRelease());await page.waitForFunction(()=>document.querySelectorAll('.naTool').length===4&&[...document.querySelectorAll('.naTool')].every(e=>e.dataset.running==='false'));await page.waitForTimeout(350); + await page.evaluate(async()=>{const m=await import('/src/nodeagent-chat/nodeAgentLocalAdapter.js');m.nodeAgentLocalAdapter.run=async function*(){yield {content:[{type:'text',text:'PROOF FIXTURE: checking the previous local result.'}]};throw new Error('PROOF FIXTURE: the current adapter failed before its next result.');};}); + await page.locator('textarea[name="input"]').fill('PROOF FIXTURE: inspect failure recovery without losing the earlier four results.');await page.locator('textarea[name="input"]').press('Enter');await page.waitForFunction(()=>document.body.innerText.includes('PROOF FIXTURE: checking the previous local result.'));await page.waitForTimeout(350); + const failed=await shot(page,'generated-error-'+width);cell.captures.push(failed);cell.hasErrorNotice=failed.state.text.includes('current adapter failed');cell.hasRetry=failed.state.buttons.some(b=>/retry|try again/i.test(b.label));cell.retainedCards=await page.locator('.naTool').count();cell.captures.push(await boundary(page,'generated-error-'+width,selectors));await ctx.close(); + } + report.sourceAfter=await hashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);report.completed=true; +}catch(error){report.error=error.stack;process.exitCode=1;}finally{await app?.close();await browser?.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(out,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({completed:report.completed,error:report.error,cells:report.cells.map(({width,hasStop,hasErrorNotice,hasRetry,retainedCards})=>({width,hasStop,hasErrorNotice,hasRetry,retainedCards}))}));} diff --git a/evidence/current-consumer-20260905/operator/capture-generated-d3-before.mjs.txt b/evidence/current-consumer-20260905/operator/capture-generated-d3-before.mjs.txt new file mode 100644 index 0000000..938b576 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/capture-generated-d3-before.mjs.txt @@ -0,0 +1,32 @@ +import { createServer } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/node/index.js'; +import { chromium } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/playwright/index.mjs'; +import { createServer as portServer } from 'node:net'; +import { mkdir,readFile,writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import assert from 'node:assert/strict'; +const out=path.join(import.meta.dirname,'d3-generated-boundary-02'); await mkdir(out); const sha=b=>createHash('sha256').update(b).digest('hex'); +const roots={generated:'D:/ProjectRecovery/NodeAgent current consumer 20260905/Generated Chat app',source:'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'}; +const files=execFileSync('git',['ls-files','-z'],{cwd:roots.source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(p=>p&&!path.basename(p).startsWith('.env')); +files.push('examples/apps/chat-ui/template/package-lock.json'); +const hashes=async()=>Object.fromEntries(await Promise.all(files.map(async p=>[p,sha(await readFile(path.join(roots.source,p)))]))); +const report={startedAt:new Date().toISOString(),sourceBefore:await hashes(),cells:[],requests:[],grade:null};let browser,app; +async function shot(page,name){await page.locator('.naComposer').scrollIntoViewIfNeeded();await page.evaluate(()=>new Promise(r=>requestAnimationFrame(()=>requestAnimationFrame(r))));let prior=await page.content();for(let i=0;i<8;i++){await page.waitForTimeout(250);const current=await page.content();if(current===prior)break;prior=current;}const html=await page.content();await writeFile(path.join(out,name+'.before.html'),html);await page.screenshot({path:path.join(out,name+'.png'),caret:'initial'});await writeFile(path.join(out,name+'.after.html'),await page.content());assert.equal(await page.content(),html);await writeFile(path.join(out,name+'.html'),html);return {name,pngSha256:sha(await readFile(path.join(out,name+'.png'))),state:await page.evaluate(()=>({text:document.body.innerText,scrollWidth:document.documentElement.scrollWidth,width:innerWidth,buttons:[...document.querySelectorAll('button')].map(b=>({label:b.getAttribute('aria-label')||b.textContent,disabled:b.disabled}))}))};} +async function boundary(page,name,selectors){const html=await page.content();const boxes=await page.evaluate(selectors=>selectors.map((s,i)=>{const el=[...document.querySelectorAll(s.selector)].at(-1); if(!el)throw new Error('Missing '+s.selector);const b=el.getBoundingClientRect();const box=document.createElement('div');box.dataset.boundaryProof='true';Object.assign(box.style,{position:'fixed',left:b.left+'px',top:b.top+'px',width:b.width+'px',height:b.height+'px',boxSizing:'border-box',border:'3px solid #d31372',zIndex:2147483646,pointerEvents:'none'});const label=document.createElement('span');label.textContent='CHANGE '+String.fromCharCode(65+i)+' / '+s.title;Object.assign(label.style,{position:'absolute',left:'0',bottom:'100%',font:'bold 12px sans-serif',padding:'4px',background:'#971352',color:'white',whiteSpace:'nowrap'});if(b.top<32){label.style.bottom='auto';label.style.top='0';}box.append(label);document.body.append(box);return {selector:s.selector,x:b.x,y:b.y,width:b.width,height:b.height};}),selectors);await page.screenshot({path:path.join(out,name+'-change-boundary.png'),caret:'initial'});await page.evaluate(()=>document.querySelectorAll('[data-boundary-proof]').forEach(x=>x.remove()));assert.equal(await page.content(),html);await writeFile(path.join(out,name+'-change-boundary.md'),`# Actual before boundary\n\nRoute: ${page.url()}\nViewport: ${JSON.stringify(page.viewportSize())}\nTheme: light; anonymous local generated/current source.\nTrigger: ${name}\n\n${JSON.stringify(boxes,null,2)}\n\nFirst submission must preserve the shell, show inspectable progress and yield four scripted tool cards. Current dependency-selected generated app throws before its first tool card. Subsequent D3 Stop/error/retry inspection is blocked on that app. The current source comparison uses the actual locked source without modification. Protected neighbors: branding, no-key disclosure, tool facts, graph ownership, prior messages and separate SQLite durable proof. No provider request or credential is used.\n`);return {name,boxes,pngSha256:sha(await readFile(path.join(out,name+'-change-boundary.png')))};} +try { + browser=await chromium.launch({headless:true}); + const root='D:/ProjectRecovery/NodeAgent current consumer 20260905/Locked Chat app',probe=portServer();await new Promise(r=>probe.listen(0,'127.0.0.1',r));const port=probe.address().port;await new Promise(r=>probe.close(r));app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}});await app.listen();const base='http://127.0.0.1:'+port; + for(const width of [390,1440]) { + const ctx=await browser.newContext({viewport:{width,height:960}});await ctx.route('**/*',route=>{const r=route.request();report.requests.push({url:r.url().split('?')[0],method:r.method()});return new URL(r.url()).origin===base?route.continue():route.abort();}); + const page=await ctx.newPage();page.setDefaultTimeout(15000);const cell={kind:'generated',width,errors:[],captures:[],fixture:'Actual installed generated no-key adapter, with iterator paused after its actual first running tool frame solely to settle screenshots; then explicit in-memory one-run adapter throw.'};report.cells.push(cell);page.on('pageerror',e=>cell.errors.push({message:e.message,stack:e.stack}));await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor(); + const question=await page.evaluate(async()=>{const m=await import('/src/nodeagent-chat/nodeAgentLocalAdapter.js');const original=m.nodeAgentLocalAdapter.run;window.proofOriginalRun=original;m.nodeAgentLocalAdapter.run=async function*(args){let held=false;for await(const frame of original(args)){yield frame;if(!held&&frame.content.some(p=>p.type==='tool-call'&&!p.result)){held=true;window.proofHeldText=frame.content.find(p=>p.type==='text').text;await new Promise(resolve=>window.proofRelease=resolve);}}};return m.SUGGESTED_PROMPT;}); + cell.question=question;await page.locator('textarea[name="input"]').fill(question);await page.locator('textarea[name="input"]').press('Enter');await page.locator('.naTool[data-running="true"]').waitFor();await page.waitForFunction(()=>typeof window.proofRelease==='function'&&document.body.innerText.includes(window.proofHeldText)); + const selectors=[{selector:'.naComposer',title:'Run controls'},{selector:'.naMsgAssistant .naBubble',title:'Current run response'}]; + const running=await shot(page,'generated-running-'+width);cell.captures.push(running);cell.hasStop=running.state.buttons.some(b=>/stop|cancel/i.test(b.label));cell.captures.push(await boundary(page,'generated-running-'+width,selectors));await page.evaluate(()=>window.proofRelease());await page.waitForFunction(()=>document.querySelectorAll('.naTool').length===4&&[...document.querySelectorAll('.naTool')].every(e=>e.dataset.running==='false'));await page.waitForTimeout(350); + await page.evaluate(async()=>{const m=await import('/src/nodeagent-chat/nodeAgentLocalAdapter.js');m.nodeAgentLocalAdapter.run=async function*(){yield {content:[{type:'text',text:'PROOF FIXTURE: checking the previous local result.'}]};throw new Error('PROOF FIXTURE: the current adapter failed before its next result.');};}); + await page.locator('textarea[name="input"]').fill('PROOF FIXTURE: inspect failure recovery without losing the earlier four results.');await page.locator('textarea[name="input"]').press('Enter');await page.waitForFunction(()=>document.body.innerText.includes('PROOF FIXTURE: checking the previous local result.'));await page.waitForTimeout(350); + const failed=await shot(page,'generated-error-'+width);cell.captures.push(failed);cell.hasErrorNotice=failed.state.text.includes('current adapter failed');cell.hasRetry=failed.state.buttons.some(b=>/retry|try again/i.test(b.label));cell.retainedCards=await page.locator('.naTool').count();cell.captures.push(await boundary(page,'generated-error-'+width,selectors));await ctx.close(); + } + report.sourceAfter=await hashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);report.completed=true; +}catch(error){report.error=error.stack;process.exitCode=1;}finally{await app?.close();await browser?.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(out,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({completed:report.completed,error:report.error,cells:report.cells.map(({width,hasStop,hasErrorNotice,hasRetry,retainedCards})=>({width,hasStop,hasErrorNotice,hasRetry,retainedCards}))}));} diff --git a/evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after-syntax-failure.mjs.txt b/evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after-syntax-failure.mjs.txt new file mode 100644 index 0000000..3193aa7 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after-syntax-failure.mjs.txt @@ -0,0 +1,32 @@ +import { createServer } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/node/index.js'; +import { chromium } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/playwright/index.mjs'; +import { createServer as portServer } from 'node:net'; +import { mkdir,readFile,writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import assert from 'node:assert/strict'; +const out=path.join(import.meta.dirname,'d3-generated-matched-after'); await mkdir(out); const sha=b=>createHash('sha256').update(b).digest('hex'); +const roots={generated:'D:/ProjectRecovery/NodeAgent current consumer 20260905/Response recovery Chat app 03',source:'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'}; +const files=execFileSync('git',['ls-files','-z'],{cwd:roots.source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(p=>p&&!path.basename(p).startsWith('.env')); +files.push('examples/apps/chat-ui/template/package-lock.json'); +const hashes=async()=>Object.fromEntries(await Promise.all(files.map(async p=>[p,sha(await readFile(path.join(roots.source,p)))]))); +const consumerHashes=async()=>Object.fromEntries(await Promise.all(['package.json','package-lock.json','index.html','vite.config.mjs','src/main.jsx','src/styles.css','src/nodeagent-chat/NodeAgentChatApp.jsx','src/nodeagent-chat/nodeAgentLocalAdapter.js','src/nodeagent-chat/toolUIs.jsx'].map(async f=>[f,sha(await readFile(path.join(roots.generated,f)))])))); +const report={consumerBefore:await consumerHashes(),purpose:'Exact original generated before fixtures at390/1440x960 against final installed consumer. Screenshot-only iterator hold; ordinary unheld Stop is proven separately.',scriptSha256:sha(await readFile(new URL(import.meta.url))),startedAt:new Date().toISOString(),sourceBefore:await hashes(),cells:[],requests:[],grade:null};let browser,app; +async function shot(page,name){await page.locator('.naComposer').scrollIntoViewIfNeeded();await page.evaluate(()=>new Promise(r=>requestAnimationFrame(()=>requestAnimationFrame(r))));let prior=await page.content();for(let i=0;i<8;i++){await page.waitForTimeout(250);const current=await page.content();if(current===prior)break;prior=current;}const html=await page.content();await writeFile(path.join(out,name+'.before.html'),html);await page.screenshot({path:path.join(out,name+'.png'),caret:'initial'});await writeFile(path.join(out,name+'.after.html'),await page.content());assert.equal(await page.content(),html);await writeFile(path.join(out,name+'.html'),html);return {name,pngSha256:sha(await readFile(path.join(out,name+'.png'))),state:await page.evaluate(()=>({text:document.body.innerText,scrollWidth:document.documentElement.scrollWidth,width:innerWidth,buttons:[...document.querySelectorAll('button')].map(b=>({label:b.getAttribute('aria-label')||b.textContent,disabled:b.disabled}))}))};} +try { + browser=await chromium.launch({headless:true}); + const root='D:/ProjectRecovery/NodeAgent current consumer 20260905/Response recovery Chat app 03',probe=portServer();await new Promise(r=>probe.listen(0,'127.0.0.1',r));const port=probe.address().port;await new Promise(r=>probe.close(r));app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}});await app.listen();const base='http://127.0.0.1:'+port; + for(const width of [390,1440]) { + const ctx=await browser.newContext({viewport:{width,height:960}});await ctx.route('**/*',route=>{const r=route.request();report.requests.push({url:r.url().split('?')[0],method:r.method()});return new URL(r.url()).origin===base?route.continue():route.abort();}); + const page=await ctx.newPage();page.setDefaultTimeout(15000);const cell={kind:'generated',width,errors:[],captures:[],fixture:'Actual installed generated no-key adapter, with iterator paused after its actual first running tool frame solely to settle screenshots; then explicit in-memory one-run adapter throw.'};report.cells.push(cell);page.on('pageerror',e=>cell.errors.push({message:e.message,stack:e.stack}));await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor(); + const question=await page.evaluate(async()=>{const m=await import('/src/nodeagent-chat/nodeAgentLocalAdapter.js');const original=m.nodeAgentLocalAdapter.run;window.proofOriginalRun=original;m.nodeAgentLocalAdapter.run=async function*(args){let held=false;for await(const frame of original(args)){yield frame;if(!held&&frame.content.some(p=>p.type==='tool-call'&&!p.result)){held=true;window.proofHeldText=frame.content.find(p=>p.type==='text').text;await new Promise(resolve=>window.proofRelease=resolve);}}};return m.SUGGESTED_PROMPT;}); + cell.question=question;await page.locator('textarea[name="input"]').fill(question);await page.locator('textarea[name="input"]').press('Enter');await page.locator('.naTool[data-running="true"]').waitFor();await page.waitForFunction(()=>typeof window.proofRelease==='function'&&document.body.innerText.includes(window.proofHeldText)); + + const running=await shot(page,'generated-running-'+width);cell.captures.push(running);cell.hasStop=running.state.buttons.some(b=>/stop|cancel/i.test(b.label));await page.evaluate(()=>window.proofRelease());await page.waitForFunction(()=>document.querySelectorAll('.naTool').length===4&&[...document.querySelectorAll('.naTool')].every(e=>e.dataset.running==='false'));await page.waitForTimeout(350); + await page.evaluate(async()=>{const m=await import('/src/nodeagent-chat/nodeAgentLocalAdapter.js');m.nodeAgentLocalAdapter.run=async function*(){yield {content:[{type:'text',text:'PROOF FIXTURE: checking the previous local result.'}]};throw new Error('PROOF FIXTURE: the current adapter failed before its next result.');};}); + await page.locator('textarea[name="input"]').fill('PROOF FIXTURE: inspect failure recovery without losing the earlier four results.');await page.locator('textarea[name="input"]').press('Enter');await page.waitForFunction(()=>document.body.innerText.includes('PROOF FIXTURE: checking the previous local result.'));await page.waitForTimeout(350); + const failed=await shot(page,'generated-error-'+width);cell.captures.push(failed);cell.hasErrorNotice=failed.state.text.includes('This response failed.');cell.hasRetry=failed.state.buttons.some(b=>/retry|try again/i.test(b.label));cell.retainedCards=await page.locator('.naTool').count();assert.ok(cell.hasStop && cell.hasErrorNotice && cell.hasRetry && cell.retainedCards===4);assert.ok(cell.errors.every(e=>e.message.includes('PROOF FIXTURE: the current adapter failed')));await ctx.close(); + } + report.sourceAfter=await hashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);report.consumerAfter=await consumerHashes();assert.deepEqual(report.consumerAfter,report.consumerBefore);report.completed=true; +}catch(error){report.error=error.stack;process.exitCode=1;}finally{await app?.close();await browser?.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(out,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({completed:report.completed,error:report.error,cells:report.cells.map(({width,hasStop,hasErrorNotice,hasRetry,retainedCards})=>({width,hasStop,hasErrorNotice,hasRetry,retainedCards}))}));} diff --git a/evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after.mjs.txt b/evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after.mjs.txt new file mode 100644 index 0000000..4556573 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/capture-generated-d3-matched-after.mjs.txt @@ -0,0 +1,32 @@ +import { createServer } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/node/index.js'; +import { chromium } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/playwright/index.mjs'; +import { createServer as portServer } from 'node:net'; +import { mkdir,readFile,writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import assert from 'node:assert/strict'; +const out=path.join(import.meta.dirname,'d3-generated-matched-after'); await mkdir(out); const sha=b=>createHash('sha256').update(b).digest('hex'); +const roots={generated:'D:/ProjectRecovery/NodeAgent current consumer 20260905/Response recovery Chat app 03',source:'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'}; +const files=execFileSync('git',['ls-files','-z'],{cwd:roots.source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(p=>p&&!path.basename(p).startsWith('.env')); +files.push('examples/apps/chat-ui/template/package-lock.json'); +const hashes=async()=>Object.fromEntries(await Promise.all(files.map(async p=>[p,sha(await readFile(path.join(roots.source,p)))]))); +const consumerHashes=async()=>Object.fromEntries(await Promise.all(['package.json','package-lock.json','index.html','vite.config.mjs','src/main.jsx','src/styles.css','src/nodeagent-chat/NodeAgentChatApp.jsx','src/nodeagent-chat/nodeAgentLocalAdapter.js','src/nodeagent-chat/toolUIs.jsx'].map(async f=>[f,sha(await readFile(path.join(roots.generated,f)))]))); +const report={consumerBefore:await consumerHashes(),purpose:'Exact original generated before fixtures at390/1440x960 against final installed consumer. Screenshot-only iterator hold; ordinary unheld Stop is proven separately.',scriptSha256:sha(await readFile(new URL(import.meta.url))),startedAt:new Date().toISOString(),sourceBefore:await hashes(),cells:[],requests:[],grade:null};let browser,app; +async function shot(page,name){await page.locator('.naComposer').scrollIntoViewIfNeeded();await page.evaluate(()=>new Promise(r=>requestAnimationFrame(()=>requestAnimationFrame(r))));let prior=await page.content();for(let i=0;i<8;i++){await page.waitForTimeout(250);const current=await page.content();if(current===prior)break;prior=current;}const html=await page.content();await writeFile(path.join(out,name+'.before.html'),html);await page.screenshot({path:path.join(out,name+'.png'),caret:'initial'});await writeFile(path.join(out,name+'.after.html'),await page.content());assert.equal(await page.content(),html);await writeFile(path.join(out,name+'.html'),html);return {name,pngSha256:sha(await readFile(path.join(out,name+'.png'))),state:await page.evaluate(()=>({text:document.body.innerText,scrollWidth:document.documentElement.scrollWidth,width:innerWidth,buttons:[...document.querySelectorAll('button')].map(b=>({label:b.getAttribute('aria-label')||b.textContent,disabled:b.disabled}))}))};} +try { + browser=await chromium.launch({headless:true}); + const root='D:/ProjectRecovery/NodeAgent current consumer 20260905/Response recovery Chat app 03',probe=portServer();await new Promise(r=>probe.listen(0,'127.0.0.1',r));const port=probe.address().port;await new Promise(r=>probe.close(r));app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}});await app.listen();const base='http://127.0.0.1:'+port; + for(const width of [390,1440]) { + const ctx=await browser.newContext({viewport:{width,height:960}});await ctx.route('**/*',route=>{const r=route.request();report.requests.push({url:r.url().split('?')[0],method:r.method()});return new URL(r.url()).origin===base?route.continue():route.abort();}); + const page=await ctx.newPage();page.setDefaultTimeout(15000);const cell={kind:'generated',width,errors:[],captures:[],fixture:'Actual installed generated no-key adapter, with iterator paused after its actual first running tool frame solely to settle screenshots; then explicit in-memory one-run adapter throw.'};report.cells.push(cell);page.on('pageerror',e=>cell.errors.push({message:e.message,stack:e.stack}));await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor(); + const question=await page.evaluate(async()=>{const m=await import('/src/nodeagent-chat/nodeAgentLocalAdapter.js');const original=m.nodeAgentLocalAdapter.run;window.proofOriginalRun=original;m.nodeAgentLocalAdapter.run=async function*(args){let held=false;for await(const frame of original(args)){yield frame;if(!held&&frame.content.some(p=>p.type==='tool-call'&&!p.result)){held=true;window.proofHeldText=frame.content.find(p=>p.type==='text').text;await new Promise(resolve=>window.proofRelease=resolve);}}};return m.SUGGESTED_PROMPT;}); + cell.question=question;await page.locator('textarea[name="input"]').fill(question);await page.locator('textarea[name="input"]').press('Enter');await page.locator('.naTool[data-running="true"]').waitFor();await page.waitForFunction(()=>typeof window.proofRelease==='function'&&document.body.innerText.includes(window.proofHeldText)); + + const running=await shot(page,'generated-running-'+width);cell.captures.push(running);cell.hasStop=running.state.buttons.some(b=>/stop|cancel/i.test(b.label));await page.evaluate(()=>window.proofRelease());await page.waitForFunction(()=>document.querySelectorAll('.naTool').length===4&&[...document.querySelectorAll('.naTool')].every(e=>e.dataset.running==='false'));await page.waitForTimeout(350); + await page.evaluate(async()=>{const m=await import('/src/nodeagent-chat/nodeAgentLocalAdapter.js');m.nodeAgentLocalAdapter.run=async function*(){yield {content:[{type:'text',text:'PROOF FIXTURE: checking the previous local result.'}]};throw new Error('PROOF FIXTURE: the current adapter failed before its next result.');};}); + await page.locator('textarea[name="input"]').fill('PROOF FIXTURE: inspect failure recovery without losing the earlier four results.');await page.locator('textarea[name="input"]').press('Enter');await page.waitForFunction(()=>document.body.innerText.includes('PROOF FIXTURE: checking the previous local result.'));await page.waitForTimeout(350); + const failed=await shot(page,'generated-error-'+width);cell.captures.push(failed);cell.hasErrorNotice=failed.state.text.includes('This response failed.');cell.hasRetry=failed.state.buttons.some(b=>/retry|try again/i.test(b.label));cell.retainedCards=await page.locator('.naTool').count();assert.ok(cell.hasStop && cell.hasErrorNotice && cell.hasRetry && cell.retainedCards===4);assert.ok(cell.errors.every(e=>e.message.includes('PROOF FIXTURE: the current adapter failed')));await ctx.close(); + } + report.sourceAfter=await hashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);report.consumerAfter=await consumerHashes();assert.deepEqual(report.consumerAfter,report.consumerBefore);report.completed=true; +}catch(error){report.error=error.stack;process.exitCode=1;}finally{await app?.close();await browser?.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(out,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({completed:report.completed,error:report.error,cells:report.cells.map(({width,hasStop,hasErrorNotice,hasRetry,retainedCards})=>({width,hasStop,hasErrorNotice,hasRetry,retainedCards}))}));} diff --git a/evidence/current-consumer-20260905/operator/capture-source-d3-before-01.mjs.txt b/evidence/current-consumer-20260905/operator/capture-source-d3-before-01.mjs.txt new file mode 100644 index 0000000..d396228 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/capture-source-d3-before-01.mjs.txt @@ -0,0 +1,31 @@ +import { createServer } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/node/index.js'; +import { chromium } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/playwright/index.mjs'; +import { createServer as portServer } from 'node:net'; +import { mkdir,readFile,writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import assert from 'node:assert/strict'; +const out=path.join(import.meta.dirname,'d3-source-boundary-01'); await mkdir(out); const sha=b=>createHash('sha256').update(b).digest('hex'); +const roots={generated:'D:/ProjectRecovery/NodeAgent current consumer 20260905/Generated Chat app',source:'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'}; +const files=execFileSync('git',['ls-files','-z'],{cwd:roots.source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(p=>p&&!path.basename(p).startsWith('.env')); +const hashes=async()=>Object.fromEntries(await Promise.all(files.map(async p=>[p,sha(await readFile(path.join(roots.source,p)))]))); +const report={startedAt:new Date().toISOString(),sourceBefore:await hashes(),cells:[],requests:[],grade:null};let browser,app; +async function shot(page,name){await page.evaluate(()=>new Promise(r=>requestAnimationFrame(()=>requestAnimationFrame(r))));const html=await page.content();await page.screenshot({path:path.join(out,name+'.png'),caret:'initial'});assert.equal(await page.content(),html);await writeFile(path.join(out,name+'.html'),html);return {name,pngSha256:sha(await readFile(path.join(out,name+'.png'))),state:await page.evaluate(()=>({text:document.body.innerText,scrollWidth:document.documentElement.scrollWidth,width:innerWidth,buttons:[...document.querySelectorAll('button')].map(b=>({label:b.getAttribute('aria-label')||b.textContent,disabled:b.disabled}))}))};} +async function boundary(page,name,selectors){const html=await page.content();const boxes=await page.evaluate(selectors=>selectors.map((s,i)=>{const el=document.querySelector(s.selector); if(!el)throw new Error('Missing '+s.selector);const b=el.getBoundingClientRect();const box=document.createElement('div');box.dataset.boundaryProof='true';Object.assign(box.style,{position:'fixed',left:b.left+'px',top:b.top+'px',width:b.width+'px',height:b.height+'px',boxSizing:'border-box',border:'3px solid #d31372',zIndex:2147483646,pointerEvents:'none'});const label=document.createElement('span');label.textContent='CHANGE '+String.fromCharCode(65+i)+' / '+s.title;Object.assign(label.style,{position:'absolute',left:'0',bottom:'100%',font:'bold 12px sans-serif',padding:'4px',background:'#971352',color:'white',whiteSpace:'nowrap'});if(b.top<32){label.style.bottom='auto';label.style.top='0';}box.append(label);document.body.append(box);return {selector:s.selector,x:b.x,y:b.y,width:b.width,height:b.height};}),selectors);await page.screenshot({path:path.join(out,name+'-change-boundary.png'),caret:'initial'});await page.evaluate(()=>document.querySelectorAll('[data-boundary-proof]').forEach(x=>x.remove()));assert.equal(await page.content(),html);await writeFile(path.join(out,name+'-change-boundary.md'),`# Actual before boundary\n\nRoute: ${page.url()}\nViewport: ${JSON.stringify(page.viewportSize())}\nTheme: light; anonymous local generated/current source.\nTrigger: ${name}\n\n${JSON.stringify(boxes,null,2)}\n\nFirst submission must preserve the shell, show inspectable progress and yield four scripted tool cards. Current dependency-selected generated app throws before its first tool card. Subsequent D3 Stop/error/retry inspection is blocked on that app. The current source comparison uses the actual locked source without modification. Protected neighbors: branding, no-key disclosure, tool facts, graph ownership, prior messages and separate SQLite durable proof. No provider request or credential is used.\n`);return {name,boxes,pngSha256:sha(await readFile(path.join(out,name+'-change-boundary.png')))};} +try { + browser=await chromium.launch({headless:true}); + const root=roots.source,probe=portServer();await new Promise(r=>probe.listen(0,'127.0.0.1',r));const port=probe.address().port;await new Promise(r=>probe.close(r));app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}});await app.listen();const base='http://127.0.0.1:'+port; + for(const width of [390,1440]) { + const ctx=await browser.newContext({viewport:{width,height:960}});await ctx.route('**/*',route=>{const r=route.request();report.requests.push({url:r.url().split('?')[0],method:r.method()});return new URL(r.url()).origin===base?route.continue():route.abort();}); + const page=await ctx.newPage();page.setDefaultTimeout(15000);const cell={kind:'source',width,errors:[],captures:[],fixture:'Actual canonical no-key adapter, with iterator paused after its actual first running tool frame solely to settle screenshots; then explicit in-memory one-run adapter throw.'};report.cells.push(cell);page.on('pageerror',e=>cell.errors.push({message:e.message,stack:e.stack}));await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor(); + const question=await page.evaluate(async()=>{const m=await import('/src/features/node-agent/runtime/nodeAgentChatAdapter.ts'),scenario=await import('/src/features/node-agent/demoScenario.ts');const original=m.nodeAgentChatAdapter.run;window.proofOriginalRun=original;m.nodeAgentChatAdapter.run=async function*(args){let held=false;for await(const frame of original(args)){yield frame;if(!held&&frame.content.some(p=>p.type==='tool-call'&&!p.result)){held=true;await new Promise(resolve=>window.proofRelease=resolve);}}};return scenario.DEMO_QUESTION;}); + cell.question=question;await page.locator('textarea[name="input"]').fill(question);await page.locator('textarea[name="input"]').press('Enter');await page.locator('.na-tool[data-running="true"]').waitFor();await page.waitForFunction(()=>typeof window.proofRelease==='function'); + const selectors=[{selector:'.na-composer',title:'Run controls'},{selector:'.na-msg-assistant:last-of-type .na-bubble',title:'Current run response'}]; + const running=await shot(page,'source-running-'+width);cell.captures.push(running);cell.hasStop=running.state.buttons.some(b=>/stop|cancel/i.test(b.label));cell.captures.push(await boundary(page,'source-running-'+width,selectors));await page.evaluate(()=>window.proofRelease());await page.waitForFunction(()=>document.querySelectorAll('.na-tool').length===4&&[...document.querySelectorAll('.na-tool')].every(e=>e.dataset.running==='false'));await page.waitForTimeout(350); + await page.evaluate(async()=>{const m=await import('/src/features/node-agent/runtime/nodeAgentChatAdapter.ts');m.nodeAgentChatAdapter.run=async function*(){yield {content:[{type:'text',text:'PROOF FIXTURE: checking the previous local result.'}]};throw new Error('PROOF FIXTURE: the current adapter failed before its next result.');};}); + await page.locator('textarea[name="input"]').fill('PROOF FIXTURE: inspect failure recovery without losing the earlier four results.');await page.locator('textarea[name="input"]').press('Enter');await page.waitForFunction(()=>document.body.innerText.includes('PROOF FIXTURE: checking the previous local result.'));await page.waitForTimeout(350); + const failed=await shot(page,'source-error-'+width);cell.captures.push(failed);cell.hasErrorNotice=failed.state.text.includes('current adapter failed');cell.hasRetry=failed.state.buttons.some(b=>/retry|try again/i.test(b.label));cell.retainedCards=await page.locator('.na-tool').count();cell.captures.push(await boundary(page,'source-error-'+width,selectors));await ctx.close(); + } + report.sourceAfter=await hashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);report.completed=true; +}catch(error){report.error=error.stack;process.exitCode=1;}finally{await app?.close();await browser?.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(out,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({completed:report.completed,error:report.error,cells:report.cells.map(({width,hasStop,hasErrorNotice,hasRetry,retainedCards})=>({width,hasStop,hasErrorNotice,hasRetry,retainedCards}))}));} diff --git a/evidence/current-consumer-20260905/operator/capture-source-d3-before-02.mjs.txt b/evidence/current-consumer-20260905/operator/capture-source-d3-before-02.mjs.txt new file mode 100644 index 0000000..957ecd1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/capture-source-d3-before-02.mjs.txt @@ -0,0 +1,31 @@ +import { createServer } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/node/index.js'; +import { chromium } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/playwright/index.mjs'; +import { createServer as portServer } from 'node:net'; +import { mkdir,readFile,writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import assert from 'node:assert/strict'; +const out=path.join(import.meta.dirname,'d3-source-boundary-02'); await mkdir(out); const sha=b=>createHash('sha256').update(b).digest('hex'); +const roots={generated:'D:/ProjectRecovery/NodeAgent current consumer 20260905/Generated Chat app',source:'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'}; +const files=execFileSync('git',['ls-files','-z'],{cwd:roots.source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(p=>p&&!path.basename(p).startsWith('.env')); +const hashes=async()=>Object.fromEntries(await Promise.all(files.map(async p=>[p,sha(await readFile(path.join(roots.source,p)))]))); +const report={startedAt:new Date().toISOString(),sourceBefore:await hashes(),cells:[],requests:[],grade:null};let browser,app; +async function shot(page,name){await page.evaluate(()=>new Promise(r=>requestAnimationFrame(()=>requestAnimationFrame(r))));let prior=await page.content();for(let i=0;i<8;i++){await page.waitForTimeout(250);const current=await page.content();if(current===prior)break;prior=current;}const html=await page.content();await writeFile(path.join(out,name+'.before.html'),html);await page.screenshot({path:path.join(out,name+'.png'),caret:'initial'});await writeFile(path.join(out,name+'.after.html'),await page.content());assert.equal(await page.content(),html);await writeFile(path.join(out,name+'.html'),html);return {name,pngSha256:sha(await readFile(path.join(out,name+'.png'))),state:await page.evaluate(()=>({text:document.body.innerText,scrollWidth:document.documentElement.scrollWidth,width:innerWidth,buttons:[...document.querySelectorAll('button')].map(b=>({label:b.getAttribute('aria-label')||b.textContent,disabled:b.disabled}))}))};} +async function boundary(page,name,selectors){const html=await page.content();const boxes=await page.evaluate(selectors=>selectors.map((s,i)=>{const el=document.querySelector(s.selector); if(!el)throw new Error('Missing '+s.selector);const b=el.getBoundingClientRect();const box=document.createElement('div');box.dataset.boundaryProof='true';Object.assign(box.style,{position:'fixed',left:b.left+'px',top:b.top+'px',width:b.width+'px',height:b.height+'px',boxSizing:'border-box',border:'3px solid #d31372',zIndex:2147483646,pointerEvents:'none'});const label=document.createElement('span');label.textContent='CHANGE '+String.fromCharCode(65+i)+' / '+s.title;Object.assign(label.style,{position:'absolute',left:'0',bottom:'100%',font:'bold 12px sans-serif',padding:'4px',background:'#971352',color:'white',whiteSpace:'nowrap'});if(b.top<32){label.style.bottom='auto';label.style.top='0';}box.append(label);document.body.append(box);return {selector:s.selector,x:b.x,y:b.y,width:b.width,height:b.height};}),selectors);await page.screenshot({path:path.join(out,name+'-change-boundary.png'),caret:'initial'});await page.evaluate(()=>document.querySelectorAll('[data-boundary-proof]').forEach(x=>x.remove()));assert.equal(await page.content(),html);await writeFile(path.join(out,name+'-change-boundary.md'),`# Actual before boundary\n\nRoute: ${page.url()}\nViewport: ${JSON.stringify(page.viewportSize())}\nTheme: light; anonymous local generated/current source.\nTrigger: ${name}\n\n${JSON.stringify(boxes,null,2)}\n\nFirst submission must preserve the shell, show inspectable progress and yield four scripted tool cards. Current dependency-selected generated app throws before its first tool card. Subsequent D3 Stop/error/retry inspection is blocked on that app. The current source comparison uses the actual locked source without modification. Protected neighbors: branding, no-key disclosure, tool facts, graph ownership, prior messages and separate SQLite durable proof. No provider request or credential is used.\n`);return {name,boxes,pngSha256:sha(await readFile(path.join(out,name+'-change-boundary.png')))};} +try { + browser=await chromium.launch({headless:true}); + const root=roots.source,probe=portServer();await new Promise(r=>probe.listen(0,'127.0.0.1',r));const port=probe.address().port;await new Promise(r=>probe.close(r));app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}});await app.listen();const base='http://127.0.0.1:'+port; + for(const width of [390,1440]) { + const ctx=await browser.newContext({viewport:{width,height:960}});await ctx.route('**/*',route=>{const r=route.request();report.requests.push({url:r.url().split('?')[0],method:r.method()});return new URL(r.url()).origin===base?route.continue():route.abort();}); + const page=await ctx.newPage();page.setDefaultTimeout(15000);const cell={kind:'source',width,errors:[],captures:[],fixture:'Actual canonical no-key adapter, with iterator paused after its actual first running tool frame solely to settle screenshots; then explicit in-memory one-run adapter throw.'};report.cells.push(cell);page.on('pageerror',e=>cell.errors.push({message:e.message,stack:e.stack}));await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor(); + const question=await page.evaluate(async()=>{const m=await import('/src/features/node-agent/runtime/nodeAgentChatAdapter.ts'),scenario=await import('/src/features/node-agent/demoScenario.ts');const original=m.nodeAgentChatAdapter.run;window.proofOriginalRun=original;m.nodeAgentChatAdapter.run=async function*(args){let held=false;for await(const frame of original(args)){yield frame;if(!held&&frame.content.some(p=>p.type==='tool-call'&&!p.result)){held=true;window.proofHeldText=frame.content.find(p=>p.type==='text').text;await new Promise(resolve=>window.proofRelease=resolve);}}};return scenario.DEMO_QUESTION;}); + cell.question=question;await page.locator('textarea[name="input"]').fill(question);await page.locator('textarea[name="input"]').press('Enter');await page.locator('.na-tool[data-running="true"]').waitFor();await page.waitForFunction(()=>typeof window.proofRelease==='function'&&document.body.innerText.includes(window.proofHeldText)); + const selectors=[{selector:'.na-composer',title:'Run controls'},{selector:'.na-msg-assistant:last-of-type .na-bubble',title:'Current run response'}]; + const running=await shot(page,'source-running-'+width);cell.captures.push(running);cell.hasStop=running.state.buttons.some(b=>/stop|cancel/i.test(b.label));cell.captures.push(await boundary(page,'source-running-'+width,selectors));await page.evaluate(()=>window.proofRelease());await page.waitForFunction(()=>document.querySelectorAll('.na-tool').length===4&&[...document.querySelectorAll('.na-tool')].every(e=>e.dataset.running==='false'));await page.waitForTimeout(350); + await page.evaluate(async()=>{const m=await import('/src/features/node-agent/runtime/nodeAgentChatAdapter.ts');m.nodeAgentChatAdapter.run=async function*(){yield {content:[{type:'text',text:'PROOF FIXTURE: checking the previous local result.'}]};throw new Error('PROOF FIXTURE: the current adapter failed before its next result.');};}); + await page.locator('textarea[name="input"]').fill('PROOF FIXTURE: inspect failure recovery without losing the earlier four results.');await page.locator('textarea[name="input"]').press('Enter');await page.waitForFunction(()=>document.body.innerText.includes('PROOF FIXTURE: checking the previous local result.'));await page.waitForTimeout(350); + const failed=await shot(page,'source-error-'+width);cell.captures.push(failed);cell.hasErrorNotice=failed.state.text.includes('current adapter failed');cell.hasRetry=failed.state.buttons.some(b=>/retry|try again/i.test(b.label));cell.retainedCards=await page.locator('.na-tool').count();cell.captures.push(await boundary(page,'source-error-'+width,selectors));await ctx.close(); + } + report.sourceAfter=await hashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);report.completed=true; +}catch(error){report.error=error.stack;process.exitCode=1;}finally{await app?.close();await browser?.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(out,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({completed:report.completed,error:report.error,cells:report.cells.map(({width,hasStop,hasErrorNotice,hasRetry,retainedCards})=>({width,hasStop,hasErrorNotice,hasRetry,retainedCards}))}));} diff --git a/evidence/current-consumer-20260905/operator/capture-source-d3-before.mjs.txt b/evidence/current-consumer-20260905/operator/capture-source-d3-before.mjs.txt new file mode 100644 index 0000000..1f66391 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/capture-source-d3-before.mjs.txt @@ -0,0 +1,31 @@ +import { createServer } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/node/index.js'; +import { chromium } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/playwright/index.mjs'; +import { createServer as portServer } from 'node:net'; +import { mkdir,readFile,writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import assert from 'node:assert/strict'; +const out=path.join(import.meta.dirname,'d3-source-boundary-03'); await mkdir(out); const sha=b=>createHash('sha256').update(b).digest('hex'); +const roots={generated:'D:/ProjectRecovery/NodeAgent current consumer 20260905/Generated Chat app',source:'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'}; +const files=execFileSync('git',['ls-files','-z'],{cwd:roots.source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(p=>p&&!path.basename(p).startsWith('.env')); +const hashes=async()=>Object.fromEntries(await Promise.all(files.map(async p=>[p,sha(await readFile(path.join(roots.source,p)))]))); +const report={startedAt:new Date().toISOString(),sourceBefore:await hashes(),cells:[],requests:[],grade:null};let browser,app; +async function shot(page,name){await page.evaluate(()=>new Promise(r=>requestAnimationFrame(()=>requestAnimationFrame(r))));let prior=await page.content();for(let i=0;i<8;i++){await page.waitForTimeout(250);const current=await page.content();if(current===prior)break;prior=current;}const html=await page.content();await writeFile(path.join(out,name+'.before.html'),html);await page.screenshot({path:path.join(out,name+'.png'),caret:'initial'});await writeFile(path.join(out,name+'.after.html'),await page.content());assert.equal(await page.content(),html);await writeFile(path.join(out,name+'.html'),html);return {name,pngSha256:sha(await readFile(path.join(out,name+'.png'))),state:await page.evaluate(()=>({text:document.body.innerText,scrollWidth:document.documentElement.scrollWidth,width:innerWidth,buttons:[...document.querySelectorAll('button')].map(b=>({label:b.getAttribute('aria-label')||b.textContent,disabled:b.disabled}))}))};} +async function boundary(page,name,selectors){const html=await page.content();const boxes=await page.evaluate(selectors=>selectors.map((s,i)=>{const el=[...document.querySelectorAll(s.selector)].at(-1); if(!el)throw new Error('Missing '+s.selector);const b=el.getBoundingClientRect();const box=document.createElement('div');box.dataset.boundaryProof='true';Object.assign(box.style,{position:'fixed',left:b.left+'px',top:b.top+'px',width:b.width+'px',height:b.height+'px',boxSizing:'border-box',border:'3px solid #d31372',zIndex:2147483646,pointerEvents:'none'});const label=document.createElement('span');label.textContent='CHANGE '+String.fromCharCode(65+i)+' / '+s.title;Object.assign(label.style,{position:'absolute',left:'0',bottom:'100%',font:'bold 12px sans-serif',padding:'4px',background:'#971352',color:'white',whiteSpace:'nowrap'});if(b.top<32){label.style.bottom='auto';label.style.top='0';}box.append(label);document.body.append(box);return {selector:s.selector,x:b.x,y:b.y,width:b.width,height:b.height};}),selectors);await page.screenshot({path:path.join(out,name+'-change-boundary.png'),caret:'initial'});await page.evaluate(()=>document.querySelectorAll('[data-boundary-proof]').forEach(x=>x.remove()));assert.equal(await page.content(),html);await writeFile(path.join(out,name+'-change-boundary.md'),`# Actual before boundary\n\nRoute: ${page.url()}\nViewport: ${JSON.stringify(page.viewportSize())}\nTheme: light; anonymous local generated/current source.\nTrigger: ${name}\n\n${JSON.stringify(boxes,null,2)}\n\nFirst submission must preserve the shell, show inspectable progress and yield four scripted tool cards. Current dependency-selected generated app throws before its first tool card. Subsequent D3 Stop/error/retry inspection is blocked on that app. The current source comparison uses the actual locked source without modification. Protected neighbors: branding, no-key disclosure, tool facts, graph ownership, prior messages and separate SQLite durable proof. No provider request or credential is used.\n`);return {name,boxes,pngSha256:sha(await readFile(path.join(out,name+'-change-boundary.png')))};} +try { + browser=await chromium.launch({headless:true}); + const root=roots.source,probe=portServer();await new Promise(r=>probe.listen(0,'127.0.0.1',r));const port=probe.address().port;await new Promise(r=>probe.close(r));app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}});await app.listen();const base='http://127.0.0.1:'+port; + for(const width of [390,1440]) { + const ctx=await browser.newContext({viewport:{width,height:960}});await ctx.route('**/*',route=>{const r=route.request();report.requests.push({url:r.url().split('?')[0],method:r.method()});return new URL(r.url()).origin===base?route.continue():route.abort();}); + const page=await ctx.newPage();page.setDefaultTimeout(15000);const cell={kind:'source',width,errors:[],captures:[],fixture:'Actual canonical no-key adapter, with iterator paused after its actual first running tool frame solely to settle screenshots; then explicit in-memory one-run adapter throw.'};report.cells.push(cell);page.on('pageerror',e=>cell.errors.push({message:e.message,stack:e.stack}));await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor(); + const question=await page.evaluate(async()=>{const m=await import('/src/features/node-agent/runtime/nodeAgentChatAdapter.ts'),scenario=await import('/src/features/node-agent/demoScenario.ts');const original=m.nodeAgentChatAdapter.run;window.proofOriginalRun=original;m.nodeAgentChatAdapter.run=async function*(args){let held=false;for await(const frame of original(args)){yield frame;if(!held&&frame.content.some(p=>p.type==='tool-call'&&!p.result)){held=true;window.proofHeldText=frame.content.find(p=>p.type==='text').text;await new Promise(resolve=>window.proofRelease=resolve);}}};return scenario.DEMO_QUESTION;}); + cell.question=question;await page.locator('textarea[name="input"]').fill(question);await page.locator('textarea[name="input"]').press('Enter');await page.locator('.na-tool[data-running="true"]').waitFor();await page.waitForFunction(()=>typeof window.proofRelease==='function'&&document.body.innerText.includes(window.proofHeldText)); + const selectors=[{selector:'.na-composer',title:'Run controls'},{selector:'.na-msg-assistant .na-bubble',title:'Current run response'}]; + const running=await shot(page,'source-running-'+width);cell.captures.push(running);cell.hasStop=running.state.buttons.some(b=>/stop|cancel/i.test(b.label));cell.captures.push(await boundary(page,'source-running-'+width,selectors));await page.evaluate(()=>window.proofRelease());await page.waitForFunction(()=>document.querySelectorAll('.na-tool').length===4&&[...document.querySelectorAll('.na-tool')].every(e=>e.dataset.running==='false'));await page.waitForTimeout(350); + await page.evaluate(async()=>{const m=await import('/src/features/node-agent/runtime/nodeAgentChatAdapter.ts');m.nodeAgentChatAdapter.run=async function*(){yield {content:[{type:'text',text:'PROOF FIXTURE: checking the previous local result.'}]};throw new Error('PROOF FIXTURE: the current adapter failed before its next result.');};}); + await page.locator('textarea[name="input"]').fill('PROOF FIXTURE: inspect failure recovery without losing the earlier four results.');await page.locator('textarea[name="input"]').press('Enter');await page.waitForFunction(()=>document.body.innerText.includes('PROOF FIXTURE: checking the previous local result.'));await page.waitForTimeout(350); + const failed=await shot(page,'source-error-'+width);cell.captures.push(failed);cell.hasErrorNotice=failed.state.text.includes('current adapter failed');cell.hasRetry=failed.state.buttons.some(b=>/retry|try again/i.test(b.label));cell.retainedCards=await page.locator('.na-tool').count();cell.captures.push(await boundary(page,'source-error-'+width,selectors));await ctx.close(); + } + report.sourceAfter=await hashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);report.completed=true; +}catch(error){report.error=error.stack;process.exitCode=1;}finally{await app?.close();await browser?.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(out,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({completed:report.completed,error:report.error,cells:report.cells.map(({width,hasStop,hasErrorNotice,hasRetry,retainedCards})=>({width,hasStop,hasErrorNotice,hasRetry,retainedCards}))}));} diff --git a/evidence/current-consumer-20260905/operator/capture-source-d3-matched-after.mjs.txt b/evidence/current-consumer-20260905/operator/capture-source-d3-matched-after.mjs.txt new file mode 100644 index 0000000..5005478 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/capture-source-d3-matched-after.mjs.txt @@ -0,0 +1,30 @@ +import { createServer } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/node/index.js'; +import { chromium } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/playwright/index.mjs'; +import { createServer as portServer } from 'node:net'; +import { mkdir,readFile,writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import assert from 'node:assert/strict'; +const out=path.join(import.meta.dirname,'d3-source-matched-after'); await mkdir(out); const sha=b=>createHash('sha256').update(b).digest('hex'); +const roots={generated:'D:/ProjectRecovery/NodeAgent current consumer 20260905/Generated Chat app',source:'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'}; +const files=execFileSync('git',['ls-files','-z'],{cwd:roots.source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(p=>p&&!path.basename(p).startsWith('.env')); +const hashes=async()=>Object.fromEntries(await Promise.all(files.map(async p=>[p,sha(await readFile(path.join(roots.source,p)))]))); +const report={purpose:'Supplemental actual source running controls at six widths and exact original source before fixtures at390/1440x960. Screenshot-only iterator hold; ordinary unheld Stop is proven separately.',scriptSha256:sha(await readFile(new URL(import.meta.url))),startedAt:new Date().toISOString(),sourceBefore:await hashes(),cells:[],requests:[],grade:null};let browser,app; +async function shot(page,name){await page.evaluate(()=>new Promise(r=>requestAnimationFrame(()=>requestAnimationFrame(r))));let prior=await page.content();for(let i=0;i<8;i++){await page.waitForTimeout(250);const current=await page.content();if(current===prior)break;prior=current;}const html=await page.content();await writeFile(path.join(out,name+'.before.html'),html);await page.screenshot({path:path.join(out,name+'.png'),caret:'initial'});await writeFile(path.join(out,name+'.after.html'),await page.content());assert.equal(await page.content(),html);await writeFile(path.join(out,name+'.html'),html);return {name,pngSha256:sha(await readFile(path.join(out,name+'.png'))),state:await page.evaluate(()=>({text:document.body.innerText,scrollWidth:document.documentElement.scrollWidth,width:innerWidth,buttons:[...document.querySelectorAll('button')].map(b=>({label:b.getAttribute('aria-label')||b.textContent,disabled:b.disabled}))}))};} +try { + browser=await chromium.launch({headless:true}); + const root=roots.source,probe=portServer();await new Promise(r=>probe.listen(0,'127.0.0.1',r));const port=probe.address().port;await new Promise(r=>probe.close(r));app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}});await app.listen();const base='http://127.0.0.1:'+port; + for(const width of [320,390,768,1024,1440,1920]) { + const ctx=await browser.newContext({viewport:{width,height:960}});await ctx.route('**/*',route=>{const r=route.request();report.requests.push({url:r.url().split('?')[0],method:r.method()});return new URL(r.url()).origin===base?route.continue():route.abort();}); + const page=await ctx.newPage();page.setDefaultTimeout(15000);const cell={kind:'source',width,errors:[],captures:[],fixture:'Actual canonical no-key adapter, with iterator paused after its actual first running tool frame solely to settle screenshots; then explicit in-memory one-run adapter throw.'};report.cells.push(cell);page.on('pageerror',e=>cell.errors.push({message:e.message,stack:e.stack}));await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor(); + const question=await page.evaluate(async()=>{const m=await import('/src/features/node-agent/runtime/nodeAgentChatAdapter.ts'),scenario=await import('/src/features/node-agent/demoScenario.ts');const original=m.nodeAgentChatAdapter.run;window.proofOriginalRun=original;m.nodeAgentChatAdapter.run=async function*(args){let held=false;for await(const frame of original(args)){yield frame;if(!held&&frame.content.some(p=>p.type==='tool-call'&&!p.result)){held=true;window.proofHeldText=frame.content.find(p=>p.type==='text').text;await new Promise(resolve=>window.proofRelease=resolve);}}};return scenario.DEMO_QUESTION;}); + cell.question=question;await page.locator('textarea[name="input"]').fill(question);await page.locator('textarea[name="input"]').press('Enter');await page.locator('.na-tool[data-running="true"]').waitFor();await page.waitForFunction(()=>typeof window.proofRelease==='function'&&document.body.innerText.includes(window.proofHeldText)); + + const running=await shot(page,'source-running-'+width);cell.captures.push(running);cell.hasStop=running.state.buttons.some(b=>/stop|cancel/i.test(b.label));await page.evaluate(()=>window.proofRelease());await page.waitForFunction(()=>document.querySelectorAll('.na-tool').length===4&&[...document.querySelectorAll('.na-tool')].every(e=>e.dataset.running==='false'));await page.waitForTimeout(350); + await page.evaluate(async()=>{const m=await import('/src/features/node-agent/runtime/nodeAgentChatAdapter.ts');m.nodeAgentChatAdapter.run=async function*(){yield {content:[{type:'text',text:'PROOF FIXTURE: checking the previous local result.'}]};throw new Error('PROOF FIXTURE: the current adapter failed before its next result.');};}); + await page.locator('textarea[name="input"]').fill('PROOF FIXTURE: inspect failure recovery without losing the earlier four results.');await page.locator('textarea[name="input"]').press('Enter');await page.waitForFunction(()=>document.body.innerText.includes('PROOF FIXTURE: checking the previous local result.'));await page.waitForTimeout(350); + const failed=await shot(page,'source-error-'+width);cell.captures.push(failed);cell.hasErrorNotice=failed.state.text.includes('This response failed.');cell.hasRetry=failed.state.buttons.some(b=>/retry|try again/i.test(b.label));cell.retainedCards=await page.locator('.na-tool').count();assert.ok(cell.hasStop && cell.hasErrorNotice && cell.hasRetry && cell.retainedCards===4);assert.ok(cell.errors.every(e=>e.message.includes('PROOF FIXTURE: the current adapter failed')));await ctx.close(); + } + report.sourceAfter=await hashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);report.completed=true; +}catch(error){report.error=error.stack;process.exitCode=1;}finally{await app?.close();await browser?.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(out,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({completed:report.completed,error:report.error,cells:report.cells.map(({width,hasStop,hasErrorNotice,hasRetry,retainedCards})=>({width,hasStop,hasErrorNotice,hasRetry,retainedCards}))}));} diff --git a/evidence/current-consumer-20260905/operator/d3-citation-before/.tours/01-primary-user-flow.tour b/evidence/current-consumer-20260905/operator/d3-citation-before/.tours/01-primary-user-flow.tour new file mode 100644 index 0000000..ab3645a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-citation-before/.tours/01-primary-user-flow.tour @@ -0,0 +1,91 @@ +{ + "$schema": "https://aka.ms/codetour-schema", + "title": "1 · A question becomes a memo", + "description": "Follow one user request from the page load to the finished memo. Start here if you have never seen this repo.", + "steps": [ + { + "file": "index.html", + "line": 18, + "anchor": " + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/failure.png b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/failure.png new file mode 100644 index 0000000..4a808aa Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/failure.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.before.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.before.html new file mode 100644 index 0000000..53385d1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.before.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.html new file mode 100644 index 0000000..53385d1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.json new file mode 100644 index 0000000..8ca4c58 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.png b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.png new file mode 100644 index 0000000..3c0088c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-empty-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.before.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.before.html new file mode 100644 index 0000000..8047ab5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.before.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.html new file mode 100644 index 0000000..8047ab5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.json new file mode 100644 index 0000000..61fd78b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.png b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.png new file mode 100644 index 0000000..812bf3a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.before.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.before.html new file mode 100644 index 0000000..0a9916d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.before.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.html new file mode 100644 index 0000000..0a9916d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.json new file mode 100644 index 0000000..61fd78b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.png b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.png new file mode 100644 index 0000000..81b515f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-again-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.before.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.before.html new file mode 100644 index 0000000..3ae5ae9 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.before.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.html new file mode 100644 index 0000000..3ae5ae9 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.json new file mode 100644 index 0000000..bd22334 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 10420, + "clientHeight": 10420, + "box": { + "x": 0, + "y": -9576, + "width": 445, + "height": 10420.1875, + "top": -9576, + "right": 445, + "bottom": 844.1875, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 186, + "clientHeight": 186, + "box": { + "x": 67, + "y": 426.59375, + "width": 351, + "height": 186.59375, + "top": 426.59375, + "right": 418, + "bottom": 613.1875, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 192, + "clientHeight": 192, + "box": { + "x": 12, + "y": 644.1875, + "width": 421, + "height": 192, + "top": 644.1875, + "right": 433, + "bottom": 836.1875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 9640 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 55, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.png b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.png new file mode 100644 index 0000000..4a808aa Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-error-text-200-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.before.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.before.html new file mode 100644 index 0000000..17a5bcf --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.before.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.html new file mode 100644 index 0000000..17a5bcf --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.json new file mode 100644 index 0000000..44a0291 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2538, + "clientHeight": 2538, + "box": { + "x": 0, + "y": -1626, + "width": 390, + "height": 2537.640625, + "top": -1626, + "right": 390, + "bottom": 911.640625, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.640625, + "width": 296, + "height": 115, + "top": 629.640625, + "right": 363, + "bottom": 744.640625, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.640625, + "width": 366, + "height": 128, + "top": 775.640625, + "right": 378, + "bottom": 903.640625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1690 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.png b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.png new file mode 100644 index 0000000..a4def08 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/generated-stopped-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/intrinsic-width-diagnosis.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/intrinsic-width-diagnosis.json new file mode 100644 index 0000000..503b4f2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/intrinsic-width-diagnosis.json @@ -0,0 +1,95 @@ +[ + { + "css": ".naComposerInput { min-width:0 }", + "overflow": 55, + "boxes": [ + { + "class": "naThread", + "width": 445, + "right": 445 + }, + { + "class": "naViewport", + "width": 445, + "right": 445 + }, + { + "class": "naRecovery", + "width": 351, + "right": 418 + }, + { + "class": "naComposer", + "width": 385, + "right": 415 + }, + { + "class": "naComposerInput", + "width": 315, + "right": 359 + } + ] + }, + { + "css": ".naMain,.naThread { min-width:0 }", + "overflow": 0, + "boxes": [ + { + "class": "naThread", + "width": 390, + "right": 390 + }, + { + "class": "naViewport", + "width": 390, + "right": 390 + }, + { + "class": "naRecovery", + "width": 296, + "right": 363 + }, + { + "class": "naComposer", + "width": 330, + "right": 360 + }, + { + "class": "naComposerInput", + "width": 260, + "right": 304 + } + ] + }, + { + "css": ".naMain,.naThread,.naComposerInput { min-width:0 }", + "overflow": 0, + "boxes": [ + { + "class": "naThread", + "width": 390, + "right": 390 + }, + { + "class": "naViewport", + "width": 390, + "right": 390 + }, + { + "class": "naRecovery", + "width": 296, + "right": 363 + }, + { + "class": "naComposer", + "width": 330, + "right": 360 + }, + { + "class": "naComposerInput", + "width": 260, + "right": 304 + } + ] + } +] \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/report.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/report.json new file mode 100644 index 0000000..df9f119 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-01/report.json @@ -0,0 +1,829 @@ +{ + "namedProof": "NODEAGENT-RESPONSE-RECOVERY-01", + "startedAt": "2026-09-05T08:37:59.412Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "a0e40ef53b606e3249c46002cfaf04c6741859b07d808bad6474287e6a897f1b", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "e0adeb247191d8a894bf74989b714e7fdcfcf9c1f3d91e52b95db2ded5bcf341", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "ed2a8ff8e0c034d534b2d5b1ca941735c71c0e4c091af7a6e48a5200503e6ecd", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "passed": false, + "checks": [ + { + "name": "generated-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 390", + "passed": true + }, + { + "name": "generated stopped response remains stable 390", + "passed": true + }, + { + "name": "generated-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "generated partial failure names failed tool 390", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 390", + "passed": true + }, + { + "name": "generated-error-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 390", + "passed": true + }, + { + "name": "generated-error-again-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated enlarged Retry reachable from composer by keyboard 390", + "passed": true + }, + { + "name": "generated-error-text-200-390 exact DOM during settled screenshot", + "passed": true + } + ], + "cells": [ + { + "kind": "generated", + "width": 390, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 0, + "capturesStart": 0, + "stopInput": "keyboard", + "stopLatencyMs": 326, + "enlargement": { + "method": "Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.", + "elements": 115, + "documentOverflow": 55, + "changedBounds": [ + { + "class": "naRecovery", + "left": 67, + "right": 418, + "overflow": 0 + }, + { + "class": "naComposer", + "left": 30, + "right": 415, + "overflow": 0 + } + ] + } + } + ], + "captures": [ + { + "name": "generated-empty-390", + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-390", + "pngSha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2538, + "clientHeight": 2538, + "box": { + "x": 0, + "y": -1626, + "width": 390, + "height": 2537.640625, + "top": -1626, + "right": 390, + "bottom": 911.640625, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.640625, + "width": 296, + "height": 115, + "top": 629.640625, + "right": 363, + "bottom": 744.640625, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.640625, + "width": 366, + "height": 128, + "top": 775.640625, + "right": 378, + "bottom": 903.640625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1690 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-390", + "pngSha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-390", + "pngSha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-text-200-390", + "pngSha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 10420, + "clientHeight": 10420, + "box": { + "x": 0, + "y": -9576, + "width": 445, + "height": 10420.1875, + "top": -9576, + "right": 445, + "bottom": 844.1875, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 186, + "clientHeight": 186, + "box": { + "x": 67, + "y": 426.59375, + "width": 351, + "height": 186.59375, + "top": 426.59375, + "right": 418, + "bottom": 613.1875, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 192, + "clientHeight": 192, + "box": { + "x": 12, + "y": 644.1875, + "width": 421, + "height": 192, + "top": 644.1875, + "right": 433, + "bottom": 836.1875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 9640 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 55, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:55990", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/node_modules/.vite/deps/chunk-CYQPUWW3.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/node_modules/.vite/deps/chunk-D4K3B3B5.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:55990", + "path": "/node_modules/.vite/deps/chunk-WHVVH2LO.js", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "error": "Error: DIAGNOSTIC COMPLETE: no source mutation; see intrinsic-width-diagnosis.json\n at file:///C:/Users/hshum/.codex/worktrees/5dba/nodebench-ai/docs/plans/portfolio-recovery-20260904/E6e-nodeagent-current-consumer/diagnose-d3-enlargement.mjs:146:15", + "finishedAt": "2026-09-05T08:38:10.634Z" +} diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.command.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.command.json new file mode 100644 index 0000000..c360ffa --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.command.json @@ -0,0 +1,10 @@ +{ + "command": [ + "node", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\diagnose-d3-enlargement-02.mjs", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02" + ], + "exit": 1, + "seconds": 11.87879490852356 +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.stderr b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.stdout b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.stdout new file mode 100644 index 0000000..25bf503 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02.stdout @@ -0,0 +1 @@ +{"output":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-enlargement-diagnosis-02","passed":false,"checks":15,"captures":5,"error":"Error: DIAGNOSTIC COMPLETE: no source mutation; see intrinsic-width-diagnosis.json\n at file:///C:/Users/hshum/.codex/worktrees/5dba/nodebench-ai/docs/plans/portfolio-recovery-20260904/E6e-nodeagent-current-consumer/diagnose-d3-enlargement-02.mjs:146:15"} diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/change-boundary.png b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/change-boundary.png new file mode 100644 index 0000000..b201170 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/change-boundary.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.html new file mode 100644 index 0000000..980d29d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.png b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.png new file mode 100644 index 0000000..4a808aa Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/failure.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.before.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.before.html new file mode 100644 index 0000000..53385d1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.before.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.html new file mode 100644 index 0000000..53385d1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.json new file mode 100644 index 0000000..8ca4c58 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.png b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.png new file mode 100644 index 0000000..3c0088c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-empty-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.before.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.before.html new file mode 100644 index 0000000..4884f48 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.before.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.html new file mode 100644 index 0000000..4884f48 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.json new file mode 100644 index 0000000..61fd78b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.png b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.png new file mode 100644 index 0000000..812bf3a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.before.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.before.html new file mode 100644 index 0000000..eb00e38 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.before.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.html new file mode 100644 index 0000000..eb00e38 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.json new file mode 100644 index 0000000..61fd78b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.png b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.png new file mode 100644 index 0000000..81b515f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-again-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.before.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.before.html new file mode 100644 index 0000000..980d29d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.before.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.html new file mode 100644 index 0000000..980d29d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.json new file mode 100644 index 0000000..bd22334 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 10420, + "clientHeight": 10420, + "box": { + "x": 0, + "y": -9576, + "width": 445, + "height": 10420.1875, + "top": -9576, + "right": 445, + "bottom": 844.1875, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 186, + "clientHeight": 186, + "box": { + "x": 67, + "y": 426.59375, + "width": 351, + "height": 186.59375, + "top": 426.59375, + "right": 418, + "bottom": 613.1875, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 192, + "clientHeight": 192, + "box": { + "x": 12, + "y": 644.1875, + "width": 421, + "height": 192, + "top": 644.1875, + "right": 433, + "bottom": 836.1875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 9640 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 55, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.png b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.png new file mode 100644 index 0000000..4a808aa Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-error-text-200-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.before.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.before.html new file mode 100644 index 0000000..dabf517 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.before.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.html b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.html new file mode 100644 index 0000000..dabf517 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.html @@ -0,0 +1,466 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.json new file mode 100644 index 0000000..44a0291 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2538, + "clientHeight": 2538, + "box": { + "x": 0, + "y": -1626, + "width": 390, + "height": 2537.640625, + "top": -1626, + "right": 390, + "bottom": 911.640625, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.640625, + "width": 296, + "height": 115, + "top": 629.640625, + "right": 363, + "bottom": 744.640625, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.640625, + "width": 366, + "height": 128, + "top": 775.640625, + "right": 378, + "bottom": 903.640625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1690 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.png b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.png new file mode 100644 index 0000000..a4def08 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/generated-stopped-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/intrinsic-width-diagnosis.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/intrinsic-width-diagnosis.json new file mode 100644 index 0000000..8daf7f0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/intrinsic-width-diagnosis.json @@ -0,0 +1,64 @@ +[ + { + "css": ".naMain { min-width:0 }", + "overflow": 55, + "boxes": [ + { + "class": "naThread", + "width": 445, + "right": 445 + }, + { + "class": "naViewport", + "width": 445, + "right": 445 + }, + { + "class": "naRecovery", + "width": 351, + "right": 418 + }, + { + "class": "naComposer", + "width": 385, + "right": 415 + }, + { + "class": "naComposerInput", + "width": 315, + "right": 359 + } + ] + }, + { + "css": ".naThread { min-width:0 }", + "overflow": 55, + "boxes": [ + { + "class": "naThread", + "width": 445, + "right": 445 + }, + { + "class": "naViewport", + "width": 445, + "right": 445 + }, + { + "class": "naRecovery", + "width": 351, + "right": 418 + }, + { + "class": "naComposer", + "width": 385, + "right": 415 + }, + { + "class": "naComposerInput", + "width": 315, + "right": 359 + } + ] + } +] \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/report.json b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/report.json new file mode 100644 index 0000000..b6eaee9 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-enlargement-diagnosis-02/report.json @@ -0,0 +1,829 @@ +{ + "namedProof": "NODEAGENT-RESPONSE-RECOVERY-01", + "startedAt": "2026-09-05T08:39:11.317Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "a0e40ef53b606e3249c46002cfaf04c6741859b07d808bad6474287e6a897f1b", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "e0adeb247191d8a894bf74989b714e7fdcfcf9c1f3d91e52b95db2ded5bcf341", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "ed2a8ff8e0c034d534b2d5b1ca941735c71c0e4c091af7a6e48a5200503e6ecd", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "passed": false, + "checks": [ + { + "name": "generated-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 390", + "passed": true + }, + { + "name": "generated stopped response remains stable 390", + "passed": true + }, + { + "name": "generated-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "generated partial failure names failed tool 390", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 390", + "passed": true + }, + { + "name": "generated-error-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 390", + "passed": true + }, + { + "name": "generated-error-again-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated enlarged Retry reachable from composer by keyboard 390", + "passed": true + }, + { + "name": "generated-error-text-200-390 exact DOM during settled screenshot", + "passed": true + } + ], + "cells": [ + { + "kind": "generated", + "width": 390, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 0, + "capturesStart": 0, + "stopInput": "keyboard", + "stopLatencyMs": 323, + "enlargement": { + "method": "Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.", + "elements": 115, + "documentOverflow": 55, + "changedBounds": [ + { + "class": "naRecovery", + "left": 67, + "right": 418, + "overflow": 0 + }, + { + "class": "naComposer", + "left": 30, + "right": 415, + "overflow": 0 + } + ] + } + } + ], + "captures": [ + { + "name": "generated-empty-390", + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-390", + "pngSha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2538, + "clientHeight": 2538, + "box": { + "x": 0, + "y": -1626, + "width": 390, + "height": 2537.640625, + "top": -1626, + "right": 390, + "bottom": 911.640625, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.640625, + "width": 296, + "height": 115, + "top": 629.640625, + "right": 363, + "bottom": 744.640625, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.640625, + "width": 366, + "height": 128, + "top": 775.640625, + "right": 378, + "bottom": 903.640625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1690 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-390", + "pngSha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-390", + "pngSha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-text-200-390", + "pngSha256": "7e90989a6ff042dd0a77b34d876c26b527d64a22ba077da19fb4acc00a55dc5b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 10420, + "clientHeight": 10420, + "box": { + "x": 0, + "y": -9576, + "width": 445, + "height": 10420.1875, + "top": -9576, + "right": 445, + "bottom": 844.1875, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 186, + "clientHeight": 186, + "box": { + "x": 67, + "y": 426.59375, + "width": 351, + "height": 186.59375, + "top": 426.59375, + "right": 418, + "bottom": 613.1875, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 192, + "clientHeight": 192, + "box": { + "x": 12, + "y": 644.1875, + "width": 421, + "height": 192, + "top": 644.1875, + "right": 433, + "bottom": 836.1875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 9640 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 55, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:51226", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/node_modules/.vite/deps/chunk-CYQPUWW3.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/node_modules/.vite/deps/chunk-D4K3B3B5.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:51226", + "path": "/node_modules/.vite/deps/chunk-WHVVH2LO.js", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "error": "Error: DIAGNOSTIC COMPLETE: no source mutation; see intrinsic-width-diagnosis.json\n at file:///C:/Users/hshum/.codex/worktrees/5dba/nodebench-ai/docs/plans/portfolio-recovery-20260904/E6e-nodeagent-current-consumer/diagnose-d3-enlargement-02.mjs:146:15", + "finishedAt": "2026-09-05T08:39:22.500Z" +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-03-build.stderr b/evidence/current-consumer-20260905/operator/d3-final-03-build.stderr new file mode 100644 index 0000000..7381710 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-03-build.stderr @@ -0,0 +1,5 @@ + +(!) Some chunks are larger than 500 kB after minification. Consider: +- Using dynamic import() to code-split the application +- Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/configuration-options/#output-manualchunks +- Adjust chunk size limit for this warning via build.chunkSizeWarningLimit. diff --git a/evidence/current-consumer-20260905/operator/d3-final-03-build.stdout b/evidence/current-consumer-20260905/operator/d3-final-03-build.stdout new file mode 100644 index 0000000..cf23125 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-03-build.stdout @@ -0,0 +1,13 @@ + +> nodeagent@0.1.0 build +> tsc --noEmit && vite build + +vite v6.4.3 building for production... +transforming... +✓ 777 modules transformed. +rendering chunks... +computing gzip size... +dist/index.html  1.37 kB │ gzip: 0.75 kB +dist/assets/index-5w5auUQQ.css  8.70 kB │ gzip: 2.58 kB +dist/assets/index-CRPo2Lof.js 662.21 kB │ gzip: 188.69 kB │ map: 2,794.43 kB +✓ built in 4.66s diff --git a/evidence/current-consumer-20260905/operator/d3-final-03-commands.json b/evidence/current-consumer-20260905/operator/d3-final-03-commands.json new file mode 100644 index 0000000..67b12a1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-03-commands.json @@ -0,0 +1,111 @@ +[ + { + "name": "d3-final-03-test", + "command": [ + "npm.cmd", + "run", + "test" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 1.6661198139190674 + }, + { + "name": "d3-final-03-build", + "command": [ + "npm.cmd", + "run", + "build" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 7.173559665679932 + }, + { + "name": "d3-final-03-tours-validate", + "command": [ + "npm.cmd", + "run", + "tours:validate" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 0.574967622756958 + }, + { + "name": "d3-pack-03", + "command": [ + "npm.cmd", + "pack", + "--json", + "--pack-destination", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery package 03" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 1.6015360355377197 + }, + { + "name": "d3-host-install-03", + "command": [ + "npm.cmd", + "install", + "--save-exact", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery package 03\\nodeagent-0.1.0.tgz" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery installed host 03", + "exit": 0, + "seconds": 15.924721717834473 + }, + { + "name": "d3-installed-doctor-03", + "command": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery installed host 03\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "doctor" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery installed host 03", + "exit": 0, + "seconds": 0.9779763221740723 + }, + { + "name": "d3-installed-scaffold-03", + "command": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery installed host 03\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "apps", + "scaffold", + "chat-ui", + "--dir", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app 03", + "--auto" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery installed host 03", + "exit": 0, + "seconds": 27.608190059661865 + }, + { + "name": "d3-final-browser-03", + "command": [ + "node", + "e2e/current-consumer-recovery-proof.mjs", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app 03", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 238.00431203842163 + }, + { + "name": "d3-unchanged-baseline-replay", + "command": [ + "node", + "e2e/current-consumer-proof.mjs", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app 03", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 38.92998027801514 + } +] \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-03-test.stderr b/evidence/current-consumer-20260905/operator/d3-final-03-test.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-final-03-test.stdout b/evidence/current-consumer-20260905/operator/d3-final-03-test.stdout new file mode 100644 index 0000000..696e8d7 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-03-test.stdout @@ -0,0 +1,20 @@ + +> nodeagent@0.1.0 test +> vitest run + + + RUN  v2.1.9 D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905 + + ✓ tests/omnigentAdapter.test.ts (2 tests) 4ms + ✓ tests/spreadsheetDelta.test.ts (13 tests) 9ms + ✓ tests/searchSynthesize.test.ts (10 tests) 6ms + ✓ tests/reasoningFrameRunner.test.ts (2 tests) 6ms + ✓ tests/nodeAgentRuntime.test.ts (8 tests) 5ms + ✓ tests/durableRuntime.test.ts (4 tests) 7ms + ✓ tests/sqliteDurableRuntime.test.ts (2 tests) 91ms + + Test Files  7 passed (7) + Tests  41 passed (41) + Start at  01:52:05 + Duration  851ms (transform 342ms, setup 0ms, collect 955ms, tests 129ms, environment 1ms, prepare 611ms) + diff --git a/evidence/current-consumer-20260905/operator/d3-final-03-tours-validate.stderr b/evidence/current-consumer-20260905/operator/d3-final-03-tours-validate.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-final-03-tours-validate.stdout b/evidence/current-consumer-20260905/operator/d3-final-03-tours-validate.stdout new file mode 100644 index 0000000..141564f --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-03-tours-validate.stdout @@ -0,0 +1,5 @@ + +> nodeagent@0.1.0 tours:validate +> node scripts/validate-tours.mjs + +tours validate: PASS 3 tours, 36 steps, 11 START_HERE citations — every anchor still lives on the line that cites it diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-01.command.json b/evidence/current-consumer-20260905/operator/d3-final-browser-01.command.json new file mode 100644 index 0000000..65ef4ce --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-01.command.json @@ -0,0 +1,10 @@ +{ + "command": [ + "node", + "e2e/current-consumer-recovery-proof.mjs", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01" + ], + "exit": 1, + "seconds": 41.3019905090332 +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-01.stderr b/evidence/current-consumer-20260905/operator/d3-final-browser-01.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-01.stdout b/evidence/current-consumer-20260905/operator/d3-final-browser-01.stdout new file mode 100644 index 0000000..1e039fc --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-01.stdout @@ -0,0 +1 @@ +{"output":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-01","passed":false,"checks":38,"captures":11,"error":"AssertionError [ERR_ASSERTION]: generated enlarged recovery and composer fit 390\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:127:9"} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-02.command.json b/evidence/current-consumer-20260905/operator/d3-final-browser-02.command.json new file mode 100644 index 0000000..3297eaf --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-02.command.json @@ -0,0 +1,10 @@ +{ + "command": [ + "node", + "e2e/current-consumer-recovery-proof.mjs", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app 02", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02" + ], + "exit": 1, + "seconds": 139.8300929069519 +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-02.stderr b/evidence/current-consumer-20260905/operator/d3-final-browser-02.stderr new file mode 100644 index 0000000..1b47e45 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-02.stderr @@ -0,0 +1,5 @@ +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/react.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/index.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/NodeGraph.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/session.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/graph-model.js" points to missing source files diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-02.stdout b/evidence/current-consumer-20260905/operator/d3-final-browser-02.stdout new file mode 100644 index 0000000..6c39a56 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-02.stdout @@ -0,0 +1 @@ +{"output":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-02","passed":false,"checks":176,"captures":49,"error":"AssertionError [ERR_ASSERTION]: source enlarged Retry paints visibly without overlay obstruction 390\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:128:9"} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03.stderr b/evidence/current-consumer-20260905/operator/d3-final-browser-03.stderr new file mode 100644 index 0000000..1b47e45 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03.stderr @@ -0,0 +1,5 @@ +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/react.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/index.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/NodeGraph.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/session.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/graph-model.js" points to missing source files diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03.stdout b/evidence/current-consumer-20260905/operator/d3-final-browser-03.stdout new file mode 100644 index 0000000..563992d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03.stdout @@ -0,0 +1 @@ +{"output":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-final-browser-03","passed":true,"checks":289,"captures":76} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.before.html new file mode 100644 index 0000000..34d9f8d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.html new file mode 100644 index 0000000..34d9f8d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.json new file mode 100644 index 0000000..5c36ef5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.json @@ -0,0 +1,56 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 29134, + "clientHeight": 29134, + "box": { + "x": 0, + "y": -28290, + "width": 390, + "height": 29133.890625, + "top": -28290, + "right": 390, + "bottom": 843.890625, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 707.890625, + "width": 366, + "height": 128, + "top": 707.890625, + "right": 378, + "bottom": 835.890625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 28354 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.png new file mode 100644 index 0000000..fa7f463 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-accumulated-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.before.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.json new file mode 100644 index 0000000..8137c24 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 52, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 972, + "bottom": 960, + "left": 52 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 954, + "bottom": 952, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.png new file mode 100644 index 0000000..3ad4c4f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.before.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.json new file mode 100644 index 0000000..c858f36 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 260, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1180, + "bottom": 960, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1162, + "bottom": 952, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.png new file mode 100644 index 0000000..ec06403 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.before.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.json new file mode 100644 index 0000000..8be6ca2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 500, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1420, + "bottom": 960, + "left": 500 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1402, + "bottom": 952, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.png new file mode 100644 index 0000000..678f31a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.before.html new file mode 100644 index 0000000..a3dd3db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.html new file mode 100644 index 0000000..a3dd3db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.json new file mode 100644 index 0000000..50a56bd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 320, + "height": 780, + "top": 64, + "right": 320, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 296, + "height": 128, + "top": 708, + "right": 308, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.png new file mode 100644 index 0000000..5ec89ef Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.before.html new file mode 100644 index 0000000..b885889 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.html new file mode 100644 index 0000000..b885889 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.json new file mode 100644 index 0000000..8ca4c58 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.png new file mode 100644 index 0000000..3c0088c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.before.html new file mode 100644 index 0000000..6c93632 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.html new file mode 100644 index 0000000..6c93632 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.json new file mode 100644 index 0000000..ed06199 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 0, + "y": 64, + "width": 768, + "height": 896, + "top": 64, + "right": 768, + "bottom": 960, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840, + "width": 732, + "height": 112, + "top": 840, + "right": 750, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.png new file mode 100644 index 0000000..e3b655b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-empty-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.before.html new file mode 100644 index 0000000..b9082e6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.html new file mode 100644 index 0000000..b9082e6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.json new file mode 100644 index 0000000..89fd048 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 52, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 972, + "bottom": 959.515625, + "left": 52 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 125, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 855, + "bottom": 808.515625, + "left": 125 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 954, + "bottom": 951.515625, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.png new file mode 100644 index 0000000..c553cb8 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.before.html new file mode 100644 index 0000000..82b53dd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.html new file mode 100644 index 0000000..82b53dd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.json new file mode 100644 index 0000000..595ee33 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 260, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1180, + "bottom": 959.515625, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1063, + "bottom": 808.515625, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1162, + "bottom": 951.515625, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.png new file mode 100644 index 0000000..5d59c35 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.before.html new file mode 100644 index 0000000..74609cd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.html new file mode 100644 index 0000000..74609cd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.json new file mode 100644 index 0000000..e0930d1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 500, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1420, + "bottom": 959.515625, + "left": 500 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 573, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1303, + "bottom": 808.515625, + "left": 573 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1402, + "bottom": 951.515625, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.png new file mode 100644 index 0000000..0c20679 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.before.html new file mode 100644 index 0000000..d7a2348 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.html new file mode 100644 index 0000000..d7a2348 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.json new file mode 100644 index 0000000..40896fa --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 5436, + "clientHeight": 5436, + "box": { + "x": 0, + "y": -4592, + "width": 320, + "height": 5436.09375, + "top": -4592, + "right": 320, + "bottom": 844.09375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.09375, + "width": 226, + "height": 115, + "top": 562.09375, + "right": 293, + "bottom": 677.09375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.09375, + "width": 296, + "height": 128, + "top": 708.09375, + "right": 308, + "bottom": 836.09375, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4656 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.png new file mode 100644 index 0000000..edb6917 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.before.html new file mode 100644 index 0000000..2c180c0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.html new file mode 100644 index 0000000..2c180c0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.json new file mode 100644 index 0000000..61fd78b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.png new file mode 100644 index 0000000..812bf3a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.before.html new file mode 100644 index 0000000..f7bbe35 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.html new file mode 100644 index 0000000..f7bbe35 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.json new file mode 100644 index 0000000..a567a91 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3186, + "clientHeight": 3186, + "box": { + "x": 0, + "y": -2226, + "width": 768, + "height": 3186.109375, + "top": -2226, + "right": 768, + "bottom": 960.109375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 73, + "y": 718.109375, + "width": 614.15625, + "height": 91, + "top": 718.109375, + "right": 687.15625, + "bottom": 809.109375, + "left": 73 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840.109375, + "width": 732, + "height": 112, + "top": 840.109375, + "right": 750, + "bottom": 952.109375, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2290 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.png new file mode 100644 index 0000000..7193f6e Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.before.html new file mode 100644 index 0000000..01756b5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.html new file mode 100644 index 0000000..01756b5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.json new file mode 100644 index 0000000..89fd048 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 52, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 972, + "bottom": 959.515625, + "left": 52 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 125, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 855, + "bottom": 808.515625, + "left": 125 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 954, + "bottom": 951.515625, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.png new file mode 100644 index 0000000..c4c84d1 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.before.html new file mode 100644 index 0000000..77ae1d1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.html new file mode 100644 index 0000000..77ae1d1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.json new file mode 100644 index 0000000..78ce122 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 260, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1180, + "bottom": 959.515625, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1063, + "bottom": 808.515625, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1162, + "bottom": 951.515625, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.png new file mode 100644 index 0000000..de356ba Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.before.html new file mode 100644 index 0000000..38f7c88 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.html new file mode 100644 index 0000000..38f7c88 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.json new file mode 100644 index 0000000..e0930d1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 500, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1420, + "bottom": 959.515625, + "left": 500 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 573, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1303, + "bottom": 808.515625, + "left": 573 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1402, + "bottom": 951.515625, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.png new file mode 100644 index 0000000..5e140fa Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.before.html new file mode 100644 index 0000000..41cf56f --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.html new file mode 100644 index 0000000..41cf56f --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.json new file mode 100644 index 0000000..b3f7451 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 5436, + "clientHeight": 5436, + "box": { + "x": 0, + "y": -4592, + "width": 320, + "height": 5436.09375, + "top": -4592, + "right": 320, + "bottom": 844.09375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.09375, + "width": 226, + "height": 115, + "top": 562.09375, + "right": 293, + "bottom": 677.09375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.09375, + "width": 296, + "height": 128, + "top": 708.09375, + "right": 308, + "bottom": 836.09375, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4656 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.png new file mode 100644 index 0000000..c33ee5b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.before.html new file mode 100644 index 0000000..aad040b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.html new file mode 100644 index 0000000..aad040b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.json new file mode 100644 index 0000000..61fd78b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.png new file mode 100644 index 0000000..81b515f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.before.html new file mode 100644 index 0000000..bb9223b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.html new file mode 100644 index 0000000..bb9223b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.json new file mode 100644 index 0000000..1c7d12a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3186, + "clientHeight": 3186, + "box": { + "x": 0, + "y": -2226, + "width": 768, + "height": 3186.109375, + "top": -2226, + "right": 768, + "bottom": 960.109375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 73, + "y": 718.109375, + "width": 614.15625, + "height": 91, + "top": 718.109375, + "right": 687.15625, + "bottom": 809.109375, + "left": 73 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840.109375, + "width": 732, + "height": 112, + "top": 840.109375, + "right": 750, + "bottom": 952.109375, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2290 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.png new file mode 100644 index 0000000..add937d Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-again-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.before.html new file mode 100644 index 0000000..f518204 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.html new file mode 100644 index 0000000..f518204 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.json new file mode 100644 index 0000000..896bf93 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 11658, + "clientHeight": 11658, + "box": { + "x": 0, + "y": -10814, + "width": 390, + "height": 11658.4375, + "top": -10814, + "right": 390, + "bottom": 844.4375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 234, + "clientHeight": 234, + "box": { + "x": 67, + "y": 378.84375, + "width": 296, + "height": 234.59375, + "top": 378.84375, + "right": 363, + "bottom": 613.4375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 192, + "clientHeight": 192, + "box": { + "x": 12, + "y": 644.4375, + "width": 366, + "height": 192, + "top": 644.4375, + "right": 378, + "bottom": 836.4375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 10878 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.png new file mode 100644 index 0000000..806ad4d Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-error-text-200-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.before.html new file mode 100644 index 0000000..0fe4f58 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.html new file mode 100644 index 0000000..0fe4f58 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.json new file mode 100644 index 0000000..1d31c7b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.json @@ -0,0 +1,56 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3844, + "clientHeight": 3844, + "box": { + "x": 52, + "y": -2884, + "width": 920, + "height": 3843.859375, + "top": -2884, + "right": 972, + "bottom": 959.859375, + "left": 52 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 839.859375, + "width": 884, + "height": 112, + "top": 839.859375, + "right": 954, + "bottom": 951.859375, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2948 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.png new file mode 100644 index 0000000..560c063 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.before.html new file mode 100644 index 0000000..9d3f4c1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.html new file mode 100644 index 0000000..9d3f4c1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.json new file mode 100644 index 0000000..ae74cfb --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.json @@ -0,0 +1,56 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3844, + "clientHeight": 3844, + "box": { + "x": 260, + "y": -2884, + "width": 920, + "height": 3843.859375, + "top": -2884, + "right": 1180, + "bottom": 959.859375, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.859375, + "width": 884, + "height": 112, + "top": 839.859375, + "right": 1162, + "bottom": 951.859375, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2948 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.png new file mode 100644 index 0000000..be02aad Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.before.html new file mode 100644 index 0000000..20c87f0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.html new file mode 100644 index 0000000..20c87f0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.json new file mode 100644 index 0000000..04c9ac6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.json @@ -0,0 +1,56 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3844, + "clientHeight": 3844, + "box": { + "x": 500, + "y": -2884, + "width": 920, + "height": 3843.859375, + "top": -2884, + "right": 1420, + "bottom": 959.859375, + "left": 500 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 839.859375, + "width": 884, + "height": 112, + "top": 839.859375, + "right": 1402, + "bottom": 951.859375, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2948 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.png new file mode 100644 index 0000000..437f84c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.before.html new file mode 100644 index 0000000..bc87c62 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.html new file mode 100644 index 0000000..bc87c62 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.json new file mode 100644 index 0000000..3d7062e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.json @@ -0,0 +1,56 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 6737, + "clientHeight": 6737, + "box": { + "x": 0, + "y": -5893, + "width": 320, + "height": 6737.296875, + "top": -5893, + "right": 320, + "bottom": 844.296875, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.296875, + "width": 296, + "height": 128, + "top": 708.296875, + "right": 308, + "bottom": 836.296875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 5957 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.png new file mode 100644 index 0000000..c646fd6 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.before.html new file mode 100644 index 0000000..9fac29c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.html new file mode 100644 index 0000000..9fac29c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.json new file mode 100644 index 0000000..1c92a18 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.json @@ -0,0 +1,56 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 5952, + "clientHeight": 5952, + "box": { + "x": 0, + "y": -5108, + "width": 390, + "height": 5951.578125, + "top": -5108, + "right": 390, + "bottom": 843.578125, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 707.578125, + "width": 366, + "height": 128, + "top": 707.578125, + "right": 378, + "bottom": 835.578125, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 5172 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.png new file mode 100644 index 0000000..79a24c1 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.before.html new file mode 100644 index 0000000..f5b4ce9 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.html new file mode 100644 index 0000000..f5b4ce9 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.json new file mode 100644 index 0000000..60a6954 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.json @@ -0,0 +1,56 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3918, + "clientHeight": 3918, + "box": { + "x": 0, + "y": -2958, + "width": 768, + "height": 3918.25, + "top": -2958, + "right": 768, + "bottom": 960.25, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840.25, + "width": 732, + "height": 112, + "top": 840.25, + "right": 750, + "bottom": 952.25, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 3022 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.png new file mode 100644 index 0000000..e090620 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-recovered-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.before.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.json new file mode 100644 index 0000000..8137c24 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 52, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 972, + "bottom": 960, + "left": 52 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 954, + "bottom": 952, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.png new file mode 100644 index 0000000..3ad4c4f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.before.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.json new file mode 100644 index 0000000..c858f36 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 260, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1180, + "bottom": 960, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1162, + "bottom": 952, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.png new file mode 100644 index 0000000..ec06403 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.before.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.json new file mode 100644 index 0000000..8be6ca2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 500, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1420, + "bottom": 960, + "left": 500 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1402, + "bottom": 952, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.png new file mode 100644 index 0000000..678f31a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.before.html new file mode 100644 index 0000000..a3dd3db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.html new file mode 100644 index 0000000..a3dd3db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.json new file mode 100644 index 0000000..50a56bd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 320, + "height": 780, + "top": 64, + "right": 320, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 296, + "height": 128, + "top": 708, + "right": 308, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.png new file mode 100644 index 0000000..5ec89ef Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.before.html new file mode 100644 index 0000000..b885889 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.html new file mode 100644 index 0000000..b885889 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.json new file mode 100644 index 0000000..8ca4c58 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.png new file mode 100644 index 0000000..3c0088c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.before.html new file mode 100644 index 0000000..6c93632 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.html new file mode 100644 index 0000000..6c93632 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.json new file mode 100644 index 0000000..ed06199 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 0, + "y": 64, + "width": 768, + "height": 896, + "top": 64, + "right": 768, + "bottom": 960, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840, + "width": 732, + "height": 112, + "top": 840, + "right": 750, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.png new file mode 100644 index 0000000..e3b655b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-reloaded-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.before.html new file mode 100644 index 0000000..0d07618 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.html new file mode 100644 index 0000000..0d07618 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.json new file mode 100644 index 0000000..e9ba372 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1731, + "clientHeight": 1731, + "box": { + "x": 52, + "y": -723, + "width": 920, + "height": 1731.34375, + "top": -723, + "right": 972, + "bottom": 1008.34375, + "left": 52 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 125, + "y": 766.34375, + "width": 730, + "height": 91, + "top": 766.34375, + "right": 855, + "bottom": 857.34375, + "left": 125 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 888.34375, + "width": 884, + "height": 112, + "top": 888.34375, + "right": 954, + "bottom": 1000.34375, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 787 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.png new file mode 100644 index 0000000..9956f30 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.before.html new file mode 100644 index 0000000..3651e06 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.html new file mode 100644 index 0000000..3651e06 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.json new file mode 100644 index 0000000..b5f4a7d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1731, + "clientHeight": 1731, + "box": { + "x": 260, + "y": -723, + "width": 920, + "height": 1731.34375, + "top": -723, + "right": 1180, + "bottom": 1008.34375, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 766.34375, + "width": 730, + "height": 91, + "top": 766.34375, + "right": 1063, + "bottom": 857.34375, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 888.34375, + "width": 884, + "height": 112, + "top": 888.34375, + "right": 1162, + "bottom": 1000.34375, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 787 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.png new file mode 100644 index 0000000..ffd123e Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.before.html new file mode 100644 index 0000000..d9c1f2a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.html new file mode 100644 index 0000000..d9c1f2a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.json new file mode 100644 index 0000000..c77b430 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1731, + "clientHeight": 1731, + "box": { + "x": 500, + "y": -723, + "width": 920, + "height": 1731.34375, + "top": -723, + "right": 1420, + "bottom": 1008.34375, + "left": 500 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 573, + "y": 766.34375, + "width": 730, + "height": 91, + "top": 766.34375, + "right": 1303, + "bottom": 857.34375, + "left": 573 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 888.34375, + "width": 884, + "height": 112, + "top": 888.34375, + "right": 1402, + "bottom": 1000.34375, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 787 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.png new file mode 100644 index 0000000..1be560a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.before.html new file mode 100644 index 0000000..c658d6d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.html new file mode 100644 index 0000000..c658d6d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.json new file mode 100644 index 0000000..1f1e87d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2800, + "clientHeight": 2800, + "box": { + "x": 0, + "y": -1888, + "width": 320, + "height": 2799.546875, + "top": -1888, + "right": 320, + "bottom": 911.546875, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.546875, + "width": 226, + "height": 115, + "top": 629.546875, + "right": 293, + "bottom": 744.546875, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.546875, + "width": 296, + "height": 128, + "top": 775.546875, + "right": 308, + "bottom": 903.546875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1952 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.png new file mode 100644 index 0000000..764f4c9 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.before.html new file mode 100644 index 0000000..fc16847 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.html new file mode 100644 index 0000000..fc16847 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.json new file mode 100644 index 0000000..44a0291 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2538, + "clientHeight": 2538, + "box": { + "x": 0, + "y": -1626, + "width": 390, + "height": 2537.640625, + "top": -1626, + "right": 390, + "bottom": 911.640625, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.640625, + "width": 296, + "height": 115, + "top": 629.640625, + "right": 363, + "bottom": 744.640625, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.640625, + "width": 366, + "height": 128, + "top": 775.640625, + "right": 378, + "bottom": 903.640625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1690 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.png new file mode 100644 index 0000000..a4def08 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.before.html new file mode 100644 index 0000000..6b2ccb2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.html new file mode 100644 index 0000000..6b2ccb2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.json new file mode 100644 index 0000000..0b4615a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.json @@ -0,0 +1,76 @@ +{ + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1756, + "clientHeight": 1756, + "box": { + "x": 0, + "y": -748, + "width": 768, + "height": 1756.140625, + "top": -748, + "right": 768, + "bottom": 1008.140625, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 73, + "y": 766.140625, + "width": 614.15625, + "height": 91, + "top": 766.140625, + "right": 687.15625, + "bottom": 857.140625, + "left": 73 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 888.140625, + "width": 732, + "height": 112, + "top": 888.140625, + "right": 750, + "bottom": 1000.140625, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 812 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.png new file mode 100644 index 0000000..61c0abc Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/generated-stopped-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/report.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/report.json new file mode 100644 index 0000000..a90e345 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/report.json @@ -0,0 +1,11617 @@ +{ + "namedProof": "NODEAGENT-RESPONSE-RECOVERY-01", + "startedAt": "2026-09-05T08:53:04.307Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "passed": true, + "checks": [ + { + "name": "generated-empty-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 320", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 320", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 320", + "passed": true + }, + { + "name": "generated stopped response remains stable 320", + "passed": true + }, + { + "name": "generated-stopped-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 320", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 320", + "passed": true + }, + { + "name": "generated partial failure names failed tool 320", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 320", + "passed": true + }, + { + "name": "generated-error-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated pointer Retry stays in place before activation fail-again 320", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 320", + "passed": true + }, + { + "name": "generated-error-again-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated pointer Retry stays in place before activation recover 320", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 320", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 320", + "passed": true + }, + { + "name": "generated retries retain the same user parent 320", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 320", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 320", + "passed": true + }, + { + "name": "generated-recovered-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 320", + "passed": true + }, + { + "name": "generated-reloaded-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 320", + "passed": true + }, + { + "name": "generated-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 390", + "passed": true + }, + { + "name": "generated stopped response remains stable 390", + "passed": true + }, + { + "name": "generated-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "generated partial failure names failed tool 390", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 390", + "passed": true + }, + { + "name": "generated-error-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 390", + "passed": true + }, + { + "name": "generated-error-again-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated enlarged Retry reachable from composer by keyboard 390", + "passed": true + }, + { + "name": "generated-error-text-200-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated enlarged recovery and composer fit 390", + "passed": true + }, + { + "name": "generated enlarged Retry paints visibly without overlay obstruction 390", + "passed": true + }, + { + "name": "generated enlarged failure explanation remains visible with Retry 390", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 390", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 390", + "passed": true + }, + { + "name": "generated retries retain the same user parent 390", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 390", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 390", + "passed": true + }, + { + "name": "generated-recovered-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated-accumulated-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 390", + "passed": true + }, + { + "name": "generated-reloaded-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 390", + "passed": true + }, + { + "name": "generated-empty-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 768", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 768", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 768", + "passed": true + }, + { + "name": "generated stopped response remains stable 768", + "passed": true + }, + { + "name": "generated-stopped-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 768", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 768", + "passed": true + }, + { + "name": "generated partial failure names failed tool 768", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 768", + "passed": true + }, + { + "name": "generated-error-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated pointer Retry stays in place before activation fail-again 768", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 768", + "passed": true + }, + { + "name": "generated-error-again-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated pointer Retry stays in place before activation recover 768", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 768", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 768", + "passed": true + }, + { + "name": "generated retries retain the same user parent 768", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 768", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 768", + "passed": true + }, + { + "name": "generated-recovered-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 768", + "passed": true + }, + { + "name": "generated-reloaded-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 768", + "passed": true + }, + { + "name": "generated-empty-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 1024", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 1024", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 1024", + "passed": true + }, + { + "name": "generated stopped response remains stable 1024", + "passed": true + }, + { + "name": "generated-stopped-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 1024", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 1024", + "passed": true + }, + { + "name": "generated partial failure names failed tool 1024", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 1024", + "passed": true + }, + { + "name": "generated-error-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 1024", + "passed": true + }, + { + "name": "generated-error-again-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 1024", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 1024", + "passed": true + }, + { + "name": "generated retries retain the same user parent 1024", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 1024", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 1024", + "passed": true + }, + { + "name": "generated-recovered-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 1024", + "passed": true + }, + { + "name": "generated-reloaded-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 1024", + "passed": true + }, + { + "name": "generated-empty-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 1440", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 1440", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 1440", + "passed": true + }, + { + "name": "generated stopped response remains stable 1440", + "passed": true + }, + { + "name": "generated-stopped-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 1440", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 1440", + "passed": true + }, + { + "name": "generated partial failure names failed tool 1440", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 1440", + "passed": true + }, + { + "name": "generated-error-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated pointer Retry stays in place before activation fail-again 1440", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 1440", + "passed": true + }, + { + "name": "generated-error-again-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated pointer Retry stays in place before activation recover 1440", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 1440", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 1440", + "passed": true + }, + { + "name": "generated retries retain the same user parent 1440", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 1440", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 1440", + "passed": true + }, + { + "name": "generated-recovered-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 1440", + "passed": true + }, + { + "name": "generated-reloaded-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 1440", + "passed": true + }, + { + "name": "generated-empty-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated native incomplete tool shows stopped 1920", + "passed": true + }, + { + "name": "generated Stop preserves earlier completed response 1920", + "passed": true + }, + { + "name": "generated stopped response has no fake Done 1920", + "passed": true + }, + { + "name": "generated stopped response remains stable 1920", + "passed": true + }, + { + "name": "generated-stopped-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated Stop retains keyboard continuation focus 1920", + "passed": true + }, + { + "name": "generated stopped Retry replaces only current response 1920", + "passed": true + }, + { + "name": "generated partial failure names failed tool 1920", + "passed": true + }, + { + "name": "generated failed response does not retry automatically 1920", + "passed": true + }, + { + "name": "generated-error-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated first explicit Retry fails once with no automatic or duplicate retry 1920", + "passed": true + }, + { + "name": "generated-error-again-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated second explicit Retry recovers once despite repeated activation 1920", + "passed": true + }, + { + "name": "generated SDK creates a fresh response identity for both retries 1920", + "passed": true + }, + { + "name": "generated retries retain the same user parent 1920", + "passed": true + }, + { + "name": "generated recovery retains earlier evidence 1920", + "passed": true + }, + { + "name": "generated recovered response removes failure notice 1920", + "passed": true + }, + { + "name": "generated-recovered-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated reload resets browser session honestly 1920", + "passed": true + }, + { + "name": "generated-reloaded-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "generated only the intentional adapter fault reaches page errors 1920", + "passed": true + }, + { + "name": "source-empty-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 320", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 320", + "passed": true + }, + { + "name": "source stopped response has no fake Done 320", + "passed": true + }, + { + "name": "source stopped response remains stable 320", + "passed": true + }, + { + "name": "source-stopped-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 320", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 320", + "passed": true + }, + { + "name": "source partial failure names failed tool 320", + "passed": true + }, + { + "name": "source failed response does not retry automatically 320", + "passed": true + }, + { + "name": "source-error-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source pointer Retry stays in place before activation fail-again 320", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 320", + "passed": true + }, + { + "name": "source-error-again-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source pointer Retry stays in place before activation recover 320", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 320", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 320", + "passed": true + }, + { + "name": "source retries retain the same user parent 320", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 320", + "passed": true + }, + { + "name": "source recovered response removes failure notice 320", + "passed": true + }, + { + "name": "source-recovered-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 320", + "passed": true + }, + { + "name": "source-reloaded-320 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 320", + "passed": true + }, + { + "name": "source-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "source stopped response has no fake Done 390", + "passed": true + }, + { + "name": "source stopped response remains stable 390", + "passed": true + }, + { + "name": "source-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "source partial failure names failed tool 390", + "passed": true + }, + { + "name": "source failed response does not retry automatically 390", + "passed": true + }, + { + "name": "source-error-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 390", + "passed": true + }, + { + "name": "source-error-again-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source enlarged Retry reachable from composer by keyboard 390", + "passed": true + }, + { + "name": "source-error-text-200-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source enlarged recovery and composer fit 390", + "passed": true + }, + { + "name": "source enlarged Retry paints visibly without overlay obstruction 390", + "passed": true + }, + { + "name": "source enlarged failure explanation remains visible with Retry 390", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 390", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 390", + "passed": true + }, + { + "name": "source retries retain the same user parent 390", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 390", + "passed": true + }, + { + "name": "source recovered response removes failure notice 390", + "passed": true + }, + { + "name": "source-recovered-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source-accumulated-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 390", + "passed": true + }, + { + "name": "source-reloaded-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 390", + "passed": true + }, + { + "name": "source-empty-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 768", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 768", + "passed": true + }, + { + "name": "source stopped response has no fake Done 768", + "passed": true + }, + { + "name": "source stopped response remains stable 768", + "passed": true + }, + { + "name": "source-stopped-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 768", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 768", + "passed": true + }, + { + "name": "source partial failure names failed tool 768", + "passed": true + }, + { + "name": "source failed response does not retry automatically 768", + "passed": true + }, + { + "name": "source-error-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source pointer Retry stays in place before activation fail-again 768", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 768", + "passed": true + }, + { + "name": "source-error-again-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source pointer Retry stays in place before activation recover 768", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 768", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 768", + "passed": true + }, + { + "name": "source retries retain the same user parent 768", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 768", + "passed": true + }, + { + "name": "source recovered response removes failure notice 768", + "passed": true + }, + { + "name": "source-recovered-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 768", + "passed": true + }, + { + "name": "source-reloaded-768 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 768", + "passed": true + }, + { + "name": "source-empty-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 1024", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 1024", + "passed": true + }, + { + "name": "source stopped response has no fake Done 1024", + "passed": true + }, + { + "name": "source stopped response remains stable 1024", + "passed": true + }, + { + "name": "source-stopped-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 1024", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 1024", + "passed": true + }, + { + "name": "source partial failure names failed tool 1024", + "passed": true + }, + { + "name": "source failed response does not retry automatically 1024", + "passed": true + }, + { + "name": "source-error-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 1024", + "passed": true + }, + { + "name": "source-error-again-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 1024", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 1024", + "passed": true + }, + { + "name": "source retries retain the same user parent 1024", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 1024", + "passed": true + }, + { + "name": "source recovered response removes failure notice 1024", + "passed": true + }, + { + "name": "source-recovered-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 1024", + "passed": true + }, + { + "name": "source-reloaded-1024 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 1024", + "passed": true + }, + { + "name": "source-empty-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 1440", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 1440", + "passed": true + }, + { + "name": "source stopped response has no fake Done 1440", + "passed": true + }, + { + "name": "source stopped response remains stable 1440", + "passed": true + }, + { + "name": "source-stopped-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 1440", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 1440", + "passed": true + }, + { + "name": "source partial failure names failed tool 1440", + "passed": true + }, + { + "name": "source failed response does not retry automatically 1440", + "passed": true + }, + { + "name": "source-error-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source pointer Retry stays in place before activation fail-again 1440", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 1440", + "passed": true + }, + { + "name": "source-error-again-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source pointer Retry stays in place before activation recover 1440", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 1440", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 1440", + "passed": true + }, + { + "name": "source retries retain the same user parent 1440", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 1440", + "passed": true + }, + { + "name": "source recovered response removes failure notice 1440", + "passed": true + }, + { + "name": "source-recovered-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 1440", + "passed": true + }, + { + "name": "source-reloaded-1440 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 1440", + "passed": true + }, + { + "name": "source-empty-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 1920", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 1920", + "passed": true + }, + { + "name": "source stopped response has no fake Done 1920", + "passed": true + }, + { + "name": "source stopped response remains stable 1920", + "passed": true + }, + { + "name": "source-stopped-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 1920", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 1920", + "passed": true + }, + { + "name": "source partial failure names failed tool 1920", + "passed": true + }, + { + "name": "source failed response does not retry automatically 1920", + "passed": true + }, + { + "name": "source-error-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 1920", + "passed": true + }, + { + "name": "source-error-again-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source second explicit Retry recovers once despite repeated activation 1920", + "passed": true + }, + { + "name": "source SDK creates a fresh response identity for both retries 1920", + "passed": true + }, + { + "name": "source retries retain the same user parent 1920", + "passed": true + }, + { + "name": "source recovery retains earlier evidence 1920", + "passed": true + }, + { + "name": "source recovered response removes failure notice 1920", + "passed": true + }, + { + "name": "source-recovered-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source reload resets browser session honestly 1920", + "passed": true + }, + { + "name": "source-reloaded-1920 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source only the intentional adapter fault reaches page errors 1920", + "passed": true + }, + { + "name": "no browser writes or provider requests", + "passed": true + } + ], + "cells": [ + { + "kind": "generated", + "width": 320, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 0, + "capturesStart": 0, + "stopInput": "pointer", + "stopLatencyMs": 342, + "pointerActivations": [ + { + "phase": "fail-again", + "down": { + "x": 67, + "y": 633.09375, + "width": 130.296875, + "height": 44 + }, + "up": { + "x": 67, + "y": 633.09375, + "width": 130.296875, + "height": 44 + } + }, + { + "phase": "recover", + "down": { + "x": 67, + "y": 633.09375, + "width": 130.296875, + "height": 44 + }, + "up": { + "x": 67, + "y": 633.09375, + "width": 130.296875, + "height": 44 + } + } + ], + "attempts": [ + { + "id": "7Qn7XcG", + "parentId": "PMmbKj1", + "injectedFailure": true + }, + { + "id": "Y20PcDc", + "parentId": "PMmbKj1", + "injectedFailure": true + }, + { + "id": "cc3gM5Y", + "parentId": "PMmbKj1", + "injectedFailure": false + } + ], + "checksEnd": 24, + "capturesEnd": 6 + }, + { + "kind": "generated", + "width": 390, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 24, + "capturesStart": 6, + "stopInput": "keyboard", + "stopLatencyMs": 308, + "enlargement": { + "method": "Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.", + "elements": 115, + "documentOverflow": 0, + "changedBounds": [ + { + "class": "naRecovery", + "left": 67, + "right": 363, + "overflow": 0 + }, + { + "class": "naComposer", + "left": 30, + "right": 360, + "overflow": 0 + } + ] + }, + "attempts": [ + { + "id": "l8T7vxX", + "parentId": "jUxzOUN", + "injectedFailure": true + }, + { + "id": "3LNKB9g", + "parentId": "jUxzOUN", + "injectedFailure": true + }, + { + "id": "NEI0Z0W", + "parentId": "jUxzOUN", + "injectedFailure": false + } + ], + "accumulation": { + "additionalTurns": 12, + "totalResponses": 15, + "toolCards": 60, + "elapsedMs": 21182 + }, + "checksEnd": 52, + "capturesEnd": 14 + }, + { + "kind": "generated", + "width": 768, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 52, + "capturesStart": 14, + "stopInput": "pointer", + "stopLatencyMs": 342, + "pointerActivations": [ + { + "phase": "fail-again", + "down": { + "x": 73, + "y": 765.109375, + "width": 130.296875, + "height": 44 + }, + "up": { + "x": 73, + "y": 765.109375, + "width": 130.296875, + "height": 44 + } + }, + { + "phase": "recover", + "down": { + "x": 73, + "y": 765.109375, + "width": 130.296875, + "height": 44 + }, + "up": { + "x": 73, + "y": 765.109375, + "width": 130.296875, + "height": 44 + } + } + ], + "attempts": [ + { + "id": "SgF2dj2", + "parentId": "W5niwSb", + "injectedFailure": true + }, + { + "id": "YTxFk5K", + "parentId": "W5niwSb", + "injectedFailure": true + }, + { + "id": "BPE9gFC", + "parentId": "W5niwSb", + "injectedFailure": false + } + ], + "checksEnd": 76, + "capturesEnd": 20 + }, + { + "kind": "generated", + "width": 1024, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 76, + "capturesStart": 20, + "stopInput": "keyboard", + "stopLatencyMs": 308, + "attempts": [ + { + "id": "fdZnmW0", + "parentId": "8xGj35e", + "injectedFailure": true + }, + { + "id": "uILLM2U", + "parentId": "8xGj35e", + "injectedFailure": true + }, + { + "id": "J3nj0cm", + "parentId": "8xGj35e", + "injectedFailure": false + } + ], + "checksEnd": 98, + "capturesEnd": 26 + }, + { + "kind": "generated", + "width": 1440, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 98, + "capturesStart": 26, + "stopInput": "pointer", + "stopLatencyMs": 342, + "pointerActivations": [ + { + "phase": "fail-again", + "down": { + "x": 333, + "y": 764.515625, + "width": 130.296875, + "height": 44 + }, + "up": { + "x": 333, + "y": 764.515625, + "width": 130.296875, + "height": 44 + } + }, + { + "phase": "recover", + "down": { + "x": 333, + "y": 764.515625, + "width": 130.296875, + "height": 44 + }, + "up": { + "x": 333, + "y": 764.515625, + "width": 130.296875, + "height": 44 + } + } + ], + "attempts": [ + { + "id": "TV6EAMV", + "parentId": "LlinriB", + "injectedFailure": true + }, + { + "id": "xutAZwK", + "parentId": "LlinriB", + "injectedFailure": true + }, + { + "id": "99IkWO4", + "parentId": "LlinriB", + "injectedFailure": false + } + ], + "checksEnd": 122, + "capturesEnd": 32 + }, + { + "kind": "generated", + "width": 1920, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 122, + "capturesStart": 32, + "stopInput": "keyboard", + "stopLatencyMs": 311, + "attempts": [ + { + "id": "gAmUVgB", + "parentId": "zLYOOBn", + "injectedFailure": true + }, + { + "id": "hNsdWRi", + "parentId": "zLYOOBn", + "injectedFailure": true + }, + { + "id": "Rxk064M", + "parentId": "zLYOOBn", + "injectedFailure": false + } + ], + "checksEnd": 144, + "capturesEnd": 38 + }, + { + "kind": "source", + "width": 320, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 144, + "capturesStart": 38, + "stopInput": "pointer", + "stopLatencyMs": 855, + "pointerActivations": [ + { + "phase": "fail-again", + "down": { + "x": 63, + "y": 245.6875, + "width": 119.90625, + "height": 44 + }, + "up": { + "x": 63, + "y": 245.6875, + "width": 119.90625, + "height": 44 + } + }, + { + "phase": "recover", + "down": { + "x": 63, + "y": 245.6875, + "width": 119.90625, + "height": 44 + }, + "up": { + "x": 63, + "y": 245.6875, + "width": 119.90625, + "height": 44 + } + } + ], + "attempts": [ + { + "id": "ot1WS9Z", + "parentId": "nwyptvc", + "injectedFailure": true + }, + { + "id": "LnkRnII", + "parentId": "nwyptvc", + "injectedFailure": true + }, + { + "id": "7lCulGU", + "parentId": "nwyptvc", + "injectedFailure": false + } + ], + "checksEnd": 168, + "capturesEnd": 44 + }, + { + "kind": "source", + "width": 390, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 168, + "capturesStart": 44, + "stopInput": "keyboard", + "stopLatencyMs": 841, + "enlargement": { + "method": "Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.", + "elements": 143, + "documentOverflow": 21, + "changedBounds": [ + { + "class": "na-recovery", + "left": 63, + "right": 363, + "overflow": 0 + }, + { + "class": "na-composer", + "left": 12, + "right": 378, + "overflow": 0 + } + ] + }, + "attempts": [ + { + "id": "dtzQcaW", + "parentId": "3G56P96", + "injectedFailure": true + }, + { + "id": "ctt24pQ", + "parentId": "3G56P96", + "injectedFailure": true + }, + { + "id": "8KraZ90", + "parentId": "3G56P96", + "injectedFailure": false + } + ], + "accumulation": { + "additionalTurns": 12, + "totalResponses": 15, + "toolCards": 60, + "elapsedMs": 29482 + }, + "checksEnd": 196, + "capturesEnd": 52 + }, + { + "kind": "source", + "width": 768, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 196, + "capturesStart": 52, + "stopInput": "pointer", + "stopLatencyMs": 341, + "pointerActivations": [ + { + "phase": "fail-again", + "down": { + "x": 69, + "y": 324.578125, + "width": 119.90625, + "height": 44 + }, + "up": { + "x": 69, + "y": 324.578125, + "width": 119.90625, + "height": 44 + } + }, + { + "phase": "recover", + "down": { + "x": 69, + "y": 324.578125, + "width": 119.90625, + "height": 44 + }, + "up": { + "x": 69, + "y": 324.578125, + "width": 119.90625, + "height": 44 + } + } + ], + "attempts": [ + { + "id": "v1CPFkH", + "parentId": "5NB48UZ", + "injectedFailure": true + }, + { + "id": "2bJkbuQ", + "parentId": "5NB48UZ", + "injectedFailure": true + }, + { + "id": "WeruHLh", + "parentId": "5NB48UZ", + "injectedFailure": false + } + ], + "checksEnd": 220, + "capturesEnd": 58 + }, + { + "kind": "source", + "width": 1024, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 220, + "capturesStart": 58, + "stopInput": "keyboard", + "stopLatencyMs": 840, + "attempts": [ + { + "id": "OWtRMT8", + "parentId": "GDT3H0L", + "injectedFailure": true + }, + { + "id": "Q26XQOp", + "parentId": "GDT3H0L", + "injectedFailure": true + }, + { + "id": "9XWGD1H", + "parentId": "GDT3H0L", + "injectedFailure": false + } + ], + "checksEnd": 242, + "capturesEnd": 64 + }, + { + "kind": "source", + "width": 1440, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 242, + "capturesStart": 64, + "stopInput": "pointer", + "stopLatencyMs": 851, + "pointerActivations": [ + { + "phase": "fail-again", + "down": { + "x": 199, + "y": 774.984375, + "width": 119.90625, + "height": 44 + }, + "up": { + "x": 199, + "y": 774.984375, + "width": 119.90625, + "height": 44 + } + }, + { + "phase": "recover", + "down": { + "x": 199, + "y": 774.984375, + "width": 119.90625, + "height": 44 + }, + "up": { + "x": 199, + "y": 774.984375, + "width": 119.90625, + "height": 44 + } + } + ], + "attempts": [ + { + "id": "0P6PGdl", + "parentId": "UEwiehu", + "injectedFailure": true + }, + { + "id": "SAk8KuY", + "parentId": "UEwiehu", + "injectedFailure": true + }, + { + "id": "WARlPym", + "parentId": "UEwiehu", + "injectedFailure": false + } + ], + "checksEnd": 266, + "capturesEnd": 70 + }, + { + "kind": "source", + "width": 1920, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 266, + "capturesStart": 70, + "stopInput": "keyboard", + "stopLatencyMs": 829, + "attempts": [ + { + "id": "pbSGoOL", + "parentId": "LGGDCxO", + "injectedFailure": true + }, + { + "id": "EDS26NG", + "parentId": "LGGDCxO", + "injectedFailure": true + }, + { + "id": "XpvWeAM", + "parentId": "LGGDCxO", + "injectedFailure": false + } + ], + "checksEnd": 288, + "capturesEnd": 76 + } + ], + "captures": [ + { + "name": "generated-empty-320", + "pngSha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 320, + "height": 780, + "top": 64, + "right": 320, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 296, + "height": 128, + "top": 708, + "right": 308, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-320", + "pngSha256": "652934d39f0e3eb65357e59ab2312c57f16fe9c2c2c0e4791e407dc9303dc6ec", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2800, + "clientHeight": 2800, + "box": { + "x": 0, + "y": -1888, + "width": 320, + "height": 2799.546875, + "top": -1888, + "right": 320, + "bottom": 911.546875, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.546875, + "width": 226, + "height": 115, + "top": 629.546875, + "right": 293, + "bottom": 744.546875, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.546875, + "width": 296, + "height": 128, + "top": 775.546875, + "right": 308, + "bottom": 903.546875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1952 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-320", + "pngSha256": "914d34e5c4e3c77a75568bda1683fcad1e85d27ec995dd45cb9ab945c04b56b7", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 5436, + "clientHeight": 5436, + "box": { + "x": 0, + "y": -4592, + "width": 320, + "height": 5436.09375, + "top": -4592, + "right": 320, + "bottom": 844.09375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.09375, + "width": 226, + "height": 115, + "top": 562.09375, + "right": 293, + "bottom": 677.09375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.09375, + "width": 296, + "height": 128, + "top": 708.09375, + "right": 308, + "bottom": 836.09375, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4656 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-320", + "pngSha256": "937c54b96421ca35ca308d9de0682e87350da227de26184abb7a3754220c5cd8", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 5436, + "clientHeight": 5436, + "box": { + "x": 0, + "y": -4592, + "width": 320, + "height": 5436.09375, + "top": -4592, + "right": 320, + "bottom": 844.09375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.09375, + "width": 226, + "height": 115, + "top": 562.09375, + "right": 293, + "bottom": 677.09375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.09375, + "width": 296, + "height": 128, + "top": 708.09375, + "right": 308, + "bottom": 836.09375, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4656 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-320", + "pngSha256": "1ffeaf2cc5fcbb17e9fbc1dd7cfa1d46a42c460804fb45953b888760756df998", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 6737, + "clientHeight": 6737, + "box": { + "x": 0, + "y": -5893, + "width": 320, + "height": 6737.296875, + "top": -5893, + "right": 320, + "bottom": 844.296875, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.296875, + "width": 296, + "height": 128, + "top": 708.296875, + "right": 308, + "bottom": 836.296875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 5957 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-320", + "pngSha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 320, + "height": 780, + "top": 64, + "right": 320, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 296, + "height": 128, + "top": 708, + "right": 308, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-390", + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-390", + "pngSha256": "6f966bd77522d9419e624a7f11c70b3f936a2457864ccadf8271407cd34770c3", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 2538, + "clientHeight": 2538, + "box": { + "x": 0, + "y": -1626, + "width": 390, + "height": 2537.640625, + "top": -1626, + "right": 390, + "bottom": 911.640625, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 629.640625, + "width": 296, + "height": 115, + "top": 629.640625, + "right": 363, + "bottom": 744.640625, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 775.640625, + "width": 366, + "height": 128, + "top": 775.640625, + "right": 378, + "bottom": 903.640625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 1690 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-390", + "pngSha256": "d53323ae6041490d23937e6a411552e7a4d6e8d440e2aad9b88e7271eb755df2", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-390", + "pngSha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 4867, + "clientHeight": 4867, + "box": { + "x": 0, + "y": -4023, + "width": 390, + "height": 4867.34375, + "top": -4023, + "right": 390, + "bottom": 844.34375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 114, + "clientHeight": 114, + "box": { + "x": 67, + "y": 562.34375, + "width": 296, + "height": 115, + "top": 562.34375, + "right": 363, + "bottom": 677.34375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708.34375, + "width": 366, + "height": 128, + "top": 708.34375, + "right": 378, + "bottom": 836.34375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 4087 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-text-200-390", + "pngSha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 11658, + "clientHeight": 11658, + "box": { + "x": 0, + "y": -10814, + "width": 390, + "height": 11658.4375, + "top": -10814, + "right": 390, + "bottom": 844.4375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 234, + "clientHeight": 234, + "box": { + "x": 67, + "y": 378.84375, + "width": 296, + "height": 234.59375, + "top": 378.84375, + "right": 363, + "bottom": 613.4375, + "left": 67 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 192, + "clientHeight": 192, + "box": { + "x": 12, + "y": 644.4375, + "width": 366, + "height": 192, + "top": 644.4375, + "right": 378, + "bottom": 836.4375, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 10878 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-390", + "pngSha256": "33ee4ebc7c01a3f826e4b66b873fa57610fce8cd9120df361172a40c3def033d", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 5952, + "clientHeight": 5952, + "box": { + "x": 0, + "y": -5108, + "width": 390, + "height": 5951.578125, + "top": -5108, + "right": 390, + "bottom": 843.578125, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 707.578125, + "width": 366, + "height": 128, + "top": 707.578125, + "right": 378, + "bottom": 835.578125, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 5172 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-accumulated-390", + "pngSha256": "58ba9e90d8ee08e3e4de36315520230539a85f7a6f7aa00c00d551d1faeca633", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 29134, + "clientHeight": 29134, + "box": { + "x": 0, + "y": -28290, + "width": 390, + "height": 29133.890625, + "top": -28290, + "right": 390, + "bottom": 843.890625, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 707.890625, + "width": 366, + "height": 128, + "top": 707.890625, + "right": 378, + "bottom": 835.890625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 28354 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-390", + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 780, + "clientHeight": 780, + "box": { + "x": 0, + "y": 64, + "width": 390, + "height": 780, + "top": 64, + "right": 390, + "bottom": 844, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 708, + "width": 366, + "height": 128, + "top": 708, + "right": 378, + "bottom": 836, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-768", + "pngSha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 0, + "y": 64, + "width": 768, + "height": 896, + "top": 64, + "right": 768, + "bottom": 960, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840, + "width": 732, + "height": 112, + "top": 840, + "right": 750, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-768", + "pngSha256": "d2e9ff544a462e6031dbfed0f425caf9bf1472afdadc02b5bd94ef233e6bb442", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1756, + "clientHeight": 1756, + "box": { + "x": 0, + "y": -748, + "width": 768, + "height": 1756.140625, + "top": -748, + "right": 768, + "bottom": 1008.140625, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 73, + "y": 766.140625, + "width": 614.15625, + "height": 91, + "top": 766.140625, + "right": 687.15625, + "bottom": 857.140625, + "left": 73 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 888.140625, + "width": 732, + "height": 112, + "top": 888.140625, + "right": 750, + "bottom": 1000.140625, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 812 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-768", + "pngSha256": "7b29501873ba5b601f6bbb3ef55468f49a159347bf4839eeeb181e5d7bba9710", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3186, + "clientHeight": 3186, + "box": { + "x": 0, + "y": -2226, + "width": 768, + "height": 3186.109375, + "top": -2226, + "right": 768, + "bottom": 960.109375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 73, + "y": 718.109375, + "width": 614.15625, + "height": 91, + "top": 718.109375, + "right": 687.15625, + "bottom": 809.109375, + "left": 73 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840.109375, + "width": 732, + "height": 112, + "top": 840.109375, + "right": 750, + "bottom": 952.109375, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2290 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-768", + "pngSha256": "b04709917a1a7c0571b29d18e84a1f98b2dbc9071ac2689281b8f7e2bde61968", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3186, + "clientHeight": 3186, + "box": { + "x": 0, + "y": -2226, + "width": 768, + "height": 3186.109375, + "top": -2226, + "right": 768, + "bottom": 960.109375, + "left": 0 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 73, + "y": 718.109375, + "width": 614.15625, + "height": 91, + "top": 718.109375, + "right": 687.15625, + "bottom": 809.109375, + "left": 73 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840.109375, + "width": 732, + "height": 112, + "top": 840.109375, + "right": 750, + "bottom": 952.109375, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2290 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-768", + "pngSha256": "335650ac40dab0dbf9289b21fea9191ed2ed072bd43d63847810d026edb53f08", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3918, + "clientHeight": 3918, + "box": { + "x": 0, + "y": -2958, + "width": 768, + "height": 3918.25, + "top": -2958, + "right": 768, + "bottom": 960.25, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840.25, + "width": 732, + "height": 112, + "top": 840.25, + "right": 750, + "bottom": 952.25, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 3022 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-768", + "pngSha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 0, + "y": 64, + "width": 768, + "height": 896, + "top": 64, + "right": 768, + "bottom": 960, + "left": 0 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 18, + "y": 840, + "width": 732, + "height": 112, + "top": 840, + "right": 750, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-1024", + "pngSha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 52, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 972, + "bottom": 960, + "left": 52 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 954, + "bottom": 952, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-1024", + "pngSha256": "37d80b33fdd0769336860ba760072bca9682e6bef5d683e318a3f1752f3d6596", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1731, + "clientHeight": 1731, + "box": { + "x": 52, + "y": -723, + "width": 920, + "height": 1731.34375, + "top": -723, + "right": 972, + "bottom": 1008.34375, + "left": 52 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 125, + "y": 766.34375, + "width": 730, + "height": 91, + "top": 766.34375, + "right": 855, + "bottom": 857.34375, + "left": 125 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 888.34375, + "width": 884, + "height": 112, + "top": 888.34375, + "right": 954, + "bottom": 1000.34375, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 787 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-1024", + "pngSha256": "8771217ee4017d80a0d96770f8b6102ca307e466c9ce9bc892b162b00d43af5f", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 52, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 972, + "bottom": 959.515625, + "left": 52 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 125, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 855, + "bottom": 808.515625, + "left": 125 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 954, + "bottom": 951.515625, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-1024", + "pngSha256": "56f0f5a4352c57b7c56842dcd6da1f6c90d04dfb46cfae4995994a48995ec2e2", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 52, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 972, + "bottom": 959.515625, + "left": 52 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 125, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 855, + "bottom": 808.515625, + "left": 125 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 954, + "bottom": 951.515625, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-1024", + "pngSha256": "a0f976461b91b9595c61523d38a92ffeb29812b08ec7e43a9539782a8bbb1ad9", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3844, + "clientHeight": 3844, + "box": { + "x": 52, + "y": -2884, + "width": 920, + "height": 3843.859375, + "top": -2884, + "right": 972, + "bottom": 959.859375, + "left": 52 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 839.859375, + "width": 884, + "height": 112, + "top": 839.859375, + "right": 954, + "bottom": 951.859375, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2948 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-1024", + "pngSha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 52, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 972, + "bottom": 960, + "left": 52 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 70, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 954, + "bottom": 952, + "left": 70 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-1440", + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 260, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1180, + "bottom": 960, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1162, + "bottom": 952, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-1440", + "pngSha256": "83264c4288a5f0b7240a757a12571f7f292902ea890b426b9f4b5318dd3a85c7", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1731, + "clientHeight": 1731, + "box": { + "x": 260, + "y": -723, + "width": 920, + "height": 1731.34375, + "top": -723, + "right": 1180, + "bottom": 1008.34375, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 766.34375, + "width": 730, + "height": 91, + "top": 766.34375, + "right": 1063, + "bottom": 857.34375, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 888.34375, + "width": 884, + "height": 112, + "top": 888.34375, + "right": 1162, + "bottom": 1000.34375, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 787 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-1440", + "pngSha256": "0b0b4496efe9ccd09e844a4e75afb7ff74e37dc54ce08f64911ee322ed830d60", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 260, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1180, + "bottom": 959.515625, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1063, + "bottom": 808.515625, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1162, + "bottom": 951.515625, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-1440", + "pngSha256": "07765375ec1a2f2786cd335ef09b11e6daf43b5625483e646f3c722a6f5b291b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 260, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1180, + "bottom": 959.515625, + "left": 260 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 333, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1063, + "bottom": 808.515625, + "left": 333 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1162, + "bottom": 951.515625, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-1440", + "pngSha256": "a11ca95732178919c8ec6f957d8c8ce1e30376525fda5a4aace5b1870ac31dd2", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3844, + "clientHeight": 3844, + "box": { + "x": 260, + "y": -2884, + "width": 920, + "height": 3843.859375, + "top": -2884, + "right": 1180, + "bottom": 959.859375, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 839.859375, + "width": 884, + "height": 112, + "top": 839.859375, + "right": 1162, + "bottom": 951.859375, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2948 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-1440", + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 260, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1180, + "bottom": 960, + "left": 260 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 278, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1162, + "bottom": 952, + "left": 278 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-empty-1920", + "pngSha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 500, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1420, + "bottom": 960, + "left": 500 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1402, + "bottom": 952, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-stopped-1920", + "pngSha256": "c6e314e7866c16a0a9fb893ab53e708b69d01cf1dfc91e175171021ad1563339", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 1731, + "clientHeight": 1731, + "box": { + "x": 500, + "y": -723, + "width": 920, + "height": 1731.34375, + "top": -723, + "right": 1420, + "bottom": 1008.34375, + "left": 500 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 573, + "y": 766.34375, + "width": 730, + "height": 91, + "top": 766.34375, + "right": 1303, + "bottom": 857.34375, + "left": 573 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 888.34375, + "width": 884, + "height": 112, + "top": 888.34375, + "right": 1402, + "bottom": 1000.34375, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 787 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-1920", + "pngSha256": "04ea13ef9f7347a8b3f69e0c6d8cbe277197c38ea5c31a4571154504696a7207", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 500, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1420, + "bottom": 959.515625, + "left": 500 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 573, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1303, + "bottom": 808.515625, + "left": 573 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1402, + "bottom": 951.515625, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-error-again-1920", + "pngSha256": "8af7493a48bb6c6c5c98e4bcc94edf71d35ffe14af6a3db4b696e2923f5f123b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3137, + "clientHeight": 3137, + "box": { + "x": 500, + "y": -2177, + "width": 920, + "height": 3136.515625, + "top": -2177, + "right": 1420, + "bottom": 959.515625, + "left": 500 + } + }, + { + "class": "naRecovery", + "scrollTop": 0, + "scrollHeight": 90, + "clientHeight": 90, + "box": { + "x": 573, + "y": 717.515625, + "width": 730, + "height": 91, + "top": 717.515625, + "right": 1303, + "bottom": 808.515625, + "left": 573 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 839.515625, + "width": 884, + "height": 112, + "top": 839.515625, + "right": 1402, + "bottom": 951.515625, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2241 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-recovered-1920", + "pngSha256": "ef4cc1b5a4d754bcc95061400b93152dc8aa9b536e221e8b9dec376b3623860d", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 3844, + "clientHeight": 3844, + "box": { + "x": 500, + "y": -2884, + "width": 920, + "height": 3843.859375, + "top": -2884, + "right": 1420, + "bottom": 959.859375, + "left": 500 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 839.859375, + "width": 884, + "height": 112, + "top": 839.859375, + "right": 1402, + "bottom": 951.859375, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 2948 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "generated-reloaded-1920", + "pngSha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b", + "state": { + "layout": [ + { + "class": "naViewport", + "scrollTop": 0, + "scrollHeight": 896, + "clientHeight": 896, + "box": { + "x": 500, + "y": 64, + "width": 920, + "height": 896, + "top": 64, + "right": 1420, + "bottom": 960, + "left": 500 + } + }, + { + "class": "naFooter", + "scrollTop": 0, + "scrollHeight": 112, + "clientHeight": 112, + "box": { + "x": 518, + "y": 840, + "width": 884, + "height": 112, + "top": 840, + "right": 1402, + "bottom": 952, + "left": 518 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-320", + "pngSha256": "a62e4eb88af10918e0ad7ad40deb6f0c6e3e9482bada71e9a316054d12f14e44", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 660.21875, + "top": 54, + "right": 320, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 296, + "height": 128.09375, + "top": 578.125, + "right": 308, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-320", + "pngSha256": "12ff4ab7c4bf5c9d15fa6cd71d5b5d43d2684f73b2ff6dc4d84e26ff711ea8a8", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1965, + "scrollHeight": 2367, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.53125, + "width": 230, + "height": 111.78125, + "top": 178.53125, + "right": 293, + "bottom": 290.3125, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-320", + "pngSha256": "44c7e1467f62779beab1c0183ffe4514eb6fe13b34535663c9c38b6f1933a2f9", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3879, + "scrollHeight": 4281, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.90625, + "width": 230, + "height": 111.78125, + "top": 177.90625, + "right": 293, + "bottom": 289.6875, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-320", + "pngSha256": "1de10380e5438e19a7e0c6e19690cfdbb24cc1822a01dc28fd8dc411c937a2ca", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3879, + "scrollHeight": 4281, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.90625, + "width": 230, + "height": 111.78125, + "top": 177.90625, + "right": 293, + "bottom": 289.6875, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-320", + "pngSha256": "f710fb7b3a81a6b996172ecad176745a6aca8fa6ed8cabfc1beed3553c6c3415", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 5017, + "scrollHeight": 5419, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-320", + "pngSha256": "79fb416362b6d91c86f3287cf855f7c98c746abe4be85d9bfba3f7cd670956f2", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 660.21875, + "top": 54, + "right": 320, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 296, + "height": 128.09375, + "top": 578.125, + "right": 308, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-390", + "pngSha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-390", + "pngSha256": "75dfacf045b4fb2ef8fb3e8aec88f3f5662bbfe513fed7cddfd1dfa2bd31a642", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1675, + "scrollHeight": 2077, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.59375, + "width": 300, + "height": 111.78125, + "top": 178.59375, + "right": 363, + "bottom": 290.375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-390", + "pngSha256": "4c0ec09af5cd6b81a74dc757af114d0b0af8298d7f1554eea6175132903036e8", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-390", + "pngSha256": "1d8241a055cfaeb73eb0a25a1cc110e4ac50c9409e58035754c1896fb8bd1e8e", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-text-200-390", + "pngSha256": "2d2c6213cf705762e21755eabebddcf2d20c07c01a2e505125107c95c0e77f4b", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 8764, + "scrollHeight": 9166, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 166, + "clientHeight": 166, + "box": { + "x": 63, + "y": 54.75, + "width": 300, + "height": 166.59375, + "top": 54.75, + "right": 363, + "bottom": 221.34375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 196, + "clientHeight": 196, + "box": { + "x": 12, + "y": 251.34375, + "width": 366, + "height": 196.28125, + "top": 251.34375, + "right": 378, + "bottom": 447.625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 21, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-390", + "pngSha256": "3be1d4d87ab86cd042f7a2e2409df9521bcd3d0185e5490a9bdebdfc2322c589", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 4273, + "scrollHeight": 4675, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-accumulated-390", + "pngSha256": "a98d959fb951441de714ee82308450b40628fdf83a422dba3ab14604d078d46f", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 22365, + "scrollHeight": 22767, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.609375, + "width": 366, + "height": 128.09375, + "top": 319.609375, + "right": 378, + "bottom": 447.703125, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-390", + "pngSha256": "ff6103598e731b2f89b6f9eec44f4d3f1e901d905cb37c4b3139d4a30aa31de8", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-768", + "pngSha256": "0e831f09beeba076c2b20de1a4d87afd5e312efe5ad5a0c82f8b76842de7463b", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 795, + "clientHeight": 795, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 794.8125, + "top": 54, + "right": 768, + "bottom": 848.8125, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 729.765625, + "width": 732, + "height": 111.046875, + "top": 729.765625, + "right": 750, + "bottom": 840.8125, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-768", + "pngSha256": "b2466d0ff97cf542a63593b904a50661332abb1189084f966d03a1152ad93396", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1209, + "scrollHeight": 1673, + "clientHeight": 464, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 464.40625, + "top": 54, + "right": 768, + "bottom": 518.40625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 279.09375, + "width": 614.15625, + "height": 89.390625, + "top": 279.09375, + "right": 683.15625, + "bottom": 368.484375, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 398.484375, + "width": 732, + "height": 111.046875, + "top": 398.484375, + "right": 750, + "bottom": 509.53125, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-768", + "pngSha256": "53662466a8e63ee63c22ef3048470ef87953482e9a26f76930cd0c8794b75328", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2568, + "scrollHeight": 3032, + "clientHeight": 464, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 464.40625, + "top": 54, + "right": 768, + "bottom": 518.40625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 279.1875, + "width": 614.15625, + "height": 89.390625, + "top": 279.1875, + "right": 683.15625, + "bottom": 368.578125, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 398.578125, + "width": 732, + "height": 111.046875, + "top": 398.578125, + "right": 750, + "bottom": 509.625, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-768", + "pngSha256": "0e9234dad7bd90d049e43078933c4d4e9caf3196d44c94f89b7409be6c6e7cac", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2568, + "scrollHeight": 3032, + "clientHeight": 464, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 464.40625, + "top": 54, + "right": 768, + "bottom": 518.40625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 279.1875, + "width": 614.15625, + "height": 89.390625, + "top": 279.1875, + "right": 683.15625, + "bottom": 368.578125, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 398.578125, + "width": 732, + "height": 111.046875, + "top": 398.578125, + "right": 750, + "bottom": 509.625, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-768", + "pngSha256": "d6426e2c8551db0ea54785c9752fd126c43dadc7c68a6639b7ae762cf9e2ded0", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3283, + "scrollHeight": 3747, + "clientHeight": 464, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 464.40625, + "top": 54, + "right": 768, + "bottom": 518.40625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 398.9375, + "width": 732, + "height": 111.046875, + "top": 398.9375, + "right": 750, + "bottom": 509.984375, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-768", + "pngSha256": "8ff8dc987409066bd07225af18517486c5b5c6f813cfdd5504cc76c2ad83942e", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 795, + "clientHeight": 795, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 794.8125, + "top": 54, + "right": 768, + "bottom": 848.8125, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 729.765625, + "width": 732, + "height": 111.046875, + "top": 729.765625, + "right": 750, + "bottom": 840.8125, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-1024", + "pngSha256": "1f1dcb02d9a8bc787a3c8f34284a37db509fe3c713c8cd2f1a0be280bec536bb", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-1024", + "pngSha256": "974cf22ed8518165144d257bc4eb9a4b179f7ec79baa5badb74038deb6ecd39f", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 867, + "scrollHeight": 1773, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 729.859375, + "width": 522.625, + "height": 89.390625, + "top": 729.859375, + "right": 591.625, + "bottom": 819.25, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-1024", + "pngSha256": "b381afd9f7491eacf6a037ceccdb12f2569d41517d332d0de8f32c54f0efc544", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2290, + "scrollHeight": 3196, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 729.9375, + "width": 522.625, + "height": 89.390625, + "top": 729.9375, + "right": 591.625, + "bottom": 819.328125, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-1024", + "pngSha256": "97835197502d12bd65dd9a1fe6e859da8892a2251871bf263c1daae2808b3033", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2290, + "scrollHeight": 3196, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 729.9375, + "width": 522.625, + "height": 89.390625, + "top": 729.9375, + "right": 591.625, + "bottom": 819.328125, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-1024", + "pngSha256": "92ccbdfce3e0995faf70ad1939d12f8d6f8ad2ecf9727ee11df9f51467879343", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3025, + "scrollHeight": 3931, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.890625, + "width": 628, + "height": 103.046875, + "top": 848.890625, + "right": 646, + "bottom": 951.9375, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-1024", + "pngSha256": "28a5b8cbc04f9676ec6e93efc0abef0dc688bfc28e428e1f11dde8ad94a15047", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-1440", + "pngSha256": "d76544c99d3ac4bf70171cb55a4a984f5abb833b1b31ab3f17c971fb8ee13e3c", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-1440", + "pngSha256": "e370868af0ecaaca436356008fc24545265e37c63ecb2e8b9fdfdd99fd1a8212", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 738, + "scrollHeight": 1644, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.296875, + "width": 659.90625, + "height": 89.390625, + "top": 729.296875, + "right": 858.90625, + "bottom": 818.6875, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.6875, + "width": 784, + "height": 103.046875, + "top": 848.6875, + "right": 932, + "bottom": 951.734375, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-1440", + "pngSha256": "7c4827c0c1db231e6bc77de6fad921d2a49e101088f96d5d9b15118b23a663cb", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 858.90625, + "bottom": 818.984375, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-1440", + "pngSha256": "2d93b1676903b446f2e89ef6d62d674198ad1b5daf033ab2c0398ea48c348537", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 858.90625, + "bottom": 818.984375, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-1440", + "pngSha256": "ccf4f2074df5b75ae9e53203f6683046d4a07119c0aa39cf40cd234ed1972516", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2771, + "scrollHeight": 3677, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.546875, + "width": 784, + "height": 103.046875, + "top": 848.546875, + "right": 932, + "bottom": 951.59375, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-1440", + "pngSha256": "af46f2737897dc01909a26e05dfcc40315a367b28e8cd459750e635793859608", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-empty-1920", + "pngSha256": "d15109fef507a1ff5c03ee7e219148e97c5d4cea7087eac04d48f8145a750aeb", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 1172, + "bottom": 952, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-1920", + "pngSha256": "ce6b21480ba81a5c5b0d172dcd7b44b4fcaf999c4fcd7696fbc3b63305ca6dc3", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 738, + "scrollHeight": 1644, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 439, + "y": 729.296875, + "width": 659.90625, + "height": 89.390625, + "top": 729.296875, + "right": 1098.90625, + "bottom": 818.6875, + "left": 439 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.6875, + "width": 784, + "height": 103.046875, + "top": 848.6875, + "right": 1172, + "bottom": 951.734375, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-1920", + "pngSha256": "0dd49d3a3361769a55fd9b85464a8c162131053d49cc9dbd332fbe3354bfbe36", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 439, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 1098.90625, + "bottom": 818.984375, + "left": 439 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 1172, + "bottom": 952, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-1920", + "pngSha256": "fd6ec63d65548c8b6d3ca5558fe5f8758dc84134daa518e3aa7d31d74748f580", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 439, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 1098.90625, + "bottom": 818.984375, + "left": 439 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 1172, + "bottom": 952, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-recovered-1920", + "pngSha256": "c54cc28181262b58434cc5ef9d1eedefa4b339d341e06a6659ce8ae1b20d64d0", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2771, + "scrollHeight": 3677, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.546875, + "width": 784, + "height": 103.046875, + "top": 848.546875, + "right": 1172, + "bottom": 951.59375, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-reloaded-1920", + "pngSha256": "bbe8000a70f12ef30e269a508730b96a71569d75555526ae2c85cc1c29434a9b", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 1172, + "bottom": 952, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:59169", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:59169", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:58158", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "sourceAfter": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerAfter": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "finishedAt": "2026-09-05T08:57:01.641Z" +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.before.html new file mode 100644 index 0000000..1b888b2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.html new file mode 100644 index 0000000..1b888b2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.json new file mode 100644 index 0000000..78981d3 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.json @@ -0,0 +1,60 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 22365, + "scrollHeight": 22767, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.609375, + "width": 366, + "height": 128.09375, + "top": 319.609375, + "right": 378, + "bottom": 447.703125, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.png new file mode 100644 index 0000000..113aa01 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-accumulated-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.before.html new file mode 100644 index 0000000..9525f72 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.html new file mode 100644 index 0000000..9525f72 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.json new file mode 100644 index 0000000..5897bc4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.png new file mode 100644 index 0000000..9cdddf1 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.before.html new file mode 100644 index 0000000..f426fc4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.html new file mode 100644 index 0000000..f426fc4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.json new file mode 100644 index 0000000..8c9b559 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.png new file mode 100644 index 0000000..0a24250 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.before.html new file mode 100644 index 0000000..f426fc4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.html new file mode 100644 index 0000000..f426fc4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.json new file mode 100644 index 0000000..76d7f10 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 1172, + "bottom": 952, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.png new file mode 100644 index 0000000..1935b73 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.before.html new file mode 100644 index 0000000..d95ee70 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.html new file mode 100644 index 0000000..d95ee70 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.json new file mode 100644 index 0000000..677012d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 660.21875, + "top": 54, + "right": 320, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 296, + "height": 128.09375, + "top": 578.125, + "right": 308, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.png new file mode 100644 index 0000000..7cab249 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.before.html new file mode 100644 index 0000000..e8fe833 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.html new file mode 100644 index 0000000..e8fe833 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.json new file mode 100644 index 0000000..e6697fb --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.png new file mode 100644 index 0000000..f02e77c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.before.html new file mode 100644 index 0000000..96d464e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.html new file mode 100644 index 0000000..96d464e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.json new file mode 100644 index 0000000..cc5d159 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 795, + "clientHeight": 795, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 794.8125, + "top": 54, + "right": 768, + "bottom": 848.8125, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 729.765625, + "width": 732, + "height": 111.046875, + "top": 729.765625, + "right": 750, + "bottom": 840.8125, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.png new file mode 100644 index 0000000..5aa8598 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-empty-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.before.html new file mode 100644 index 0000000..77dd195 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.html new file mode 100644 index 0000000..77dd195 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.json new file mode 100644 index 0000000..5dfe57c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2290, + "scrollHeight": 3196, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 729.9375, + "width": 522.625, + "height": 89.390625, + "top": 729.9375, + "right": 591.625, + "bottom": 819.328125, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.png new file mode 100644 index 0000000..206e82c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.before.html new file mode 100644 index 0000000..b40f746 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.html new file mode 100644 index 0000000..b40f746 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.json new file mode 100644 index 0000000..f97cfce --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 858.90625, + "bottom": 818.984375, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.png new file mode 100644 index 0000000..0507a59 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.before.html new file mode 100644 index 0000000..1c8da88 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.html new file mode 100644 index 0000000..1c8da88 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.json new file mode 100644 index 0000000..9340c99 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 439, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 1098.90625, + "bottom": 818.984375, + "left": 439 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 1172, + "bottom": 952, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.png new file mode 100644 index 0000000..3329485 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.before.html new file mode 100644 index 0000000..a2eb5d5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.html new file mode 100644 index 0000000..a2eb5d5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.json new file mode 100644 index 0000000..2f2c090 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3879, + "scrollHeight": 4281, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.90625, + "width": 230, + "height": 111.78125, + "top": 177.90625, + "right": 293, + "bottom": 289.6875, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.png new file mode 100644 index 0000000..a2ad33b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.before.html new file mode 100644 index 0000000..355cf05 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.html new file mode 100644 index 0000000..355cf05 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.json new file mode 100644 index 0000000..c27b26c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.png new file mode 100644 index 0000000..f95a57a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.before.html new file mode 100644 index 0000000..5af8d1b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.html new file mode 100644 index 0000000..5af8d1b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.json new file mode 100644 index 0000000..0fb7cf8 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2568, + "scrollHeight": 3032, + "clientHeight": 464, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 464.40625, + "top": 54, + "right": 768, + "bottom": 518.40625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 279.1875, + "width": 614.15625, + "height": 89.390625, + "top": 279.1875, + "right": 683.15625, + "bottom": 368.578125, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 398.578125, + "width": 732, + "height": 111.046875, + "top": 398.578125, + "right": 750, + "bottom": 509.625, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.png new file mode 100644 index 0000000..adbf4b4 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.before.html new file mode 100644 index 0000000..27c5677 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.html new file mode 100644 index 0000000..27c5677 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.json new file mode 100644 index 0000000..5dfe57c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2290, + "scrollHeight": 3196, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 729.9375, + "width": 522.625, + "height": 89.390625, + "top": 729.9375, + "right": 591.625, + "bottom": 819.328125, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.png new file mode 100644 index 0000000..ef3ae25 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.before.html new file mode 100644 index 0000000..d940b59 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.html new file mode 100644 index 0000000..d940b59 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.json new file mode 100644 index 0000000..48cb579 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 858.90625, + "bottom": 818.984375, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.png new file mode 100644 index 0000000..0e77aa3 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.before.html new file mode 100644 index 0000000..603f43e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.html new file mode 100644 index 0000000..603f43e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.json new file mode 100644 index 0000000..9340c99 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2076, + "scrollHeight": 2982, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 439, + "y": 729.59375, + "width": 659.90625, + "height": 89.390625, + "top": 729.59375, + "right": 1098.90625, + "bottom": 818.984375, + "left": 439 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 1172, + "bottom": 952, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.png new file mode 100644 index 0000000..8093b1e Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.before.html new file mode 100644 index 0000000..fd97d4d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.html new file mode 100644 index 0000000..fd97d4d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.json new file mode 100644 index 0000000..4c136e6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3879, + "scrollHeight": 4281, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 177.90625, + "width": 230, + "height": 111.78125, + "top": 177.90625, + "right": 293, + "bottom": 289.6875, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.png new file mode 100644 index 0000000..3cb6be6 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.before.html new file mode 100644 index 0000000..f46e9de --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.html new file mode 100644 index 0000000..f46e9de --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.json new file mode 100644 index 0000000..c27b26c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.png new file mode 100644 index 0000000..fb5e7ab Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.before.html new file mode 100644 index 0000000..c003269 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.html new file mode 100644 index 0000000..c003269 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.json new file mode 100644 index 0000000..22d5f4a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2568, + "scrollHeight": 3032, + "clientHeight": 464, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 464.40625, + "top": 54, + "right": 768, + "bottom": 518.40625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 279.1875, + "width": 614.15625, + "height": 89.390625, + "top": 279.1875, + "right": 683.15625, + "bottom": 368.578125, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 398.578125, + "width": 732, + "height": 111.046875, + "top": 398.578125, + "right": 750, + "bottom": 509.625, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.png new file mode 100644 index 0000000..0cd8ae1 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-again-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.before.html new file mode 100644 index 0000000..b245a2c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.html new file mode 100644 index 0000000..b245a2c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.json new file mode 100644 index 0000000..feb58b5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 8764, + "scrollHeight": 9166, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 166, + "clientHeight": 166, + "box": { + "x": 63, + "y": 54.75, + "width": 300, + "height": 166.59375, + "top": 54.75, + "right": 363, + "bottom": 221.34375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 196, + "clientHeight": 196, + "box": { + "x": 12, + "y": 251.34375, + "width": 366, + "height": 196.28125, + "top": 251.34375, + "right": 378, + "bottom": 447.625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 21, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.png new file mode 100644 index 0000000..eed1901 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-error-text-200-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.before.html new file mode 100644 index 0000000..e25b351 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.html new file mode 100644 index 0000000..e25b351 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.json new file mode 100644 index 0000000..0044db0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.json @@ -0,0 +1,60 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3025, + "scrollHeight": 3931, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.890625, + "width": 628, + "height": 103.046875, + "top": 848.890625, + "right": 646, + "bottom": 951.9375, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.png new file mode 100644 index 0000000..2e30e8a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.before.html new file mode 100644 index 0000000..b4feab4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.html new file mode 100644 index 0000000..b4feab4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.json new file mode 100644 index 0000000..0def90a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.json @@ -0,0 +1,60 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2771, + "scrollHeight": 3677, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.546875, + "width": 784, + "height": 103.046875, + "top": 848.546875, + "right": 932, + "bottom": 951.59375, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.png new file mode 100644 index 0000000..8ce3dc6 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.before.html new file mode 100644 index 0000000..95964f0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.html new file mode 100644 index 0000000..95964f0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.json new file mode 100644 index 0000000..2eabf98 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.json @@ -0,0 +1,60 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 2771, + "scrollHeight": 3677, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.546875, + "width": 784, + "height": 103.046875, + "top": 848.546875, + "right": 1172, + "bottom": 951.59375, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.png new file mode 100644 index 0000000..394d7b4 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.before.html new file mode 100644 index 0000000..8d24cfd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.html new file mode 100644 index 0000000..8d24cfd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.json new file mode 100644 index 0000000..78ac88e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.json @@ -0,0 +1,60 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 5017, + "scrollHeight": 5419, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.png new file mode 100644 index 0000000..20ccfbe Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.before.html new file mode 100644 index 0000000..0fbd988 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.html new file mode 100644 index 0000000..0fbd988 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.json new file mode 100644 index 0000000..e7c3748 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.json @@ -0,0 +1,60 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 4273, + "scrollHeight": 4675, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.png new file mode 100644 index 0000000..61ee98b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.before.html new file mode 100644 index 0000000..6a9dbad --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.html new file mode 100644 index 0000000..6a9dbad --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.json new file mode 100644 index 0000000..36b3cb6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.json @@ -0,0 +1,60 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3283, + "scrollHeight": 3747, + "clientHeight": 464, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 464.40625, + "top": 54, + "right": 768, + "bottom": 518.40625, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 398.9375, + "width": 732, + "height": 111.046875, + "top": 398.9375, + "right": 750, + "bottom": 509.984375, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "BODY", + "label": null + }, + "buttons": [ + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.png new file mode 100644 index 0000000..782409b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-recovered-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.before.html new file mode 100644 index 0000000..9525f72 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.html new file mode 100644 index 0000000..9525f72 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.json new file mode 100644 index 0000000..5897bc4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.png new file mode 100644 index 0000000..5b751a8 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.before.html new file mode 100644 index 0000000..f426fc4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.html new file mode 100644 index 0000000..f426fc4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.json new file mode 100644 index 0000000..8c9b559 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 932, + "bottom": 952, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.png new file mode 100644 index 0000000..6044d0f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.before.html new file mode 100644 index 0000000..f426fc4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.html new file mode 100644 index 0000000..f426fc4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.json new file mode 100644 index 0000000..76d7f10 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 906, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.953125, + "width": 784, + "height": 103.046875, + "top": 848.953125, + "right": 1172, + "bottom": 952, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.png new file mode 100644 index 0000000..a00987e Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.before.html new file mode 100644 index 0000000..d95ee70 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.html new file mode 100644 index 0000000..d95ee70 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.json new file mode 100644 index 0000000..677012d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 660.21875, + "top": 54, + "right": 320, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 296, + "height": 128.09375, + "top": 578.125, + "right": 308, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.png new file mode 100644 index 0000000..7440623 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.before.html new file mode 100644 index 0000000..e8fe833 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.html new file mode 100644 index 0000000..e8fe833 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.json new file mode 100644 index 0000000..e6697fb --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.png new file mode 100644 index 0000000..a8ae30f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.before.html new file mode 100644 index 0000000..96d464e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.html new file mode 100644 index 0000000..96d464e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.json new file mode 100644 index 0000000..cc5d159 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 795, + "clientHeight": 795, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 794.8125, + "top": 54, + "right": 768, + "bottom": 848.8125, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 729.765625, + "width": 732, + "height": 111.046875, + "top": 729.765625, + "right": 750, + "bottom": 840.8125, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.png new file mode 100644 index 0000000..df28e16 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-reloaded-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.before.html new file mode 100644 index 0000000..f57d991 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.html new file mode 100644 index 0000000..f57d991 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.json new file mode 100644 index 0000000..1070440 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 867, + "scrollHeight": 1773, + "clientHeight": 906, + "box": { + "x": 0, + "y": 54, + "width": 664, + "height": 906, + "top": 54, + "right": 664, + "bottom": 960, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 729.859375, + "width": 522.625, + "height": 89.390625, + "top": 729.859375, + "right": 591.625, + "bottom": 819.25, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 18, + "y": 848.953125, + "width": 628, + "height": 103.046875, + "top": 848.953125, + "right": 646, + "bottom": 952, + "left": 18 + } + } + ], + "viewport": { + "width": 1024, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.png new file mode 100644 index 0000000..3110bd0 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.before.html new file mode 100644 index 0000000..78eb321 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.html new file mode 100644 index 0000000..78eb321 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.json new file mode 100644 index 0000000..10b3470 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 738, + "scrollHeight": 1644, + "clientHeight": 906, + "box": { + "x": 130, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 950, + "bottom": 960, + "left": 130 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 199, + "y": 729.296875, + "width": 659.90625, + "height": 89.390625, + "top": 729.296875, + "right": 858.90625, + "bottom": 818.6875, + "left": 199 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 148, + "y": 848.6875, + "width": 784, + "height": 103.046875, + "top": 848.6875, + "right": 932, + "bottom": 951.734375, + "left": 148 + } + } + ], + "viewport": { + "width": 1440, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.png new file mode 100644 index 0000000..7ded3a5 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.before.html new file mode 100644 index 0000000..7fa107f --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.html new file mode 100644 index 0000000..7fa107f --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.json new file mode 100644 index 0000000..ba36d01 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 738, + "scrollHeight": 1644, + "clientHeight": 906, + "box": { + "x": 370, + "y": 54, + "width": 820, + "height": 906, + "top": 54, + "right": 1190, + "bottom": 960, + "left": 370 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 439, + "y": 729.296875, + "width": 659.90625, + "height": 89.390625, + "top": 729.296875, + "right": 1098.90625, + "bottom": 818.6875, + "left": 439 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 103, + "clientHeight": 103, + "box": { + "x": 388, + "y": 848.6875, + "width": 784, + "height": 103.046875, + "top": 848.6875, + "right": 1172, + "bottom": 951.734375, + "left": 388 + } + } + ], + "viewport": { + "width": 1920, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.png new file mode 100644 index 0000000..faff458 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.before.html new file mode 100644 index 0000000..654184e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.html new file mode 100644 index 0000000..654184e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.json new file mode 100644 index 0000000..b20b2dc --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1965, + "scrollHeight": 2367, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 320, + "height": 401.765625, + "top": 54, + "right": 320, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.53125, + "width": 230, + "height": 111.78125, + "top": 178.53125, + "right": 293, + "bottom": 290.3125, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 296, + "height": 128.09375, + "top": 319.671875, + "right": 308, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 320, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.png new file mode 100644 index 0000000..d320ddf Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.before.html new file mode 100644 index 0000000..66fe70d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.html new file mode 100644 index 0000000..66fe70d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.json new file mode 100644 index 0000000..f1f8621 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1675, + "scrollHeight": 2077, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.59375, + "width": 300, + "height": 111.78125, + "top": 178.59375, + "right": 363, + "bottom": 290.375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.png new file mode 100644 index 0000000..e81a62f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.before.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.before.html new file mode 100644 index 0000000..798b05b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.html b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.html new file mode 100644 index 0000000..798b05b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.json b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.json new file mode 100644 index 0000000..3ea80e1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1209, + "scrollHeight": 1673, + "clientHeight": 464, + "box": { + "x": 0, + "y": 54, + "width": 768, + "height": 464.40625, + "top": 54, + "right": 768, + "bottom": 518.40625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 69, + "y": 279.09375, + "width": 614.15625, + "height": 89.390625, + "top": 279.09375, + "right": 683.15625, + "bottom": 368.484375, + "left": 69 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 18, + "y": 398.484375, + "width": 732, + "height": 111.046875, + "top": 398.484375, + "right": 750, + "bottom": 509.53125, + "left": 18 + } + } + ], + "viewport": { + "width": 768, + "height": 960 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\non assistant-ui\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.png b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.png new file mode 100644 index 0000000..270b36a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-final-browser-03/source-stopped-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-final-build.stderr b/evidence/current-consumer-20260905/operator/d3-final-build.stderr new file mode 100644 index 0000000..7381710 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-build.stderr @@ -0,0 +1,5 @@ + +(!) Some chunks are larger than 500 kB after minification. Consider: +- Using dynamic import() to code-split the application +- Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/configuration-options/#output-manualchunks +- Adjust chunk size limit for this warning via build.chunkSizeWarningLimit. diff --git a/evidence/current-consumer-20260905/operator/d3-final-build.stdout b/evidence/current-consumer-20260905/operator/d3-final-build.stdout new file mode 100644 index 0000000..312fb39 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-build.stdout @@ -0,0 +1,13 @@ + +> nodeagent@0.1.0 build +> tsc --noEmit && vite build + +vite v6.4.3 building for production... +transforming... +✓ 777 modules transformed. +rendering chunks... +computing gzip size... +dist/index.html  1.37 kB │ gzip: 0.75 kB +dist/assets/index-5w5auUQQ.css  8.70 kB │ gzip: 2.58 kB +dist/assets/index-BHsaWLCB.js 662.07 kB │ gzip: 188.62 kB │ map: 2,794.08 kB +✓ built in 4.58s diff --git a/evidence/current-consumer-20260905/operator/d3-final-commands.json b/evidence/current-consumer-20260905/operator/d3-final-commands.json new file mode 100644 index 0000000..694b614 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-commands.json @@ -0,0 +1,109 @@ +[ + { + "name": "d3-final-test", + "command": [ + "npm.cmd", + "run", + "test" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 1.698270320892334 + }, + { + "name": "d3-final-build", + "command": [ + "npm.cmd", + "run", + "build" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 7.013497591018677 + }, + { + "name": "d3-final-tours-validate", + "command": [ + "npm.cmd", + "run", + "tours:validate" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 1, + "seconds": 0.4321708679199219 + }, + { + "name": "d3-corrected-tours-validate", + "command": [ + "npm.cmd", + "run", + "tours:validate" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 0.44364333152770996 + }, + { + "name": "d3-final-examples-guidance-smoke", + "command": [ + "npm.cmd", + "run", + "examples:guidance:smoke" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 0.8092706203460693 + }, + { + "name": "d3-pack", + "command": [ + "npm.cmd", + "pack", + "--json", + "--pack-destination", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery package 01" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 1.6991913318634033 + }, + { + "name": "d3-host-install", + "command": [ + "npm.cmd", + "install", + "--save-exact", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery package 01\\nodeagent-0.1.0.tgz" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery installed host", + "exit": 0, + "seconds": 14.162391901016235 + }, + { + "name": "d3-installed-doctor", + "command": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery installed host\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "doctor" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery installed host", + "exit": 0, + "seconds": 0.6388072967529297 + }, + { + "name": "d3-installed-scaffold", + "command": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery installed host\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "apps", + "scaffold", + "chat-ui", + "--dir", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app", + "--auto" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery installed host", + "exit": 0, + "seconds": 28.491788625717163 + } +] \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-diff-check.stderr b/evidence/current-consumer-20260905/operator/d3-final-diff-check.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-final-diff-check.stdout b/evidence/current-consumer-20260905/operator/d3-final-diff-check.stdout new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-final-examples-guidance-smoke.stderr b/evidence/current-consumer-20260905/operator/d3-final-examples-guidance-smoke.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-final-examples-guidance-smoke.stdout b/evidence/current-consumer-20260905/operator/d3-final-examples-guidance-smoke.stdout new file mode 100644 index 0000000..8a7e582 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-examples-guidance-smoke.stdout @@ -0,0 +1,5 @@ + +> nodeagent@0.1.0 examples:guidance:smoke +> tsx scripts/example-guidance-smoke.ts + +example guidance smoke: PASS 16 guides 37 support files diff --git a/evidence/current-consumer-20260905/operator/d3-final-lf-normalization.json b/evidence/current-consumer-20260905/operator/d3-final-lf-normalization.json new file mode 100644 index 0000000..03b79dd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-lf-normalization.json @@ -0,0 +1,44 @@ +[ + { + "path": "src/features/node-agent/components/NodeAgentThread.tsx", + "before": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "after": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "normalizationOnly": false + }, + { + "path": "src/features/node-agent/components/toolUIs.tsx", + "before": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "after": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "normalizationOnly": false + }, + { + "path": "src/app/styles.css", + "before": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "after": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "normalizationOnly": false + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "before": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "after": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "normalizationOnly": false + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "before": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "after": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "normalizationOnly": false + }, + { + "path": "examples/apps/chat-ui/template/src/styles.css", + "before": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "after": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "normalizationOnly": false + }, + { + "path": "e2e/current-consumer-recovery-proof.mjs", + "before": "ed2a8ff8e0c034d534b2d5b1ca941735c71c0e4c091af7a6e48a5200503e6ecd", + "after": "ed2a8ff8e0c034d534b2d5b1ca941735c71c0e4c091af7a6e48a5200503e6ecd", + "normalizationOnly": false + } +] \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-metadata-checks.json b/evidence/current-consumer-20260905/operator/d3-final-metadata-checks.json new file mode 100644 index 0000000..90cf2dd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-metadata-checks.json @@ -0,0 +1,22 @@ +[ + { + "name": "d3-final-secret-scan", + "command": [ + "npm.cmd", + "run", + "secret-scan" + ], + "exit": 0, + "seconds": 0.6680536270141602 + }, + { + "name": "d3-final-diff-check", + "command": [ + "git", + "diff", + "--check" + ], + "exit": 0, + "seconds": 0.12372994422912598 + } +] \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-prose.txt b/evidence/current-consumer-20260905/operator/d3-final-prose.txt new file mode 100644 index 0000000..507f3f5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-prose.txt @@ -0,0 +1,107 @@ +diff --git a/.tours/01-primary-user-flow.tour b/.tours/01-primary-user-flow.tour +index ab3645a..3aad758 100644 +--- a/.tours/01-primary-user-flow.tour ++++ b/.tours/01-primary-user-flow.tour +@@ -29,9 +29,9 @@ + }, + { + "file": "src/features/node-agent/components/NodeAgentThread.tsx", +- "line": 91, ++ "line": 126, + "anchor": " + + +@@ -130,9 +130,11 @@ actually start. + **Input** — typed text, or a click on a suggestion chip. + **Output** — a user message appended to the thread; assistant-ui then calls the + adapter in Step 4. +-**Failure behavior** — the send button is disabled while a run is in flight. +-There is no cancel button; that is a known open defect (D3 in +-`promotion/PROMOTION_LOG.md`). ++**Failure behavior** — while a response runs, Send gives way to Stop response. ++Stop ends its display updates and preserves completed work; it does not undo ++already computed or external work. Incomplete responses offer explicit Retry ++through the existing runtime. Retry is never automatic; this local demo does ++not certify provider cancellation. + **Next** — Step 4 receives the message. + + --- +@@ -236,7 +238,7 @@ The four names are `collect_context`, `search_synthesize`, + + **Core code** + ```ts +-// registration — src/features/node-agent/components/toolUIs.tsx:55 ++// registration — src/features/node-agent/components/toolUIs.tsx:61 + const ContextToolUI = makeAssistantToolUI<{ focus: string }, ContextToolResult>({ + toolName: "collect_context", + +@@ -345,19 +347,24 @@ function safe(step: AgentStep, fn: () => T, fallback: T): T { + } + ``` + +-**Be told this plainly, because the UI does not tell you:** +- +-- **There is no error state on screen.** `nodeAgentChatAdapter.run` has no +- `catch`, and no component in the tree is a React error boundary. A throw inside +- a rendered child unmounts the whole app to a blank page. That is exactly how +- defect D1 presented. +-- **There is no stop, cancel, or retry.** While a run is in flight the page has +- one button, `Send`, and it is disabled. A user whose run misbehaves can only +- reload, which discards the thread. Open as **D3**. ++**Response recovery and remaining limits:** ++ ++- **Adapter failures are visible.** The existing assistant-ui runtime marks the ++ response incomplete; the thread presents a constant failure message, marks ++ unfinished tool cards failed, and offers explicit Retry. Earlier results stay. ++- **Stop response ends display updates.** It preserves completed work and cannot ++ undo computation already performed by the local adapter or external work. ++ Retry replaces the current response through the native runtime, runs only on ++ an explicit action, and rejects duplicate immediate activation. ++- **Rendering exceptions remain separate.** There is still no React render-error ++ boundary; a throw in a rendered child can unmount the app, as defect D1 showed. + - **"New Thread" does not exist here.** This runtime holds a single thread. ++ Reload discards the browser conversation. + +-These are recorded, with reproductions, in `promotion/PROMOTION_LOG.md` and +-scored in `promotion/PRODUCT_GOAL.md` (conditions 2 and 5, both FAIL). ++`promotion/PROMOTION_LOG.md` and `promotion/PRODUCT_GOAL.md` preserve their ++historical defect reproductions and grades. Read `HANDOFF.md` for the current ++D3 proof and remaining limits; no provider cancellation or full UI grade is ++certified by this local response-recovery work. + + **Input** — a step body that may throw. + **Output** — the fallback value, with the step marked `error`. +@@ -420,7 +427,7 @@ byte-stable. + | Change how sources are ranked | `searchAndSynthesize.ts` (`W_GROUNDING`, `W_RETRIEVAL`) | `npm test` | + | Change how a tool card looks | `components/toolUIs.tsx` | `npm run dev` | + | Add a fifth step | `nodeAgentRuntime.ts`, then a name in `toolUIs.tsx` **and** `nodeAgentChatAdapter.ts` | `npm test && npm run e2e:journey` | +-| Give the app an error state | `NodeAgentDemoApp.tsx` (add a boundary) + `nodeAgentChatAdapter.ts` (add a catch) | `npm run e2e:journey` | ++| Change response recovery | `components/NodeAgentThread.tsx` + `components/toolUIs.tsx` | `node e2e/current-consumer-recovery-proof.mjs "" ""` | + + Adding a step means touching three files, and the two name lists in Step 6 must + agree. That is the sharpest edge in this codebase. diff --git a/evidence/current-consumer-20260905/operator/d3-final-secret-scan.stderr b/evidence/current-consumer-20260905/operator/d3-final-secret-scan.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-final-secret-scan.stdout b/evidence/current-consumer-20260905/operator/d3-final-secret-scan.stdout new file mode 100644 index 0000000..7d06b12 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-secret-scan.stdout @@ -0,0 +1,5 @@ + +> nodeagent@0.1.0 secret-scan +> node scripts/secret-scan.mjs + +✓ SECRET-SCAN: clean — scanned 1177 files, no secrets, no tracked dotenv. diff --git a/evidence/current-consumer-20260905/operator/d3-final-test.stderr b/evidence/current-consumer-20260905/operator/d3-final-test.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-final-test.stdout b/evidence/current-consumer-20260905/operator/d3-final-test.stdout new file mode 100644 index 0000000..6f808df --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-test.stdout @@ -0,0 +1,20 @@ + +> nodeagent@0.1.0 test +> vitest run + + + RUN  v2.1.9 D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905 + + ✓ tests/omnigentAdapter.test.ts (2 tests) 4ms + ✓ tests/spreadsheetDelta.test.ts (13 tests) 8ms + ✓ tests/searchSynthesize.test.ts (10 tests) 7ms + ✓ tests/reasoningFrameRunner.test.ts (2 tests) 5ms + ✓ tests/durableRuntime.test.ts (4 tests) 7ms + ✓ tests/nodeAgentRuntime.test.ts (8 tests) 5ms + ✓ tests/sqliteDurableRuntime.test.ts (2 tests) 82ms + + Test Files  7 passed (7) + Tests  41 passed (41) + Start at  01:31:01 + Duration  870ms (transform 361ms, setup 0ms, collect 1.04s, tests 118ms, environment 1ms, prepare 913ms) + diff --git a/evidence/current-consumer-20260905/operator/d3-final-tours-validate.stderr b/evidence/current-consumer-20260905/operator/d3-final-tours-validate.stderr new file mode 100644 index 0000000..5e5c840 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-tours-validate.stderr @@ -0,0 +1,5 @@ +tours validate: FAIL + - 01-primary-user-flow.tour step 5: src/features/node-agent/components/NodeAgentThread.tsx:91 does not contain its anchor "". Rebuild with `npm run tours:build`. + - docs/START_HERE.md:119: src/features/node-agent/components/NodeAgentThread.tsx:84 holds "you watch each step render inline.", but the snippet opens with "" + - docs/START_HERE.md:239: src/features/node-agent/components/toolUIs.tsx:55 holds "{!running && children ?
{children}
: null}", but the snippet opens with "const ContextToolUI = makeAssistantToolUI<{ focus: string }, ContextToolResult>({" diff --git a/evidence/current-consumer-20260905/operator/d3-final-tours-validate.stdout b/evidence/current-consumer-20260905/operator/d3-final-tours-validate.stdout new file mode 100644 index 0000000..323c556 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-tours-validate.stdout @@ -0,0 +1,4 @@ + +> nodeagent@0.1.0 tours:validate +> node scripts/validate-tours.mjs + diff --git a/evidence/current-consumer-20260905/operator/d3-final-typecheck.command.json b/evidence/current-consumer-20260905/operator/d3-final-typecheck.command.json new file mode 100644 index 0000000..50e7d40 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-typecheck.command.json @@ -0,0 +1,9 @@ +{ + "command": [ + "npm.cmd", + "run", + "typecheck" + ], + "exit": 0, + "seconds": 2.304358720779419 +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-final-typecheck.stderr b/evidence/current-consumer-20260905/operator/d3-final-typecheck.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-final-typecheck.stdout b/evidence/current-consumer-20260905/operator/d3-final-typecheck.stdout new file mode 100644 index 0000000..152bef3 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-final-typecheck.stdout @@ -0,0 +1,4 @@ + +> nodeagent@0.1.0 typecheck +> tsc --noEmit + diff --git a/evidence/current-consumer-20260905/operator/d3-first-typecheck.stderr b/evidence/current-consumer-20260905/operator/d3-first-typecheck.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-first-typecheck.stdout b/evidence/current-consumer-20260905/operator/d3-first-typecheck.stdout new file mode 100644 index 0000000..152bef3 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-first-typecheck.stdout @@ -0,0 +1,4 @@ + +> nodeagent@0.1.0 typecheck +> tsc --noEmit + diff --git a/evidence/current-consumer-20260905/operator/d3-focus-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt b/evidence/current-consumer-20260905/operator/d3-focus-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt new file mode 100644 index 0000000..903026f --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-focus-before/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt @@ -0,0 +1,136 @@ +import { + ActionBarPrimitive, + AuiIf, + AssistantRuntimeProvider, + ComposerPrimitive, + MessagePrimitive, + ThreadPrimitive, + useLocalRuntime, +} from "@assistant-ui/react"; +import { Github, KeyRound, SendHorizontal, Sparkles } from "lucide-react"; +import { nodeAgentLocalAdapter, SUGGESTED_PROMPT } from "./nodeAgentLocalAdapter.js"; +import { NodeAgentToolUIs } from "./toolUIs.jsx"; + +function UserMessage() { + return ( + +
+ +
+
+ ); +} + +function AssistantMessage() { + return ( + + +
+ + s.message.status?.type === "incomplete" && (s.message.status.reason === "cancelled" || s.message.status.reason === "error")}> +
+ s.message.status?.type === "incomplete" && s.message.status.reason === "cancelled"}> +

Stopped this response. Completed work is kept.

+
+ +

This response failed. Earlier results are kept.

+
+ Retry response +
+
+
+
+ ); +} + +function NodeAgentThread() { + return ( + + + snapshot.thread.isEmpty}> +
+ +

No-key local agent

+

Ask the room. Watch the work.

+

+ NodeAgent gathers context, checks sources, applies a model delta, + and writes the memo as inline tool cards. The default adapter is + scripted so the first run needs no API keys. +

+
+ + Run the MVP proof + + + Find the next check + +
+
+
+ + + {({ message }) => (message.role === "user" ? : )} + + + + + + !s.thread.isRunning}> + + + + s.thread.isRunning}> + + Stop + + + +

Scripted local adapter. Replace it with a server route when credentials exist.

+
+
+
+ ); +} + +export function NodeAgentChatApp() { + const runtime = useLocalRuntime(nodeAgentLocalAdapter); + + return ( + + +
+
+
+ NA +
+ NodeAgent + portable chat UI +
+
+
+ + + + +
+
+
+ +
+
+
+ ); +} diff --git a/evidence/current-consumer-20260905/operator/d3-focus-before/src/features/node-agent/components/NodeAgentThread.tsx.txt b/evidence/current-consumer-20260905/operator/d3-focus-before/src/features/node-agent/components/NodeAgentThread.tsx.txt new file mode 100644 index 0000000..274aa2a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-focus-before/src/features/node-agent/components/NodeAgentThread.tsx.txt @@ -0,0 +1,122 @@ +/** + * NodeAgentThread — a custom-styled assistant-ui Thread. + * + * Built from assistant-ui's headless primitives (`ThreadPrimitive`, + * `MessagePrimitive`, `ComposerPrimitive`) and themed with the NodeBench design + * DNA — no Tailwind, no shadcn. The assistant's message renders text plus the + * four tool UIs inline (registered in toolUIs.tsx). + */ + +import { + ActionBarPrimitive, + AuiIf, + ComposerPrimitive, + MessagePrimitive, + ThreadPrimitive, +} from "@assistant-ui/react"; +import { DEMO_QUESTION } from "../demoScenario"; + +function UserMessage() { + return ( + +
+ +
+
+ ); +} + +function AssistantMessage() { + return ( + + + ◆ + +
+ + s.message.status?.type === "incomplete" && (s.message.status.reason === "cancelled" || s.message.status.reason === "error")}> +
+ s.message.status?.type === "incomplete" && s.message.status.reason === "cancelled"}> +

Stopped this response. Completed work is kept.

+
+ +

This response failed. Earlier results are kept.

+
+ Retry response +
+
+
+
+ ); +} + +export function NodeAgentThread() { + return ( + + + s.thread.isEmpty}> +
+ + ◆ + +

Ask the room

+

+ NodeAgent gathers the relevant context, finds the right document for the right + answer, updates the model as a versioned delta, and writes the cited memo — and + you watch each step render inline. +

+
+ + Does our wedge hold + survive 18 months? → + + + What changed since last update? → + +
+
+
+ + + {({ message }) => + message.role === "user" ? : + } + + + + + + !s.thread.isRunning}> + + ↑ + + + s.thread.isRunning}> + + Stop + + + +

+ Deterministic demo — no keys. The agent runs the real ported modules over a fixed + scenario. +

+
+
+
+ ); +} diff --git a/evidence/current-consumer-20260905/operator/d3-generated-boundary-01.command.json b/evidence/current-consumer-20260905/operator/d3-generated-boundary-01.command.json new file mode 100644 index 0000000..c547e35 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-boundary-01.command.json @@ -0,0 +1,4 @@ +{ + "exit": 0, + "seconds": 8.595928430557251 +} diff --git a/evidence/current-consumer-20260905/operator/d3-generated-boundary-01.stderr b/evidence/current-consumer-20260905/operator/d3-generated-boundary-01.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-generated-boundary-01.stdout b/evidence/current-consumer-20260905/operator/d3-generated-boundary-01.stdout new file mode 100644 index 0000000..a53a2d0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-boundary-01.stdout @@ -0,0 +1 @@ +{"completed":true,"cells":[{"width":390,"hasStop":false,"hasErrorNotice":false,"hasRetry":false,"retainedCards":4},{"width":1440,"hasStop":false,"hasErrorNotice":false,"hasRetry":false,"retainedCards":4}]} diff --git a/evidence/current-consumer-20260905/operator/d3-generated-boundary-02.command.json b/evidence/current-consumer-20260905/operator/d3-generated-boundary-02.command.json new file mode 100644 index 0000000..4992a59 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-boundary-02.command.json @@ -0,0 +1,4 @@ +{ + "exit": 0, + "seconds": 8.931000709533691 +} diff --git a/evidence/current-consumer-20260905/operator/d3-generated-boundary-02.stderr b/evidence/current-consumer-20260905/operator/d3-generated-boundary-02.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-generated-boundary-02.stdout b/evidence/current-consumer-20260905/operator/d3-generated-boundary-02.stdout new file mode 100644 index 0000000..a53a2d0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-boundary-02.stdout @@ -0,0 +1 @@ +{"completed":true,"cells":[{"width":390,"hasStop":false,"hasErrorNotice":false,"hasRetry":false,"retainedCards":4},{"width":1440,"hasStop":false,"hasErrorNotice":false,"hasRetry":false,"retainedCards":4}]} diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.command.json b/evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.command.json new file mode 100644 index 0000000..98eae89 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.command.json @@ -0,0 +1,8 @@ +{ + "command": [ + "node", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-generated-d3-matched-after.mjs" + ], + "exit": 0, + "seconds": 8.838930368423462 +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.stderr b/evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.stdout b/evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.stdout new file mode 100644 index 0000000..da93e88 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after-replay.stdout @@ -0,0 +1 @@ +{"completed":true,"cells":[{"width":390,"hasStop":true,"hasErrorNotice":true,"hasRetry":true,"retainedCards":4},{"width":1440,"hasStop":true,"hasErrorNotice":true,"hasRetry":true,"retainedCards":4}]} diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after.command.json b/evidence/current-consumer-20260905/operator/d3-generated-matched-after.command.json new file mode 100644 index 0000000..cff2af4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after.command.json @@ -0,0 +1,8 @@ +{ + "command": [ + "node", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\capture-generated-d3-matched-after.mjs" + ], + "exit": 1, + "seconds": 0.08864617347717285 +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after.stderr b/evidence/current-consumer-20260905/operator/d3-generated-matched-after.stderr new file mode 100644 index 0000000..57cc9ca --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after.stderr @@ -0,0 +1,16 @@ +file:///C:/Users/hshum/.codex/worktrees/5dba/nodebench-ai/docs/plans/portfolio-recovery-20260904/E6e-nodeagent-current-consumer/capture-generated-d3-matched-after.mjs:14 +const consumerHashes=async()=>Object.fromEntries(await Promise.all(['package.json','package-lock.json','index.html','vite.config.mjs','src/main.jsx','src/styles.css','src/nodeagent-chat/NodeAgentChatApp.jsx','src/nodeagent-chat/nodeAgentLocalAdapter.js','src/nodeagent-chat/toolUIs.jsx'].map(async f=>[f,sha(await readFile(path.join(roots.generated,f)))])))); + ^ + +SyntaxError: Unexpected token ')' + at compileSourceTextModule (node:internal/modules/esm/utils:346:16) + at ModuleLoader.moduleStrategy (node:internal/modules/esm/translators:107:18) + at #translate (node:internal/modules/esm/loader:546:20) + at afterLoad (node:internal/modules/esm/loader:596:29) + at ModuleLoader.loadAndTranslate (node:internal/modules/esm/loader:601:12) + at #createModuleJob (node:internal/modules/esm/loader:624:36) + at #getJobFromResolveResult (node:internal/modules/esm/loader:343:34) + at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:311:41) + at async onImport.tracePromise.__proto__ (node:internal/modules/esm/loader:664:25) + +Node.js v22.22.2 diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after.stdout b/evidence/current-consumer-20260905/operator/d3-generated-matched-after.stdout new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.after.html b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.after.html new file mode 100644 index 0000000..b1958f1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.after.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.before.html b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.before.html new file mode 100644 index 0000000..b1958f1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.html b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.html new file mode 100644 index 0000000..b1958f1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.png b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.png new file mode 100644 index 0000000..46dbda4 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.after.html b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.after.html new file mode 100644 index 0000000..5c4ebee --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.after.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.before.html b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.before.html new file mode 100644 index 0000000..5c4ebee --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.html b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.html new file mode 100644 index 0000000..5c4ebee --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.png b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.png new file mode 100644 index 0000000..c57518a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-error-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.after.html b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.after.html new file mode 100644 index 0000000..23444c1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.after.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.before.html b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.before.html new file mode 100644 index 0000000..23444c1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.html b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.html new file mode 100644 index 0000000..23444c1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.png b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.png new file mode 100644 index 0000000..21de4f2 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.after.html b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.after.html new file mode 100644 index 0000000..a947f79 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.after.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.before.html b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.before.html new file mode 100644 index 0000000..a947f79 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.before.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.html b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.html new file mode 100644 index 0000000..a947f79 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.png b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.png new file mode 100644 index 0000000..7b98f9f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/generated-running-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-generated-matched-after/report.json b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/report.json new file mode 100644 index 0000000..15655f8 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-generated-matched-after/report.json @@ -0,0 +1,742 @@ +{ + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "purpose": "Exact original generated before fixtures at390/1440x960 against final installed consumer. Screenshot-only iterator hold; ordinary unheld Stop is proven separately.", + "scriptSha256": "c2ca4153af05e4e128d6cd6fb38258e6dc9827f48dafa13f5119f8aa40d6af4b", + "startedAt": "2026-09-05T09:06:57.149Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "cells": [ + { + "kind": "generated", + "width": 390, + "errors": [ + { + "message": "PROOF FIXTURE: the current adapter failed before its next result.", + "stack": "Error: PROOF FIXTURE: the current adapter failed before its next result.\n at m.nodeAgentLocalAdapter.run (eval at evaluate (:311:30), :1:222)\n at m.nodeAgentLocalAdapter.run.next ()\n at LocalThreadRuntimeCore.performRoundtrip (http://127.0.0.1:63727/node_modules/.vite/deps/@assistant-ui_react.js?v=88aa6030:13498:72)\n at async LocalThreadRuntimeCore.startRun (http://127.0.0.1:63727/node_modules/.vite/deps/@assistant-ui_react.js?v=88aa6030:13407:19)\n at async LocalThreadRuntimeCore.append (http://127.0.0.1:63727/node_modules/.vite/deps/@assistant-ui_react.js?v=88aa6030:13363:54)" + } + ], + "captures": [ + { + "name": "generated-running-390", + "pngSha256": "c3c92b4a3907ad40dbc766b7d20ac8449228fcbeb6f47e1cacb1962b2330314e", + "state": { + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "scrollWidth": 390, + "width": 390, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ] + } + }, + { + "name": "generated-error-390", + "pngSha256": "b36a7a967eef092af86ff1417cc142b8182bf05e335915027c18b31f530e95e2", + "state": { + "text": "NA\nNodeAgent\nportable chat UI\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE: inspect failure recovery without losing the earlier four results.\n\nNA\n\nPROOF FIXTURE: checking the previous local result.\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "scrollWidth": 390, + "width": 390, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + } + ], + "fixture": "Actual installed generated no-key adapter, with iterator paused after its actual first running tool frame solely to settle screenshots; then explicit in-memory one-run adapter throw.", + "question": "Does the local NodeAgent wedge hold for an MVP?", + "hasStop": true, + "hasErrorNotice": true, + "hasRetry": true, + "retainedCards": 4 + }, + { + "kind": "generated", + "width": 1440, + "errors": [ + { + "message": "PROOF FIXTURE: the current adapter failed before its next result.", + "stack": "Error: PROOF FIXTURE: the current adapter failed before its next result.\n at m.nodeAgentLocalAdapter.run (eval at evaluate (:311:30), :1:222)\n at m.nodeAgentLocalAdapter.run.next ()\n at LocalThreadRuntimeCore.performRoundtrip (http://127.0.0.1:63727/node_modules/.vite/deps/@assistant-ui_react.js?v=88aa6030:13498:72)\n at async LocalThreadRuntimeCore.startRun (http://127.0.0.1:63727/node_modules/.vite/deps/@assistant-ui_react.js?v=88aa6030:13407:19)\n at async LocalThreadRuntimeCore.append (http://127.0.0.1:63727/node_modules/.vite/deps/@assistant-ui_react.js?v=88aa6030:13363:54)" + } + ], + "captures": [ + { + "name": "generated-running-1440", + "pngSha256": "4f9cb8fedbf3fb25f07292e9624c521a078c1cce713fe440b36d8479b8a409cc", + "state": { + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nRunning local NodeAgent for: Does the local NodeAgent wedge hold for an MVP?\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "scrollWidth": 1440, + "width": 1440, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ] + } + }, + { + "name": "generated-error-1440", + "pngSha256": "5a572d368b6e666892fa186814393ec7db29a4801bf9a048fcb9a74b84391528", + "state": { + "text": "NA\nNodeAgent\nportable chat UI\nno keys\n\nDoes the local NodeAgent wedge hold for an MVP?\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE: inspect failure recovery without losing the earlier four results.\n\nNA\n\nPROOF FIXTURE: checking the previous local result.\n\nThis response failed. Earlier results are kept.\n\nRetry response\n\nScripted local adapter. Replace it with a server route when credentials exist.", + "scrollWidth": 1440, + "width": 1440, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + } + ], + "fixture": "Actual installed generated no-key adapter, with iterator paused after its actual first running tool frame solely to settle screenshots; then explicit in-memory one-run adapter throw.", + "question": "Does the local NodeAgent wedge hold for an MVP?", + "hasStop": true, + "hasErrorNotice": true, + "hasRetry": true, + "retainedCards": 4 + } + ], + "requests": [ + { + "url": "http://127.0.0.1:63727/", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/@vite/client", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/src/main.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/@react-refresh", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/src/styles.css", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/@vite/client", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/src/main.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/@react-refresh", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/src/styles.css", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "url": "http://127.0.0.1:63727/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + } + ], + "grade": null, + "sourceAfter": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerAfter": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "completed": true, + "finishedAt": "2026-09-05T09:07:05.400Z" +} diff --git a/evidence/current-consumer-20260905/operator/d3-handoff-packaged-before.md.txt b/evidence/current-consumer-20260905/operator/d3-handoff-packaged-before.md.txt new file mode 100644 index 0000000..c395bdb --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-handoff-packaged-before.md.txt @@ -0,0 +1,24 @@ +# NodeAgent developer handoff + +Read this file first, then [the runtime walkthrough](docs/START_HERE.md). This candidate starts from canonical `4e525fd0`; the separately preserved Pi draft is not integrated. + +A developer can run the repository's local scenario and generate a separate chat application without credentials. The generated chat is scripted, including its displayed confidence numbers. Its browser conversation resets on reload. The library's durable/SQLite demonstration is a separate integration and does not persist the browser chat. + +Use Node 22; this receipt used Node 22.22.2. From the repository run `npm ci`, `npm test` and `npm run build`. The current 41 tests and build pass. To generate a consumer, run `npm pack`, install that exact tarball in a new empty npm project, then use its installed CLI: + +```powershell +node node_modules/nodeagent/bin/nodeagent.mjs doctor +node node_modules/nodeagent/bin/nodeagent.mjs apps scaffold chat-ui --dir "../NodeAgent Chat" --auto +Set-Location "../NodeAgent Chat" +npm run dev +``` + +`--auto` performs normal install, demo, smoke and build. Keep the included template lock; use `npm ci` for repeatable reinstall. Reusing an existing target refuses before writing unless a developer explicitly selects the existing force option. This proof verified refusal and preservation without force. + +The original unlocked template resolved newer assistant-ui dependencies and failed its first real prompt despite smoke/build passing. A tested compatible template lock now preserves the canonical dependency cohort. The normally packed and installed locked consumer passed 59 browser checks, 25 captures at 320/390/768/1024/1440/1920, pointer/keyboard submission, duplicate Enter during a run, eight sequential turns/32 cards in 13.94 seconds and reload reset. This is bounded local interaction evidence, not production longevity or a complete visual grade. + +Separate offline frame/durable/SQLite runs completed. SQLite reopened the retained database and replayed the same frame with one journal entry; lease exclusion, expiry recovery and fencing passed. Run the existing `nodeagent:frame:smoke`, `nodeagent:durable:smoke` and `nodeagent:sqlite:smoke` commands for that library integration. Their fixture-derived confidence is not an external provider measurement. + +Open limits: both source and generated chat lack designed Stop/error/retry controls at this checkpoint; a separately reviewed D3 slice is pending. Full UI/accessibility/performance grades remain null. No provider, Convex, login, external-host hook, deployment or Pi capability was activated by this proof. Source full audit reports nine development advisories; the generated locked app reports four development advisories (three high, one low). Both production-only audits report zero. Those full-audit findings remain open. + +Dependency proof and the D3 before state are retained in the operator portfolio packet under `E6e-nodeagent-current-consumer`; portable evidence will accompany the final reviewed slice. The dependency receipt stays historical and separate if response recovery changes the UI next. diff --git a/evidence/current-consumer-20260905/operator/d3-host-install-02.stderr b/evidence/current-consumer-20260905/operator/d3-host-install-02.stderr new file mode 100644 index 0000000..5b68026 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-host-install-02.stderr @@ -0,0 +1 @@ +npm warn deprecated prebuild-install@7.1.3: No longer maintained. Please contact the author of the relevant native addon; alternatives are available. diff --git a/evidence/current-consumer-20260905/operator/d3-host-install-02.stdout b/evidence/current-consumer-20260905/operator/d3-host-install-02.stdout new file mode 100644 index 0000000..704f169 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-host-install-02.stdout @@ -0,0 +1,7 @@ + +added 153 packages, and audited 154 packages in 17s + +13 packages are looking for funding + run `npm fund` for details + +found 0 vulnerabilities diff --git a/evidence/current-consumer-20260905/operator/d3-host-install-03.stderr b/evidence/current-consumer-20260905/operator/d3-host-install-03.stderr new file mode 100644 index 0000000..5b68026 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-host-install-03.stderr @@ -0,0 +1 @@ +npm warn deprecated prebuild-install@7.1.3: No longer maintained. Please contact the author of the relevant native addon; alternatives are available. diff --git a/evidence/current-consumer-20260905/operator/d3-host-install-03.stdout b/evidence/current-consumer-20260905/operator/d3-host-install-03.stdout new file mode 100644 index 0000000..17260d7 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-host-install-03.stdout @@ -0,0 +1,7 @@ + +added 153 packages, and audited 154 packages in 16s + +13 packages are looking for funding + run `npm fund` for details + +found 0 vulnerabilities diff --git a/evidence/current-consumer-20260905/operator/d3-host-install.stderr b/evidence/current-consumer-20260905/operator/d3-host-install.stderr new file mode 100644 index 0000000..5b68026 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-host-install.stderr @@ -0,0 +1 @@ +npm warn deprecated prebuild-install@7.1.3: No longer maintained. Please contact the author of the relevant native addon; alternatives are available. diff --git a/evidence/current-consumer-20260905/operator/d3-host-install.stdout b/evidence/current-consumer-20260905/operator/d3-host-install.stdout new file mode 100644 index 0000000..0270a79 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-host-install.stdout @@ -0,0 +1,7 @@ + +added 153 packages, and audited 154 packages in 14s + +13 packages are looking for funding + run `npm fund` for details + +found 0 vulnerabilities diff --git a/evidence/current-consumer-20260905/operator/d3-installed-consumer-02.json b/evidence/current-consumer-20260905/operator/d3-installed-consumer-02.json new file mode 100644 index 0000000..30df8d1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-installed-consumer-02.json @@ -0,0 +1,978 @@ +{ + "tarball": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery package 02\\nodeagent-0.1.0.tgz", + "tarballSha256": "3276c68114772476051df426e0ae8f19f37b3c3f6bdd40c923becc73b31106bc", + "sourceHead": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "sourceTarInstalledBindings": [ + { + "path": ".gitattributes", + "sha256": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5" + }, + { + "path": "examples/apps/local-dashboard/template/docs/eval/.gitkeep", + "sha256": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b" + }, + { + "path": "examples/apps/chat-ui/template/src/styles.css", + "sha256": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096" + }, + { + "path": "examples/apps/local-dashboard/template/src/styles.css", + "sha256": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a" + }, + { + "path": "src/app/styles.css", + "sha256": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8" + }, + { + "path": ".env.example", + "sha256": "cbe8a0df460b2a420d9ce3f2fc88261999f432374839ffe95d1ca5e8b116902e" + }, + { + "path": "examples/adapters/aws-dynamodb/.env.example", + "sha256": "43675a1deb0b3f9fb82256f19a497147a68809cbc6e5fca467b5679acf71d8f7" + }, + { + "path": "examples/adapters/cloudflare/.env.example", + "sha256": "bf4bb1cfe83fc48e895a23f1c8bd1c2f6b2730eab6864dde60df3475cffb68e1" + }, + { + "path": "examples/adapters/convex/.env.example", + "sha256": "ecbc47b8fba9ce00ec57f3506bd7519ef1d0c5af5de3e04eb652a7189ccff960" + }, + { + "path": "examples/adapters/postgres/.env.example", + "sha256": "eded16363fb6a59b73111ad262699ee33ab47d20abde1bf02ba5cecfc5d60e9f" + }, + { + "path": "examples/adapters/sqlite-local/.env.example", + "sha256": "1ee0e3f9ff3184fe6c4188238324ac81eb25bd099f66740063bdd0657c2f1a8e" + }, + { + "path": "examples/apps/chat-ui/template/.env.example", + "sha256": "87c08c127a703d1a0c959d1ecd6f7896f580f7cad7f0225d467d470acddb97a4" + }, + { + "path": "examples/apps/local-dashboard/template/.env.example", + "sha256": "8c474b226d4a2b29970f0ef817ff6b3c8a3e1b8706a850307d099d2c19d55863" + }, + { + "path": "examples/apps/minimal-portable-agent/.env.example", + "sha256": "c2e1fd0344b9bb9d776c7a14b9a0d1b700bf921d5c75643a7c61548e65ea8c9c" + }, + { + "path": "docs/media/live-graph-rail.gif", + "sha256": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e" + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif", + "sha256": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf" + }, + { + "path": "examples/apps/chat-ui/template/index.html", + "sha256": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50" + }, + { + "path": "examples/apps/local-dashboard/template/index.html", + "sha256": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0" + }, + { + "path": "index.html", + "sha256": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d" + }, + { + "path": "nodeagent-v1.html", + "sha256": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883" + }, + { + "path": "vendor/nodegraph-live/graph-model.js", + "sha256": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b" + }, + { + "path": "vendor/nodegraph-live/index.js", + "sha256": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969" + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "sha256": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js", + "sha256": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df" + }, + { + "path": "vendor/nodegraph-live/react.js", + "sha256": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff" + }, + { + "path": "vendor/nodegraph-live/session.js", + "sha256": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282" + }, + { + "path": "promotion/evidence/axe-initial-prefix.json", + "sha256": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644" + }, + { + "path": "promotion/evidence/axe-initial.json", + "sha256": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1" + }, + { + "path": "promotion/evidence/axe-populated-axe-1440.json", + "sha256": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1" + }, + { + "path": "promotion/evidence/axe-populated-keyboard-375.json", + "sha256": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064" + }, + { + "path": "promotion/evidence/axe-populated-prefix-keyboard-375.json", + "sha256": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2" + }, + { + "path": "promotion/evidence/baseline-observations.json", + "sha256": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63" + }, + { + "path": "examples/adapters/aws-dynamodb/iam-policy.template.json", + "sha256": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7" + }, + { + "path": "promotion/evidence/journey-1440-observations.json", + "sha256": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113" + }, + { + "path": "promotion/evidence/journey-375-observations.json", + "sha256": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab" + }, + { + "path": "promotion/evidence/journey-375-steering-observations.json", + "sha256": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335" + }, + { + "path": "promotion/evidence/journey-768-observations.json", + "sha256": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce" + }, + { + "path": "promotion/evidence/journey-960-observations.json", + "sha256": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c" + }, + { + "path": "promotion/evidence/journey-axe-1440-observations.json", + "sha256": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb" + }, + { + "path": "promotion/evidence/journey-keyboard-375-observations.json", + "sha256": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92" + }, + { + "path": "promotion/evidence/journey-prefix-375-observations.json", + "sha256": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f" + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-observations.json", + "sha256": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc" + }, + { + "path": "promotion/evidence/journey-wave3-1440-observations.json", + "sha256": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b" + }, + { + "path": "promotion/evidence/journey-wave3-375-observations.json", + "sha256": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468" + }, + { + "path": "knip.json", + "sha256": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500" + }, + { + "path": "promotion/evidence/lighthouse-desktop.json", + "sha256": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d" + }, + { + "path": "promotion/evidence/lighthouse-mobile.json", + "sha256": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1" + }, + { + "path": "examples/apps/chat-ui/template/public/nodeagent-chat-state.json", + "sha256": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda" + }, + { + "path": "docs/eval/nodeagent-chat-ui-scaffold-smoke.json", + "sha256": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd" + }, + { + "path": "docs/eval/nodeagent-convex-smoke.json", + "sha256": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26" + }, + { + "path": "docs/eval/nodeagent-durable-smoke.json", + "sha256": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272" + }, + { + "path": "docs/eval/nodeagent-frame-smoke.json", + "sha256": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79" + }, + { + "path": "docs/eval/nodeagent-happy-path-speed.json", + "sha256": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40" + }, + { + "path": "docs/eval/nodeagent-live-provider-smoke.json", + "sha256": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf" + }, + { + "path": "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json", + "sha256": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d" + }, + { + "path": "docs/eval/nodeagent-sqlite-smoke.json", + "sha256": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb" + }, + { + "path": "examples/apps/local-dashboard/template/public/nodeagent-state.json", + "sha256": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb" + }, + { + "path": "docs/eval/omnigent-nodeagent-smoke.json", + "sha256": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef" + }, + { + "path": "docs/eval/omnigent-official-cli-probe.json", + "sha256": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c" + }, + { + "path": "examples/apps/chat-ui/template/package-lock.json", + "sha256": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + { + "path": "examples/apps/chat-ui/template/package.json", + "sha256": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9" + }, + { + "path": "examples/apps/local-dashboard/template/package.json", + "sha256": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633" + }, + { + "path": "package.json", + "sha256": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e" + }, + { + "path": "tsconfig.json", + "sha256": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b" + }, + { + "path": "promotion/evidence/web-quality-audit-prefix.json", + "sha256": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc" + }, + { + "path": "promotion/evidence/web-quality-audit.json", + "sha256": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542" + }, + { + "path": "promotion/evidence/wig-review-prefix.json", + "sha256": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02" + }, + { + "path": "promotion/evidence/wig-review.json", + "sha256": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539" + }, + { + "path": "examples/adapters/cloudflare/wrangler.example.jsonc", + "sha256": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20" + }, + { + "path": "examples/apps/chat-ui/template/src/main.jsx", + "sha256": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f" + }, + { + "path": "examples/apps/local-dashboard/template/src/main.jsx", + "sha256": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f" + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "sha256": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1" + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "sha256": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts.map", + "sha256": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2" + }, + { + "path": "vendor/nodegraph-live/graph-model.js.map", + "sha256": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db" + }, + { + "path": "vendor/nodegraph-live/index.d.ts.map", + "sha256": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a" + }, + { + "path": "vendor/nodegraph-live/index.js.map", + "sha256": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts.map", + "sha256": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js.map", + "sha256": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776" + }, + { + "path": "vendor/nodegraph-live/react.d.ts.map", + "sha256": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab" + }, + { + "path": "vendor/nodegraph-live/react.js.map", + "sha256": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575" + }, + { + "path": "vendor/nodegraph-live/session.d.ts.map", + "sha256": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f" + }, + { + "path": "vendor/nodegraph-live/session.js.map", + "sha256": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881" + }, + { + "path": "examples/adapters/AGENTS.md", + "sha256": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9" + }, + { + "path": "examples/apps/chat-ui/template/AGENTS.md", + "sha256": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7" + }, + { + "path": "examples/apps/local-dashboard/template/AGENTS.md", + "sha256": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0" + }, + { + "path": "examples/apps/minimal-portable-agent/AGENTS.md", + "sha256": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df" + }, + { + "path": "docs/ARCHITECTURE.md", + "sha256": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055" + }, + { + "path": "docs/codebase/ARCHITECTURE.md", + "sha256": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99" + }, + { + "path": "docs/CHAT_UI_ADOPTION.md", + "sha256": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7" + }, + { + "path": "docs/codebase/CONCERNS.md", + "sha256": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb" + }, + { + "path": "docs/codebase/CONVENTIONS.md", + "sha256": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8" + }, + { + "path": "docs/DEMO_SCRIPT.md", + "sha256": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2" + }, + { + "path": "docs/DURABLE_RUNTIME.md", + "sha256": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76" + }, + { + "path": "docs/FEATURE_PROOF_STORYBOARD.md", + "sha256": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6" + }, + { + "path": "docs/GRAPH_INTEGRATION.md", + "sha256": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1" + }, + { + "path": "HANDOFF.md", + "sha256": "17e983697edaf77f341bf588e4618e0cb53f46d6e04ef8e8f9f4914c3ab00d98" + }, + { + "path": "docs/codebase/INTEGRATIONS.md", + "sha256": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06" + }, + { + "path": "docs/LOCAL_DASHBOARD_WALKTHROUGH.md", + "sha256": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847" + }, + { + "path": "docs/MIGRATION_MAP.md", + "sha256": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a" + }, + { + "path": "NODE-LOOPS.md", + "sha256": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80" + }, + { + "path": "docs/OMNIGENT_INTEGRATION.md", + "sha256": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0" + }, + { + "path": "promotion/PRODUCT_GOAL.md", + "sha256": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812" + }, + { + "path": "promotion/PRODUCT_JOURNEYS.md", + "sha256": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9" + }, + { + "path": "promotion/PROMOTION_LOG.md", + "sha256": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f" + }, + { + "path": "docs/PUSH_TO_GITHUB.md", + "sha256": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2" + }, + { + "path": "examples/adapters/aws-dynamodb/README.md", + "sha256": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4" + }, + { + "path": "examples/adapters/cloudflare/README.md", + "sha256": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e" + }, + { + "path": "examples/adapters/convex/README.md", + "sha256": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b" + }, + { + "path": "examples/adapters/postgres/README.md", + "sha256": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434" + }, + { + "path": "examples/adapters/README.md", + "sha256": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2" + }, + { + "path": "examples/adapters/sqlite-local/README.md", + "sha256": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02" + }, + { + "path": "examples/apps/aws-hackathon-visual-labs/README.md", + "sha256": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df" + }, + { + "path": "examples/apps/chat-ui/README.md", + "sha256": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9" + }, + { + "path": "examples/apps/chat-ui/template/README.md", + "sha256": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b" + }, + { + "path": "examples/apps/local-dashboard/README.md", + "sha256": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1" + }, + { + "path": "examples/apps/local-dashboard/template/README.md", + "sha256": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761" + }, + { + "path": "examples/apps/local-design-dashboard/README.md", + "sha256": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc" + }, + { + "path": "examples/apps/minimal-portable-agent/README.md", + "sha256": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7" + }, + { + "path": "examples/apps/README.md", + "sha256": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94" + }, + { + "path": "examples/apps/video-agent-pipeline/README.md", + "sha256": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92" + }, + { + "path": "README.md", + "sha256": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140" + }, + { + "path": "vendor/nodegraph-live/README.md", + "sha256": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241" + }, + { + "path": "docs/SIMPLIFICATION_REPORT.md", + "sha256": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf" + }, + { + "path": "promotion/SKILLS.md", + "sha256": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797" + }, + { + "path": "docs/codebase/STACK.md", + "sha256": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef" + }, + { + "path": "docs/START_HERE.md", + "sha256": "e0adeb247191d8a894bf74989b714e7fdcfcf9c1f3d91e52b95db2ded5bcf341" + }, + { + "path": "docs/codebase/STRUCTURE.md", + "sha256": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511" + }, + { + "path": "docs/TECH_RETRO.md", + "sha256": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f" + }, + { + "path": "docs/codebase/TESTING.md", + "sha256": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0" + }, + { + "path": "promotion/WIG_REVIEW.md", + "sha256": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d" + }, + { + "path": "e2e/audit-web-quality.mjs", + "sha256": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf" + }, + { + "path": "scripts/build-tours.mjs", + "sha256": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db" + }, + { + "path": "e2e/capture-journey-at-width.mjs", + "sha256": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68" + }, + { + "path": "e2e/capture-live-graph-rail.mjs", + "sha256": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002" + }, + { + "path": "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs", + "sha256": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28" + }, + { + "path": "e2e/current-consumer-proof.mjs", + "sha256": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0" + }, + { + "path": "e2e/current-consumer-recovery-proof.mjs", + "sha256": "ed2a8ff8e0c034d534b2d5b1ca941735c71c0e4c091af7a6e48a5200503e6ecd" + }, + { + "path": "bin/nodeagent.mjs", + "sha256": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d" + }, + { + "path": "scripts/omnigent-official-probe.mjs", + "sha256": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924" + }, + { + "path": "e2e/record-live-graph-rail.mjs", + "sha256": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9" + }, + { + "path": "scripts/render-walkthrough-media.mjs", + "sha256": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7" + }, + { + "path": "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs", + "sha256": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f" + }, + { + "path": "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs", + "sha256": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50" + }, + { + "path": "scripts/secret-scan.mjs", + "sha256": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea" + }, + { + "path": "scripts/validate-tours.mjs", + "sha256": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46" + }, + { + "path": "examples/apps/chat-ui/template/vite.config.mjs", + "sha256": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a" + }, + { + "path": "examples/apps/local-dashboard/template/vite.config.mjs", + "sha256": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984" + }, + { + "path": "e2e/wig-review.mjs", + "sha256": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155" + }, + { + "path": "docs/media/live-graph-rail.mp4", + "sha256": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c" + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4", + "sha256": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5" + }, + { + "path": "docs/screenshots/chat-desktop-empty.png", + "sha256": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a" + }, + { + "path": "docs/screenshots/chat-desktop-run.png", + "sha256": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e" + }, + { + "path": "docs/screenshots/chat-mobile-empty.png", + "sha256": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be" + }, + { + "path": "docs/screenshots/chat-mobile-run.png", + "sha256": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2" + }, + { + "path": "promotion/evidence/desktop-1440-agent-running.png", + "sha256": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535" + }, + { + "path": "promotion/evidence/desktop-1440-empty.png", + "sha256": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b" + }, + { + "path": "promotion/evidence/desktop-1440-keyboard-run.png", + "sha256": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7" + }, + { + "path": "promotion/evidence/desktop-1440-run.png", + "sha256": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35" + }, + { + "path": "promotion/evidence/desktop-1440-second-turn.png", + "sha256": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72" + }, + { + "path": "promotion/evidence/journey-1440-run.png", + "sha256": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3" + }, + { + "path": "promotion/evidence/journey-375-run.png", + "sha256": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b" + }, + { + "path": "promotion/evidence/journey-375-steering-run.png", + "sha256": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f" + }, + { + "path": "promotion/evidence/journey-768-run.png", + "sha256": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce" + }, + { + "path": "promotion/evidence/journey-960-run.png", + "sha256": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b" + }, + { + "path": "promotion/evidence/journey-axe-1440-run.png", + "sha256": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1" + }, + { + "path": "promotion/evidence/journey-keyboard-375-run.png", + "sha256": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148" + }, + { + "path": "promotion/evidence/journey-prefix-375-run.png", + "sha256": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510" + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-run.png", + "sha256": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b" + }, + { + "path": "promotion/evidence/journey-wave3-1440-run.png", + "sha256": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e" + }, + { + "path": "promotion/evidence/journey-wave3-375-run.png", + "sha256": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca" + }, + { + "path": "docs/media/live-graph-rail.png", + "sha256": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d" + }, + { + "path": "docs/screenshots/local-dashboard-builder-locked.png", + "sha256": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85" + }, + { + "path": "docs/screenshots/local-dashboard-overview.png", + "sha256": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248" + }, + { + "path": "promotion/evidence/mobile-375-empty.png", + "sha256": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820" + }, + { + "path": "promotion/evidence/mobile-375-run.png", + "sha256": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510" + }, + { + "path": "promotion/evidence/proto-1440-load.png", + "sha256": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7" + }, + { + "path": "promotion/evidence/proto-375-load.png", + "sha256": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80" + }, + { + "path": "promotion/evidence/proto-375-run.png", + "sha256": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d" + }, + { + "path": "docs/screenshots/proto-desktop-empty.png", + "sha256": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482" + }, + { + "path": "docs/screenshots/proto-desktop-run.png", + "sha256": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9" + }, + { + "path": "docs/screenshots/proto-mobile-empty.png", + "sha256": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0" + }, + { + "path": "docs/screenshots/proto-mobile-run.png", + "sha256": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da" + }, + { + "path": "promotion/evidence/wig-desktop-1440.png", + "sha256": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782" + }, + { + "path": "promotion/evidence/wig-mobile-375.png", + "sha256": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b" + }, + { + "path": "promotion/evidence/wig-prefix-desktop-1440.png", + "sha256": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e" + }, + { + "path": "promotion/evidence/wig-prefix-mobile-375.png", + "sha256": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf" + }, + { + "path": "examples/adapters/postgres/schema.sql", + "sha256": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0" + }, + { + "path": "examples/adapters/sqlite-local/schema.sql", + "sha256": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c" + }, + { + "path": ".tours/01-primary-user-flow.tour", + "sha256": "a0e40ef53b606e3249c46002cfaf04c6741859b07d808bad6474287e6a897f1b" + }, + { + "path": ".tours/02-agent-execution.tour", + "sha256": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37" + }, + { + "path": ".tours/03-debug-and-recovery.tour", + "sha256": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94" + }, + { + "path": "src/features/node-agent/graph/agentGraphSession.ts", + "sha256": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389" + }, + { + "path": "src/features/spreadsheet/applySpreadsheetDelta.ts", + "sha256": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9" + }, + { + "path": "src/features/chat/contextCollector.ts", + "sha256": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94" + }, + { + "path": "src/features/node-agent/demoScenario.ts", + "sha256": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d" + }, + { + "path": "tests/durableRuntime.test.ts", + "sha256": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873" + }, + { + "path": "src/features/node-agent/runtime/durableRuntime.ts", + "sha256": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c" + }, + { + "path": "scripts/example-guidance-smoke.ts", + "sha256": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53" + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts", + "sha256": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c" + }, + { + "path": "vendor/nodegraph-live/index.d.ts", + "sha256": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47" + }, + { + "path": "scripts/nodeagent-chat-ui-scaffold-smoke.ts", + "sha256": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0" + }, + { + "path": "scripts/nodeagent-cli.ts", + "sha256": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6" + }, + { + "path": "scripts/nodeagent-convex-smoke.ts", + "sha256": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039" + }, + { + "path": "scripts/nodeagent-durable-smoke.ts", + "sha256": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21" + }, + { + "path": "scripts/nodeagent-frame-smoke.ts", + "sha256": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3" + }, + { + "path": "scripts/nodeagent-live-provider-smoke.ts", + "sha256": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282" + }, + { + "path": "scripts/nodeagent-local-dashboard-scaffold-smoke.ts", + "sha256": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f" + }, + { + "path": "scripts/nodeagent-sqlite-smoke.ts", + "sha256": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf" + }, + { + "path": "src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "sha256": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9" + }, + { + "path": "tests/nodeAgentRuntime.test.ts", + "sha256": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725" + }, + { + "path": "src/features/node-agent/runtime/nodeAgentRuntime.ts", + "sha256": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf" + }, + { + "path": "src/features/node-agent/types/nodeAgentTypes.ts", + "sha256": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts", + "sha256": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141" + }, + { + "path": "src/features/notebook/notebookEditor.ts", + "sha256": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456" + }, + { + "path": "scripts/omnigent-nodeagent-smoke.ts", + "sha256": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34" + }, + { + "path": "tests/omnigentAdapter.test.ts", + "sha256": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99" + }, + { + "path": "src/features/node-agent/runtime/omnigentAdapter.ts", + "sha256": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d" + }, + { + "path": "vendor/nodegraph-live/react.d.ts", + "sha256": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd" + }, + { + "path": "tests/reasoningFrameRunner.test.ts", + "sha256": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54" + }, + { + "path": "src/features/node-agent/runtime/reasoningFrameRunner.ts", + "sha256": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12" + }, + { + "path": "demo/runNodeAgentDemo.ts", + "sha256": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952" + }, + { + "path": "convex/schema.ts", + "sha256": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b" + }, + { + "path": "src/features/search/searchAndSynthesize.ts", + "sha256": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c" + }, + { + "path": "tests/searchSynthesize.test.ts", + "sha256": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3" + }, + { + "path": "vendor/nodegraph-live/session.d.ts", + "sha256": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a" + }, + { + "path": "tests/spreadsheetDelta.test.ts", + "sha256": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87" + }, + { + "path": "tests/sqliteDurableRuntime.test.ts", + "sha256": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a" + }, + { + "path": "examples/adapters/sqlite-local/sqliteDurableRuntime.ts", + "sha256": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269" + }, + { + "path": "src/features/spreadsheet/versionedSpreadsheetSync.ts", + "sha256": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95" + }, + { + "path": "vite.config.ts", + "sha256": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202" + }, + { + "path": "vitest.config.ts", + "sha256": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc" + }, + { + "path": "src/features/node-agent/components/GraphRailPanel.tsx", + "sha256": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32" + }, + { + "path": "src/app/main.tsx", + "sha256": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d" + }, + { + "path": "src/features/node-agent/components/NodeAgentDemoApp.tsx", + "sha256": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8" + }, + { + "path": "src/features/node-agent/components/NodeAgentThread.tsx", + "sha256": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752" + }, + { + "path": "src/features/node-agent/components/toolUIs.tsx", + "sha256": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e" + }, + { + "path": "examples/omnigent/nodeagent-reviewer.yaml", + "sha256": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90" + }, + { + "path": "examples/omnigent/nodeagent-worker.yaml", + "sha256": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d" + }, + { + "path": "nodekit.yaml", + "sha256": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841" + }, + { + "path": ".github/workflows/ci.yml", + "sha256": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425" + }, + { + "path": ".github/workflows/node-platform-conformance.yml", + "sha256": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1" + } + ], + "generatedApp": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app 02", + "generatedLockSha256": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "claim": "Exact uncommitted reviewed-scope candidate bytes; not a committed release certificate." +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-installed-consumer-03.json b/evidence/current-consumer-20260905/operator/d3-installed-consumer-03.json new file mode 100644 index 0000000..cd29bf2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-installed-consumer-03.json @@ -0,0 +1,978 @@ +{ + "tarball": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery package 03\\nodeagent-0.1.0.tgz", + "tarballSha256": "1a6e980a684f433fcdc80021eb5569fa5c4b94e09a71e8a2adbe5d821e654c69", + "sourceHead": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "sourceTarInstalledBindings": [ + { + "path": ".gitattributes", + "sha256": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5" + }, + { + "path": "examples/apps/local-dashboard/template/docs/eval/.gitkeep", + "sha256": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b" + }, + { + "path": "examples/apps/chat-ui/template/src/styles.css", + "sha256": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096" + }, + { + "path": "examples/apps/local-dashboard/template/src/styles.css", + "sha256": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a" + }, + { + "path": "src/app/styles.css", + "sha256": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8" + }, + { + "path": ".env.example", + "sha256": "cbe8a0df460b2a420d9ce3f2fc88261999f432374839ffe95d1ca5e8b116902e" + }, + { + "path": "examples/adapters/aws-dynamodb/.env.example", + "sha256": "43675a1deb0b3f9fb82256f19a497147a68809cbc6e5fca467b5679acf71d8f7" + }, + { + "path": "examples/adapters/cloudflare/.env.example", + "sha256": "bf4bb1cfe83fc48e895a23f1c8bd1c2f6b2730eab6864dde60df3475cffb68e1" + }, + { + "path": "examples/adapters/convex/.env.example", + "sha256": "ecbc47b8fba9ce00ec57f3506bd7519ef1d0c5af5de3e04eb652a7189ccff960" + }, + { + "path": "examples/adapters/postgres/.env.example", + "sha256": "eded16363fb6a59b73111ad262699ee33ab47d20abde1bf02ba5cecfc5d60e9f" + }, + { + "path": "examples/adapters/sqlite-local/.env.example", + "sha256": "1ee0e3f9ff3184fe6c4188238324ac81eb25bd099f66740063bdd0657c2f1a8e" + }, + { + "path": "examples/apps/chat-ui/template/.env.example", + "sha256": "87c08c127a703d1a0c959d1ecd6f7896f580f7cad7f0225d467d470acddb97a4" + }, + { + "path": "examples/apps/local-dashboard/template/.env.example", + "sha256": "8c474b226d4a2b29970f0ef817ff6b3c8a3e1b8706a850307d099d2c19d55863" + }, + { + "path": "examples/apps/minimal-portable-agent/.env.example", + "sha256": "c2e1fd0344b9bb9d776c7a14b9a0d1b700bf921d5c75643a7c61548e65ea8c9c" + }, + { + "path": "docs/media/live-graph-rail.gif", + "sha256": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e" + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif", + "sha256": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf" + }, + { + "path": "examples/apps/chat-ui/template/index.html", + "sha256": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50" + }, + { + "path": "examples/apps/local-dashboard/template/index.html", + "sha256": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0" + }, + { + "path": "index.html", + "sha256": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d" + }, + { + "path": "nodeagent-v1.html", + "sha256": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883" + }, + { + "path": "vendor/nodegraph-live/graph-model.js", + "sha256": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b" + }, + { + "path": "vendor/nodegraph-live/index.js", + "sha256": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969" + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "sha256": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js", + "sha256": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df" + }, + { + "path": "vendor/nodegraph-live/react.js", + "sha256": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff" + }, + { + "path": "vendor/nodegraph-live/session.js", + "sha256": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282" + }, + { + "path": "promotion/evidence/axe-initial-prefix.json", + "sha256": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644" + }, + { + "path": "promotion/evidence/axe-initial.json", + "sha256": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1" + }, + { + "path": "promotion/evidence/axe-populated-axe-1440.json", + "sha256": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1" + }, + { + "path": "promotion/evidence/axe-populated-keyboard-375.json", + "sha256": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064" + }, + { + "path": "promotion/evidence/axe-populated-prefix-keyboard-375.json", + "sha256": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2" + }, + { + "path": "promotion/evidence/baseline-observations.json", + "sha256": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63" + }, + { + "path": "examples/adapters/aws-dynamodb/iam-policy.template.json", + "sha256": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7" + }, + { + "path": "promotion/evidence/journey-1440-observations.json", + "sha256": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113" + }, + { + "path": "promotion/evidence/journey-375-observations.json", + "sha256": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab" + }, + { + "path": "promotion/evidence/journey-375-steering-observations.json", + "sha256": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335" + }, + { + "path": "promotion/evidence/journey-768-observations.json", + "sha256": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce" + }, + { + "path": "promotion/evidence/journey-960-observations.json", + "sha256": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c" + }, + { + "path": "promotion/evidence/journey-axe-1440-observations.json", + "sha256": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb" + }, + { + "path": "promotion/evidence/journey-keyboard-375-observations.json", + "sha256": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92" + }, + { + "path": "promotion/evidence/journey-prefix-375-observations.json", + "sha256": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f" + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-observations.json", + "sha256": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc" + }, + { + "path": "promotion/evidence/journey-wave3-1440-observations.json", + "sha256": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b" + }, + { + "path": "promotion/evidence/journey-wave3-375-observations.json", + "sha256": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468" + }, + { + "path": "knip.json", + "sha256": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500" + }, + { + "path": "promotion/evidence/lighthouse-desktop.json", + "sha256": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d" + }, + { + "path": "promotion/evidence/lighthouse-mobile.json", + "sha256": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1" + }, + { + "path": "examples/apps/chat-ui/template/public/nodeagent-chat-state.json", + "sha256": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda" + }, + { + "path": "docs/eval/nodeagent-chat-ui-scaffold-smoke.json", + "sha256": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd" + }, + { + "path": "docs/eval/nodeagent-convex-smoke.json", + "sha256": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26" + }, + { + "path": "docs/eval/nodeagent-durable-smoke.json", + "sha256": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272" + }, + { + "path": "docs/eval/nodeagent-frame-smoke.json", + "sha256": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79" + }, + { + "path": "docs/eval/nodeagent-happy-path-speed.json", + "sha256": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40" + }, + { + "path": "docs/eval/nodeagent-live-provider-smoke.json", + "sha256": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf" + }, + { + "path": "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json", + "sha256": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d" + }, + { + "path": "docs/eval/nodeagent-sqlite-smoke.json", + "sha256": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb" + }, + { + "path": "examples/apps/local-dashboard/template/public/nodeagent-state.json", + "sha256": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb" + }, + { + "path": "docs/eval/omnigent-nodeagent-smoke.json", + "sha256": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef" + }, + { + "path": "docs/eval/omnigent-official-cli-probe.json", + "sha256": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c" + }, + { + "path": "examples/apps/chat-ui/template/package-lock.json", + "sha256": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + { + "path": "examples/apps/chat-ui/template/package.json", + "sha256": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9" + }, + { + "path": "examples/apps/local-dashboard/template/package.json", + "sha256": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633" + }, + { + "path": "package.json", + "sha256": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e" + }, + { + "path": "tsconfig.json", + "sha256": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b" + }, + { + "path": "promotion/evidence/web-quality-audit-prefix.json", + "sha256": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc" + }, + { + "path": "promotion/evidence/web-quality-audit.json", + "sha256": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542" + }, + { + "path": "promotion/evidence/wig-review-prefix.json", + "sha256": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02" + }, + { + "path": "promotion/evidence/wig-review.json", + "sha256": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539" + }, + { + "path": "examples/adapters/cloudflare/wrangler.example.jsonc", + "sha256": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20" + }, + { + "path": "examples/apps/chat-ui/template/src/main.jsx", + "sha256": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f" + }, + { + "path": "examples/apps/local-dashboard/template/src/main.jsx", + "sha256": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f" + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "sha256": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1" + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "sha256": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts.map", + "sha256": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2" + }, + { + "path": "vendor/nodegraph-live/graph-model.js.map", + "sha256": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db" + }, + { + "path": "vendor/nodegraph-live/index.d.ts.map", + "sha256": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a" + }, + { + "path": "vendor/nodegraph-live/index.js.map", + "sha256": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts.map", + "sha256": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js.map", + "sha256": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776" + }, + { + "path": "vendor/nodegraph-live/react.d.ts.map", + "sha256": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab" + }, + { + "path": "vendor/nodegraph-live/react.js.map", + "sha256": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575" + }, + { + "path": "vendor/nodegraph-live/session.d.ts.map", + "sha256": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f" + }, + { + "path": "vendor/nodegraph-live/session.js.map", + "sha256": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881" + }, + { + "path": "examples/adapters/AGENTS.md", + "sha256": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9" + }, + { + "path": "examples/apps/chat-ui/template/AGENTS.md", + "sha256": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7" + }, + { + "path": "examples/apps/local-dashboard/template/AGENTS.md", + "sha256": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0" + }, + { + "path": "examples/apps/minimal-portable-agent/AGENTS.md", + "sha256": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df" + }, + { + "path": "docs/ARCHITECTURE.md", + "sha256": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055" + }, + { + "path": "docs/codebase/ARCHITECTURE.md", + "sha256": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99" + }, + { + "path": "docs/CHAT_UI_ADOPTION.md", + "sha256": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7" + }, + { + "path": "docs/codebase/CONCERNS.md", + "sha256": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb" + }, + { + "path": "docs/codebase/CONVENTIONS.md", + "sha256": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8" + }, + { + "path": "docs/DEMO_SCRIPT.md", + "sha256": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2" + }, + { + "path": "docs/DURABLE_RUNTIME.md", + "sha256": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76" + }, + { + "path": "docs/FEATURE_PROOF_STORYBOARD.md", + "sha256": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6" + }, + { + "path": "docs/GRAPH_INTEGRATION.md", + "sha256": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1" + }, + { + "path": "HANDOFF.md", + "sha256": "17e983697edaf77f341bf588e4618e0cb53f46d6e04ef8e8f9f4914c3ab00d98" + }, + { + "path": "docs/codebase/INTEGRATIONS.md", + "sha256": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06" + }, + { + "path": "docs/LOCAL_DASHBOARD_WALKTHROUGH.md", + "sha256": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847" + }, + { + "path": "docs/MIGRATION_MAP.md", + "sha256": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a" + }, + { + "path": "NODE-LOOPS.md", + "sha256": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80" + }, + { + "path": "docs/OMNIGENT_INTEGRATION.md", + "sha256": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0" + }, + { + "path": "promotion/PRODUCT_GOAL.md", + "sha256": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812" + }, + { + "path": "promotion/PRODUCT_JOURNEYS.md", + "sha256": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9" + }, + { + "path": "promotion/PROMOTION_LOG.md", + "sha256": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f" + }, + { + "path": "docs/PUSH_TO_GITHUB.md", + "sha256": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2" + }, + { + "path": "examples/adapters/aws-dynamodb/README.md", + "sha256": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4" + }, + { + "path": "examples/adapters/cloudflare/README.md", + "sha256": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e" + }, + { + "path": "examples/adapters/convex/README.md", + "sha256": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b" + }, + { + "path": "examples/adapters/postgres/README.md", + "sha256": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434" + }, + { + "path": "examples/adapters/README.md", + "sha256": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2" + }, + { + "path": "examples/adapters/sqlite-local/README.md", + "sha256": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02" + }, + { + "path": "examples/apps/aws-hackathon-visual-labs/README.md", + "sha256": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df" + }, + { + "path": "examples/apps/chat-ui/README.md", + "sha256": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9" + }, + { + "path": "examples/apps/chat-ui/template/README.md", + "sha256": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b" + }, + { + "path": "examples/apps/local-dashboard/README.md", + "sha256": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1" + }, + { + "path": "examples/apps/local-dashboard/template/README.md", + "sha256": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761" + }, + { + "path": "examples/apps/local-design-dashboard/README.md", + "sha256": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc" + }, + { + "path": "examples/apps/minimal-portable-agent/README.md", + "sha256": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7" + }, + { + "path": "examples/apps/README.md", + "sha256": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94" + }, + { + "path": "examples/apps/video-agent-pipeline/README.md", + "sha256": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92" + }, + { + "path": "README.md", + "sha256": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140" + }, + { + "path": "vendor/nodegraph-live/README.md", + "sha256": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241" + }, + { + "path": "docs/SIMPLIFICATION_REPORT.md", + "sha256": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf" + }, + { + "path": "promotion/SKILLS.md", + "sha256": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797" + }, + { + "path": "docs/codebase/STACK.md", + "sha256": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef" + }, + { + "path": "docs/START_HERE.md", + "sha256": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5" + }, + { + "path": "docs/codebase/STRUCTURE.md", + "sha256": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511" + }, + { + "path": "docs/TECH_RETRO.md", + "sha256": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f" + }, + { + "path": "docs/codebase/TESTING.md", + "sha256": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0" + }, + { + "path": "promotion/WIG_REVIEW.md", + "sha256": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d" + }, + { + "path": "e2e/audit-web-quality.mjs", + "sha256": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf" + }, + { + "path": "scripts/build-tours.mjs", + "sha256": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db" + }, + { + "path": "e2e/capture-journey-at-width.mjs", + "sha256": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68" + }, + { + "path": "e2e/capture-live-graph-rail.mjs", + "sha256": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002" + }, + { + "path": "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs", + "sha256": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28" + }, + { + "path": "e2e/current-consumer-proof.mjs", + "sha256": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0" + }, + { + "path": "e2e/current-consumer-recovery-proof.mjs", + "sha256": "cbda1d63b0c96f4624bf2a3b722213b1a16d76014ccce1ae16d8f2d52d3ea518" + }, + { + "path": "bin/nodeagent.mjs", + "sha256": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d" + }, + { + "path": "scripts/omnigent-official-probe.mjs", + "sha256": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924" + }, + { + "path": "e2e/record-live-graph-rail.mjs", + "sha256": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9" + }, + { + "path": "scripts/render-walkthrough-media.mjs", + "sha256": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7" + }, + { + "path": "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs", + "sha256": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f" + }, + { + "path": "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs", + "sha256": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50" + }, + { + "path": "scripts/secret-scan.mjs", + "sha256": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea" + }, + { + "path": "scripts/validate-tours.mjs", + "sha256": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46" + }, + { + "path": "examples/apps/chat-ui/template/vite.config.mjs", + "sha256": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a" + }, + { + "path": "examples/apps/local-dashboard/template/vite.config.mjs", + "sha256": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984" + }, + { + "path": "e2e/wig-review.mjs", + "sha256": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155" + }, + { + "path": "docs/media/live-graph-rail.mp4", + "sha256": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c" + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4", + "sha256": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5" + }, + { + "path": "docs/screenshots/chat-desktop-empty.png", + "sha256": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a" + }, + { + "path": "docs/screenshots/chat-desktop-run.png", + "sha256": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e" + }, + { + "path": "docs/screenshots/chat-mobile-empty.png", + "sha256": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be" + }, + { + "path": "docs/screenshots/chat-mobile-run.png", + "sha256": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2" + }, + { + "path": "promotion/evidence/desktop-1440-agent-running.png", + "sha256": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535" + }, + { + "path": "promotion/evidence/desktop-1440-empty.png", + "sha256": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b" + }, + { + "path": "promotion/evidence/desktop-1440-keyboard-run.png", + "sha256": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7" + }, + { + "path": "promotion/evidence/desktop-1440-run.png", + "sha256": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35" + }, + { + "path": "promotion/evidence/desktop-1440-second-turn.png", + "sha256": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72" + }, + { + "path": "promotion/evidence/journey-1440-run.png", + "sha256": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3" + }, + { + "path": "promotion/evidence/journey-375-run.png", + "sha256": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b" + }, + { + "path": "promotion/evidence/journey-375-steering-run.png", + "sha256": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f" + }, + { + "path": "promotion/evidence/journey-768-run.png", + "sha256": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce" + }, + { + "path": "promotion/evidence/journey-960-run.png", + "sha256": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b" + }, + { + "path": "promotion/evidence/journey-axe-1440-run.png", + "sha256": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1" + }, + { + "path": "promotion/evidence/journey-keyboard-375-run.png", + "sha256": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148" + }, + { + "path": "promotion/evidence/journey-prefix-375-run.png", + "sha256": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510" + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-run.png", + "sha256": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b" + }, + { + "path": "promotion/evidence/journey-wave3-1440-run.png", + "sha256": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e" + }, + { + "path": "promotion/evidence/journey-wave3-375-run.png", + "sha256": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca" + }, + { + "path": "docs/media/live-graph-rail.png", + "sha256": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d" + }, + { + "path": "docs/screenshots/local-dashboard-builder-locked.png", + "sha256": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85" + }, + { + "path": "docs/screenshots/local-dashboard-overview.png", + "sha256": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248" + }, + { + "path": "promotion/evidence/mobile-375-empty.png", + "sha256": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820" + }, + { + "path": "promotion/evidence/mobile-375-run.png", + "sha256": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510" + }, + { + "path": "promotion/evidence/proto-1440-load.png", + "sha256": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7" + }, + { + "path": "promotion/evidence/proto-375-load.png", + "sha256": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80" + }, + { + "path": "promotion/evidence/proto-375-run.png", + "sha256": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d" + }, + { + "path": "docs/screenshots/proto-desktop-empty.png", + "sha256": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482" + }, + { + "path": "docs/screenshots/proto-desktop-run.png", + "sha256": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9" + }, + { + "path": "docs/screenshots/proto-mobile-empty.png", + "sha256": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0" + }, + { + "path": "docs/screenshots/proto-mobile-run.png", + "sha256": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da" + }, + { + "path": "promotion/evidence/wig-desktop-1440.png", + "sha256": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782" + }, + { + "path": "promotion/evidence/wig-mobile-375.png", + "sha256": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b" + }, + { + "path": "promotion/evidence/wig-prefix-desktop-1440.png", + "sha256": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e" + }, + { + "path": "promotion/evidence/wig-prefix-mobile-375.png", + "sha256": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf" + }, + { + "path": "examples/adapters/postgres/schema.sql", + "sha256": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0" + }, + { + "path": "examples/adapters/sqlite-local/schema.sql", + "sha256": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c" + }, + { + "path": ".tours/01-primary-user-flow.tour", + "sha256": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8" + }, + { + "path": ".tours/02-agent-execution.tour", + "sha256": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37" + }, + { + "path": ".tours/03-debug-and-recovery.tour", + "sha256": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94" + }, + { + "path": "src/features/node-agent/graph/agentGraphSession.ts", + "sha256": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389" + }, + { + "path": "src/features/spreadsheet/applySpreadsheetDelta.ts", + "sha256": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9" + }, + { + "path": "src/features/chat/contextCollector.ts", + "sha256": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94" + }, + { + "path": "src/features/node-agent/demoScenario.ts", + "sha256": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d" + }, + { + "path": "tests/durableRuntime.test.ts", + "sha256": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873" + }, + { + "path": "src/features/node-agent/runtime/durableRuntime.ts", + "sha256": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c" + }, + { + "path": "scripts/example-guidance-smoke.ts", + "sha256": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53" + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts", + "sha256": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c" + }, + { + "path": "vendor/nodegraph-live/index.d.ts", + "sha256": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47" + }, + { + "path": "scripts/nodeagent-chat-ui-scaffold-smoke.ts", + "sha256": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0" + }, + { + "path": "scripts/nodeagent-cli.ts", + "sha256": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6" + }, + { + "path": "scripts/nodeagent-convex-smoke.ts", + "sha256": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039" + }, + { + "path": "scripts/nodeagent-durable-smoke.ts", + "sha256": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21" + }, + { + "path": "scripts/nodeagent-frame-smoke.ts", + "sha256": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3" + }, + { + "path": "scripts/nodeagent-live-provider-smoke.ts", + "sha256": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282" + }, + { + "path": "scripts/nodeagent-local-dashboard-scaffold-smoke.ts", + "sha256": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f" + }, + { + "path": "scripts/nodeagent-sqlite-smoke.ts", + "sha256": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf" + }, + { + "path": "src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "sha256": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9" + }, + { + "path": "tests/nodeAgentRuntime.test.ts", + "sha256": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725" + }, + { + "path": "src/features/node-agent/runtime/nodeAgentRuntime.ts", + "sha256": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf" + }, + { + "path": "src/features/node-agent/types/nodeAgentTypes.ts", + "sha256": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts", + "sha256": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141" + }, + { + "path": "src/features/notebook/notebookEditor.ts", + "sha256": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456" + }, + { + "path": "scripts/omnigent-nodeagent-smoke.ts", + "sha256": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34" + }, + { + "path": "tests/omnigentAdapter.test.ts", + "sha256": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99" + }, + { + "path": "src/features/node-agent/runtime/omnigentAdapter.ts", + "sha256": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d" + }, + { + "path": "vendor/nodegraph-live/react.d.ts", + "sha256": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd" + }, + { + "path": "tests/reasoningFrameRunner.test.ts", + "sha256": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54" + }, + { + "path": "src/features/node-agent/runtime/reasoningFrameRunner.ts", + "sha256": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12" + }, + { + "path": "demo/runNodeAgentDemo.ts", + "sha256": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952" + }, + { + "path": "convex/schema.ts", + "sha256": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b" + }, + { + "path": "src/features/search/searchAndSynthesize.ts", + "sha256": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c" + }, + { + "path": "tests/searchSynthesize.test.ts", + "sha256": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3" + }, + { + "path": "vendor/nodegraph-live/session.d.ts", + "sha256": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a" + }, + { + "path": "tests/spreadsheetDelta.test.ts", + "sha256": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87" + }, + { + "path": "tests/sqliteDurableRuntime.test.ts", + "sha256": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a" + }, + { + "path": "examples/adapters/sqlite-local/sqliteDurableRuntime.ts", + "sha256": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269" + }, + { + "path": "src/features/spreadsheet/versionedSpreadsheetSync.ts", + "sha256": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95" + }, + { + "path": "vite.config.ts", + "sha256": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202" + }, + { + "path": "vitest.config.ts", + "sha256": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc" + }, + { + "path": "src/features/node-agent/components/GraphRailPanel.tsx", + "sha256": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32" + }, + { + "path": "src/app/main.tsx", + "sha256": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d" + }, + { + "path": "src/features/node-agent/components/NodeAgentDemoApp.tsx", + "sha256": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8" + }, + { + "path": "src/features/node-agent/components/NodeAgentThread.tsx", + "sha256": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42" + }, + { + "path": "src/features/node-agent/components/toolUIs.tsx", + "sha256": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e" + }, + { + "path": "examples/omnigent/nodeagent-reviewer.yaml", + "sha256": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90" + }, + { + "path": "examples/omnigent/nodeagent-worker.yaml", + "sha256": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d" + }, + { + "path": "nodekit.yaml", + "sha256": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841" + }, + { + "path": ".github/workflows/ci.yml", + "sha256": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425" + }, + { + "path": ".github/workflows/node-platform-conformance.yml", + "sha256": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1" + } + ], + "generatedApp": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app 03", + "generatedLockSha256": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "claim": "Exact uncommitted reviewed-scope candidate bytes; not a committed release certificate." +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-installed-consumer.json b/evidence/current-consumer-20260905/operator/d3-installed-consumer.json new file mode 100644 index 0000000..af4c1f6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-installed-consumer.json @@ -0,0 +1,978 @@ +{ + "tarball": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery package 01\\nodeagent-0.1.0.tgz", + "tarballSha256": "03200003651508ff1b88421a5d5aa164646817c9f875d05f8d4cf3024d5fc0a6", + "sourceHead": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "sourceTarInstalledBindings": [ + { + "path": ".gitattributes", + "sha256": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5" + }, + { + "path": "examples/apps/local-dashboard/template/docs/eval/.gitkeep", + "sha256": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b" + }, + { + "path": "examples/apps/chat-ui/template/src/styles.css", + "sha256": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a" + }, + { + "path": "examples/apps/local-dashboard/template/src/styles.css", + "sha256": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a" + }, + { + "path": "src/app/styles.css", + "sha256": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8" + }, + { + "path": ".env.example", + "sha256": "cbe8a0df460b2a420d9ce3f2fc88261999f432374839ffe95d1ca5e8b116902e" + }, + { + "path": "examples/adapters/aws-dynamodb/.env.example", + "sha256": "43675a1deb0b3f9fb82256f19a497147a68809cbc6e5fca467b5679acf71d8f7" + }, + { + "path": "examples/adapters/cloudflare/.env.example", + "sha256": "bf4bb1cfe83fc48e895a23f1c8bd1c2f6b2730eab6864dde60df3475cffb68e1" + }, + { + "path": "examples/adapters/convex/.env.example", + "sha256": "ecbc47b8fba9ce00ec57f3506bd7519ef1d0c5af5de3e04eb652a7189ccff960" + }, + { + "path": "examples/adapters/postgres/.env.example", + "sha256": "eded16363fb6a59b73111ad262699ee33ab47d20abde1bf02ba5cecfc5d60e9f" + }, + { + "path": "examples/adapters/sqlite-local/.env.example", + "sha256": "1ee0e3f9ff3184fe6c4188238324ac81eb25bd099f66740063bdd0657c2f1a8e" + }, + { + "path": "examples/apps/chat-ui/template/.env.example", + "sha256": "87c08c127a703d1a0c959d1ecd6f7896f580f7cad7f0225d467d470acddb97a4" + }, + { + "path": "examples/apps/local-dashboard/template/.env.example", + "sha256": "8c474b226d4a2b29970f0ef817ff6b3c8a3e1b8706a850307d099d2c19d55863" + }, + { + "path": "examples/apps/minimal-portable-agent/.env.example", + "sha256": "c2e1fd0344b9bb9d776c7a14b9a0d1b700bf921d5c75643a7c61548e65ea8c9c" + }, + { + "path": "docs/media/live-graph-rail.gif", + "sha256": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e" + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif", + "sha256": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf" + }, + { + "path": "examples/apps/chat-ui/template/index.html", + "sha256": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50" + }, + { + "path": "examples/apps/local-dashboard/template/index.html", + "sha256": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0" + }, + { + "path": "index.html", + "sha256": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d" + }, + { + "path": "nodeagent-v1.html", + "sha256": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883" + }, + { + "path": "vendor/nodegraph-live/graph-model.js", + "sha256": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b" + }, + { + "path": "vendor/nodegraph-live/index.js", + "sha256": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969" + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "sha256": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js", + "sha256": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df" + }, + { + "path": "vendor/nodegraph-live/react.js", + "sha256": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff" + }, + { + "path": "vendor/nodegraph-live/session.js", + "sha256": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282" + }, + { + "path": "promotion/evidence/axe-initial-prefix.json", + "sha256": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644" + }, + { + "path": "promotion/evidence/axe-initial.json", + "sha256": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1" + }, + { + "path": "promotion/evidence/axe-populated-axe-1440.json", + "sha256": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1" + }, + { + "path": "promotion/evidence/axe-populated-keyboard-375.json", + "sha256": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064" + }, + { + "path": "promotion/evidence/axe-populated-prefix-keyboard-375.json", + "sha256": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2" + }, + { + "path": "promotion/evidence/baseline-observations.json", + "sha256": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63" + }, + { + "path": "examples/adapters/aws-dynamodb/iam-policy.template.json", + "sha256": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7" + }, + { + "path": "promotion/evidence/journey-1440-observations.json", + "sha256": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113" + }, + { + "path": "promotion/evidence/journey-375-observations.json", + "sha256": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab" + }, + { + "path": "promotion/evidence/journey-375-steering-observations.json", + "sha256": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335" + }, + { + "path": "promotion/evidence/journey-768-observations.json", + "sha256": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce" + }, + { + "path": "promotion/evidence/journey-960-observations.json", + "sha256": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c" + }, + { + "path": "promotion/evidence/journey-axe-1440-observations.json", + "sha256": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb" + }, + { + "path": "promotion/evidence/journey-keyboard-375-observations.json", + "sha256": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92" + }, + { + "path": "promotion/evidence/journey-prefix-375-observations.json", + "sha256": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f" + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-observations.json", + "sha256": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc" + }, + { + "path": "promotion/evidence/journey-wave3-1440-observations.json", + "sha256": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b" + }, + { + "path": "promotion/evidence/journey-wave3-375-observations.json", + "sha256": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468" + }, + { + "path": "knip.json", + "sha256": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500" + }, + { + "path": "promotion/evidence/lighthouse-desktop.json", + "sha256": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d" + }, + { + "path": "promotion/evidence/lighthouse-mobile.json", + "sha256": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1" + }, + { + "path": "examples/apps/chat-ui/template/public/nodeagent-chat-state.json", + "sha256": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda" + }, + { + "path": "docs/eval/nodeagent-chat-ui-scaffold-smoke.json", + "sha256": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd" + }, + { + "path": "docs/eval/nodeagent-convex-smoke.json", + "sha256": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26" + }, + { + "path": "docs/eval/nodeagent-durable-smoke.json", + "sha256": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272" + }, + { + "path": "docs/eval/nodeagent-frame-smoke.json", + "sha256": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79" + }, + { + "path": "docs/eval/nodeagent-happy-path-speed.json", + "sha256": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40" + }, + { + "path": "docs/eval/nodeagent-live-provider-smoke.json", + "sha256": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf" + }, + { + "path": "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json", + "sha256": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d" + }, + { + "path": "docs/eval/nodeagent-sqlite-smoke.json", + "sha256": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb" + }, + { + "path": "examples/apps/local-dashboard/template/public/nodeagent-state.json", + "sha256": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb" + }, + { + "path": "docs/eval/omnigent-nodeagent-smoke.json", + "sha256": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef" + }, + { + "path": "docs/eval/omnigent-official-cli-probe.json", + "sha256": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c" + }, + { + "path": "examples/apps/chat-ui/template/package-lock.json", + "sha256": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + { + "path": "examples/apps/chat-ui/template/package.json", + "sha256": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9" + }, + { + "path": "examples/apps/local-dashboard/template/package.json", + "sha256": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633" + }, + { + "path": "package.json", + "sha256": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e" + }, + { + "path": "tsconfig.json", + "sha256": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b" + }, + { + "path": "promotion/evidence/web-quality-audit-prefix.json", + "sha256": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc" + }, + { + "path": "promotion/evidence/web-quality-audit.json", + "sha256": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542" + }, + { + "path": "promotion/evidence/wig-review-prefix.json", + "sha256": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02" + }, + { + "path": "promotion/evidence/wig-review.json", + "sha256": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539" + }, + { + "path": "examples/adapters/cloudflare/wrangler.example.jsonc", + "sha256": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20" + }, + { + "path": "examples/apps/chat-ui/template/src/main.jsx", + "sha256": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f" + }, + { + "path": "examples/apps/local-dashboard/template/src/main.jsx", + "sha256": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f" + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "sha256": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1" + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "sha256": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts.map", + "sha256": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2" + }, + { + "path": "vendor/nodegraph-live/graph-model.js.map", + "sha256": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db" + }, + { + "path": "vendor/nodegraph-live/index.d.ts.map", + "sha256": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a" + }, + { + "path": "vendor/nodegraph-live/index.js.map", + "sha256": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts.map", + "sha256": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js.map", + "sha256": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776" + }, + { + "path": "vendor/nodegraph-live/react.d.ts.map", + "sha256": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab" + }, + { + "path": "vendor/nodegraph-live/react.js.map", + "sha256": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575" + }, + { + "path": "vendor/nodegraph-live/session.d.ts.map", + "sha256": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f" + }, + { + "path": "vendor/nodegraph-live/session.js.map", + "sha256": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881" + }, + { + "path": "examples/adapters/AGENTS.md", + "sha256": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9" + }, + { + "path": "examples/apps/chat-ui/template/AGENTS.md", + "sha256": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7" + }, + { + "path": "examples/apps/local-dashboard/template/AGENTS.md", + "sha256": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0" + }, + { + "path": "examples/apps/minimal-portable-agent/AGENTS.md", + "sha256": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df" + }, + { + "path": "docs/ARCHITECTURE.md", + "sha256": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055" + }, + { + "path": "docs/codebase/ARCHITECTURE.md", + "sha256": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99" + }, + { + "path": "docs/CHAT_UI_ADOPTION.md", + "sha256": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7" + }, + { + "path": "docs/codebase/CONCERNS.md", + "sha256": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb" + }, + { + "path": "docs/codebase/CONVENTIONS.md", + "sha256": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8" + }, + { + "path": "docs/DEMO_SCRIPT.md", + "sha256": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2" + }, + { + "path": "docs/DURABLE_RUNTIME.md", + "sha256": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76" + }, + { + "path": "docs/FEATURE_PROOF_STORYBOARD.md", + "sha256": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6" + }, + { + "path": "docs/GRAPH_INTEGRATION.md", + "sha256": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1" + }, + { + "path": "HANDOFF.md", + "sha256": "17e983697edaf77f341bf588e4618e0cb53f46d6e04ef8e8f9f4914c3ab00d98" + }, + { + "path": "docs/codebase/INTEGRATIONS.md", + "sha256": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06" + }, + { + "path": "docs/LOCAL_DASHBOARD_WALKTHROUGH.md", + "sha256": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847" + }, + { + "path": "docs/MIGRATION_MAP.md", + "sha256": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a" + }, + { + "path": "NODE-LOOPS.md", + "sha256": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80" + }, + { + "path": "docs/OMNIGENT_INTEGRATION.md", + "sha256": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0" + }, + { + "path": "promotion/PRODUCT_GOAL.md", + "sha256": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812" + }, + { + "path": "promotion/PRODUCT_JOURNEYS.md", + "sha256": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9" + }, + { + "path": "promotion/PROMOTION_LOG.md", + "sha256": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f" + }, + { + "path": "docs/PUSH_TO_GITHUB.md", + "sha256": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2" + }, + { + "path": "examples/adapters/aws-dynamodb/README.md", + "sha256": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4" + }, + { + "path": "examples/adapters/cloudflare/README.md", + "sha256": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e" + }, + { + "path": "examples/adapters/convex/README.md", + "sha256": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b" + }, + { + "path": "examples/adapters/postgres/README.md", + "sha256": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434" + }, + { + "path": "examples/adapters/README.md", + "sha256": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2" + }, + { + "path": "examples/adapters/sqlite-local/README.md", + "sha256": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02" + }, + { + "path": "examples/apps/aws-hackathon-visual-labs/README.md", + "sha256": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df" + }, + { + "path": "examples/apps/chat-ui/README.md", + "sha256": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9" + }, + { + "path": "examples/apps/chat-ui/template/README.md", + "sha256": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b" + }, + { + "path": "examples/apps/local-dashboard/README.md", + "sha256": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1" + }, + { + "path": "examples/apps/local-dashboard/template/README.md", + "sha256": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761" + }, + { + "path": "examples/apps/local-design-dashboard/README.md", + "sha256": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc" + }, + { + "path": "examples/apps/minimal-portable-agent/README.md", + "sha256": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7" + }, + { + "path": "examples/apps/README.md", + "sha256": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94" + }, + { + "path": "examples/apps/video-agent-pipeline/README.md", + "sha256": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92" + }, + { + "path": "README.md", + "sha256": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140" + }, + { + "path": "vendor/nodegraph-live/README.md", + "sha256": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241" + }, + { + "path": "docs/SIMPLIFICATION_REPORT.md", + "sha256": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf" + }, + { + "path": "promotion/SKILLS.md", + "sha256": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797" + }, + { + "path": "docs/codebase/STACK.md", + "sha256": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef" + }, + { + "path": "docs/START_HERE.md", + "sha256": "e0adeb247191d8a894bf74989b714e7fdcfcf9c1f3d91e52b95db2ded5bcf341" + }, + { + "path": "docs/codebase/STRUCTURE.md", + "sha256": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511" + }, + { + "path": "docs/TECH_RETRO.md", + "sha256": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f" + }, + { + "path": "docs/codebase/TESTING.md", + "sha256": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0" + }, + { + "path": "promotion/WIG_REVIEW.md", + "sha256": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d" + }, + { + "path": "e2e/audit-web-quality.mjs", + "sha256": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf" + }, + { + "path": "scripts/build-tours.mjs", + "sha256": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db" + }, + { + "path": "e2e/capture-journey-at-width.mjs", + "sha256": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68" + }, + { + "path": "e2e/capture-live-graph-rail.mjs", + "sha256": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002" + }, + { + "path": "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs", + "sha256": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28" + }, + { + "path": "e2e/current-consumer-proof.mjs", + "sha256": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0" + }, + { + "path": "e2e/current-consumer-recovery-proof.mjs", + "sha256": "ed2a8ff8e0c034d534b2d5b1ca941735c71c0e4c091af7a6e48a5200503e6ecd" + }, + { + "path": "bin/nodeagent.mjs", + "sha256": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d" + }, + { + "path": "scripts/omnigent-official-probe.mjs", + "sha256": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924" + }, + { + "path": "e2e/record-live-graph-rail.mjs", + "sha256": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9" + }, + { + "path": "scripts/render-walkthrough-media.mjs", + "sha256": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7" + }, + { + "path": "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs", + "sha256": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f" + }, + { + "path": "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs", + "sha256": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50" + }, + { + "path": "scripts/secret-scan.mjs", + "sha256": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea" + }, + { + "path": "scripts/validate-tours.mjs", + "sha256": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46" + }, + { + "path": "examples/apps/chat-ui/template/vite.config.mjs", + "sha256": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a" + }, + { + "path": "examples/apps/local-dashboard/template/vite.config.mjs", + "sha256": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984" + }, + { + "path": "e2e/wig-review.mjs", + "sha256": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155" + }, + { + "path": "docs/media/live-graph-rail.mp4", + "sha256": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c" + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4", + "sha256": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5" + }, + { + "path": "docs/screenshots/chat-desktop-empty.png", + "sha256": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a" + }, + { + "path": "docs/screenshots/chat-desktop-run.png", + "sha256": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e" + }, + { + "path": "docs/screenshots/chat-mobile-empty.png", + "sha256": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be" + }, + { + "path": "docs/screenshots/chat-mobile-run.png", + "sha256": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2" + }, + { + "path": "promotion/evidence/desktop-1440-agent-running.png", + "sha256": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535" + }, + { + "path": "promotion/evidence/desktop-1440-empty.png", + "sha256": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b" + }, + { + "path": "promotion/evidence/desktop-1440-keyboard-run.png", + "sha256": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7" + }, + { + "path": "promotion/evidence/desktop-1440-run.png", + "sha256": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35" + }, + { + "path": "promotion/evidence/desktop-1440-second-turn.png", + "sha256": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72" + }, + { + "path": "promotion/evidence/journey-1440-run.png", + "sha256": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3" + }, + { + "path": "promotion/evidence/journey-375-run.png", + "sha256": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b" + }, + { + "path": "promotion/evidence/journey-375-steering-run.png", + "sha256": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f" + }, + { + "path": "promotion/evidence/journey-768-run.png", + "sha256": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce" + }, + { + "path": "promotion/evidence/journey-960-run.png", + "sha256": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b" + }, + { + "path": "promotion/evidence/journey-axe-1440-run.png", + "sha256": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1" + }, + { + "path": "promotion/evidence/journey-keyboard-375-run.png", + "sha256": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148" + }, + { + "path": "promotion/evidence/journey-prefix-375-run.png", + "sha256": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510" + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-run.png", + "sha256": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b" + }, + { + "path": "promotion/evidence/journey-wave3-1440-run.png", + "sha256": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e" + }, + { + "path": "promotion/evidence/journey-wave3-375-run.png", + "sha256": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca" + }, + { + "path": "docs/media/live-graph-rail.png", + "sha256": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d" + }, + { + "path": "docs/screenshots/local-dashboard-builder-locked.png", + "sha256": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85" + }, + { + "path": "docs/screenshots/local-dashboard-overview.png", + "sha256": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248" + }, + { + "path": "promotion/evidence/mobile-375-empty.png", + "sha256": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820" + }, + { + "path": "promotion/evidence/mobile-375-run.png", + "sha256": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510" + }, + { + "path": "promotion/evidence/proto-1440-load.png", + "sha256": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7" + }, + { + "path": "promotion/evidence/proto-375-load.png", + "sha256": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80" + }, + { + "path": "promotion/evidence/proto-375-run.png", + "sha256": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d" + }, + { + "path": "docs/screenshots/proto-desktop-empty.png", + "sha256": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482" + }, + { + "path": "docs/screenshots/proto-desktop-run.png", + "sha256": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9" + }, + { + "path": "docs/screenshots/proto-mobile-empty.png", + "sha256": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0" + }, + { + "path": "docs/screenshots/proto-mobile-run.png", + "sha256": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da" + }, + { + "path": "promotion/evidence/wig-desktop-1440.png", + "sha256": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782" + }, + { + "path": "promotion/evidence/wig-mobile-375.png", + "sha256": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b" + }, + { + "path": "promotion/evidence/wig-prefix-desktop-1440.png", + "sha256": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e" + }, + { + "path": "promotion/evidence/wig-prefix-mobile-375.png", + "sha256": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf" + }, + { + "path": "examples/adapters/postgres/schema.sql", + "sha256": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0" + }, + { + "path": "examples/adapters/sqlite-local/schema.sql", + "sha256": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c" + }, + { + "path": ".tours/01-primary-user-flow.tour", + "sha256": "a0e40ef53b606e3249c46002cfaf04c6741859b07d808bad6474287e6a897f1b" + }, + { + "path": ".tours/02-agent-execution.tour", + "sha256": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37" + }, + { + "path": ".tours/03-debug-and-recovery.tour", + "sha256": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94" + }, + { + "path": "src/features/node-agent/graph/agentGraphSession.ts", + "sha256": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389" + }, + { + "path": "src/features/spreadsheet/applySpreadsheetDelta.ts", + "sha256": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9" + }, + { + "path": "src/features/chat/contextCollector.ts", + "sha256": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94" + }, + { + "path": "src/features/node-agent/demoScenario.ts", + "sha256": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d" + }, + { + "path": "tests/durableRuntime.test.ts", + "sha256": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873" + }, + { + "path": "src/features/node-agent/runtime/durableRuntime.ts", + "sha256": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c" + }, + { + "path": "scripts/example-guidance-smoke.ts", + "sha256": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53" + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts", + "sha256": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c" + }, + { + "path": "vendor/nodegraph-live/index.d.ts", + "sha256": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47" + }, + { + "path": "scripts/nodeagent-chat-ui-scaffold-smoke.ts", + "sha256": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0" + }, + { + "path": "scripts/nodeagent-cli.ts", + "sha256": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6" + }, + { + "path": "scripts/nodeagent-convex-smoke.ts", + "sha256": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039" + }, + { + "path": "scripts/nodeagent-durable-smoke.ts", + "sha256": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21" + }, + { + "path": "scripts/nodeagent-frame-smoke.ts", + "sha256": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3" + }, + { + "path": "scripts/nodeagent-live-provider-smoke.ts", + "sha256": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282" + }, + { + "path": "scripts/nodeagent-local-dashboard-scaffold-smoke.ts", + "sha256": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f" + }, + { + "path": "scripts/nodeagent-sqlite-smoke.ts", + "sha256": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf" + }, + { + "path": "src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "sha256": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9" + }, + { + "path": "tests/nodeAgentRuntime.test.ts", + "sha256": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725" + }, + { + "path": "src/features/node-agent/runtime/nodeAgentRuntime.ts", + "sha256": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf" + }, + { + "path": "src/features/node-agent/types/nodeAgentTypes.ts", + "sha256": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts", + "sha256": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141" + }, + { + "path": "src/features/notebook/notebookEditor.ts", + "sha256": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456" + }, + { + "path": "scripts/omnigent-nodeagent-smoke.ts", + "sha256": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34" + }, + { + "path": "tests/omnigentAdapter.test.ts", + "sha256": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99" + }, + { + "path": "src/features/node-agent/runtime/omnigentAdapter.ts", + "sha256": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d" + }, + { + "path": "vendor/nodegraph-live/react.d.ts", + "sha256": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd" + }, + { + "path": "tests/reasoningFrameRunner.test.ts", + "sha256": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54" + }, + { + "path": "src/features/node-agent/runtime/reasoningFrameRunner.ts", + "sha256": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12" + }, + { + "path": "demo/runNodeAgentDemo.ts", + "sha256": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952" + }, + { + "path": "convex/schema.ts", + "sha256": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b" + }, + { + "path": "src/features/search/searchAndSynthesize.ts", + "sha256": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c" + }, + { + "path": "tests/searchSynthesize.test.ts", + "sha256": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3" + }, + { + "path": "vendor/nodegraph-live/session.d.ts", + "sha256": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a" + }, + { + "path": "tests/spreadsheetDelta.test.ts", + "sha256": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87" + }, + { + "path": "tests/sqliteDurableRuntime.test.ts", + "sha256": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a" + }, + { + "path": "examples/adapters/sqlite-local/sqliteDurableRuntime.ts", + "sha256": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269" + }, + { + "path": "src/features/spreadsheet/versionedSpreadsheetSync.ts", + "sha256": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95" + }, + { + "path": "vite.config.ts", + "sha256": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202" + }, + { + "path": "vitest.config.ts", + "sha256": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc" + }, + { + "path": "src/features/node-agent/components/GraphRailPanel.tsx", + "sha256": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32" + }, + { + "path": "src/app/main.tsx", + "sha256": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d" + }, + { + "path": "src/features/node-agent/components/NodeAgentDemoApp.tsx", + "sha256": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8" + }, + { + "path": "src/features/node-agent/components/NodeAgentThread.tsx", + "sha256": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752" + }, + { + "path": "src/features/node-agent/components/toolUIs.tsx", + "sha256": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e" + }, + { + "path": "examples/omnigent/nodeagent-reviewer.yaml", + "sha256": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90" + }, + { + "path": "examples/omnigent/nodeagent-worker.yaml", + "sha256": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d" + }, + { + "path": "nodekit.yaml", + "sha256": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841" + }, + { + "path": ".github/workflows/ci.yml", + "sha256": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425" + }, + { + "path": ".github/workflows/node-platform-conformance.yml", + "sha256": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1" + } + ], + "generatedApp": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app", + "generatedLockSha256": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "claim": "Exact uncommitted reviewed-scope candidate bytes; not a committed release certificate." +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-installed-doctor-02.stderr b/evidence/current-consumer-20260905/operator/d3-installed-doctor-02.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-installed-doctor-02.stdout b/evidence/current-consumer-20260905/operator/d3-installed-doctor-02.stdout new file mode 100644 index 0000000..6a51c3c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-installed-doctor-02.stdout @@ -0,0 +1,23 @@ +T NodeAgent Doctor +| +* found examples/apps/chat-ui/template/package.json +| +* found examples/apps/local-dashboard/template/package.json +| +* found examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx +| +* found examples/apps/local-dashboard/template/src/main.jsx +| +o Next -----------------------------------------------------------------------+ +| | +| No-key chat UI scaffold: | +| nodeagent apps scaffold chat-ui --dir nodeagent-chat-ui --auto | +| | +| No-key dashboard scaffold: | +| nodeagent apps scaffold local-dashboard --dir nodeagent-local-dashboard | +| --auto | +| | ++------------------------------------------------------------------------------+ +| +— Doctor passed. + diff --git a/evidence/current-consumer-20260905/operator/d3-installed-doctor-03.stderr b/evidence/current-consumer-20260905/operator/d3-installed-doctor-03.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-installed-doctor-03.stdout b/evidence/current-consumer-20260905/operator/d3-installed-doctor-03.stdout new file mode 100644 index 0000000..6a51c3c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-installed-doctor-03.stdout @@ -0,0 +1,23 @@ +T NodeAgent Doctor +| +* found examples/apps/chat-ui/template/package.json +| +* found examples/apps/local-dashboard/template/package.json +| +* found examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx +| +* found examples/apps/local-dashboard/template/src/main.jsx +| +o Next -----------------------------------------------------------------------+ +| | +| No-key chat UI scaffold: | +| nodeagent apps scaffold chat-ui --dir nodeagent-chat-ui --auto | +| | +| No-key dashboard scaffold: | +| nodeagent apps scaffold local-dashboard --dir nodeagent-local-dashboard | +| --auto | +| | ++------------------------------------------------------------------------------+ +| +— Doctor passed. + diff --git a/evidence/current-consumer-20260905/operator/d3-installed-doctor.stderr b/evidence/current-consumer-20260905/operator/d3-installed-doctor.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-installed-doctor.stdout b/evidence/current-consumer-20260905/operator/d3-installed-doctor.stdout new file mode 100644 index 0000000..6a51c3c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-installed-doctor.stdout @@ -0,0 +1,23 @@ +T NodeAgent Doctor +| +* found examples/apps/chat-ui/template/package.json +| +* found examples/apps/local-dashboard/template/package.json +| +* found examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx +| +* found examples/apps/local-dashboard/template/src/main.jsx +| +o Next -----------------------------------------------------------------------+ +| | +| No-key chat UI scaffold: | +| nodeagent apps scaffold chat-ui --dir nodeagent-chat-ui --auto | +| | +| No-key dashboard scaffold: | +| nodeagent apps scaffold local-dashboard --dir nodeagent-local-dashboard | +| --auto | +| | ++------------------------------------------------------------------------------+ +| +— Doctor passed. + diff --git a/evidence/current-consumer-20260905/operator/d3-installed-scaffold-02.stderr b/evidence/current-consumer-20260905/operator/d3-installed-scaffold-02.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-installed-scaffold-02.stdout b/evidence/current-consumer-20260905/operator/d3-installed-scaffold-02.stdout new file mode 100644 index 0000000..413f7ff --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-installed-scaffold-02.stdout @@ -0,0 +1,44 @@ +T NodeAgent App Scaffold: chat-ui +| +* created D:\ProjectRecovery\NodeAgent current consumer 20260905\Response recovery Chat app 02 (15 files) +[?25l| +o npm install +[?25h| +* install 7.16s +[?25l| +o npm run agent:demo +[?25h| +* agent demo 467ms +[?25l| +o npm run smoke +[?25h| +* smoke 531ms +[?25l| +o npm run build +[?25h| +* build 17.58s +| +* wrote D:\ProjectRecovery\NodeAgent current consumer 20260905\Response recovery Chat app 02\.nodeagent\setup-receipt.json +| +o Chat UI --------------------------------------------------------------------+ +| | +| No API keys are required for the first run. | +| The chat uses assistant-ui, a scripted local adapter, and inline NodeAgent | +| tool cards; replace the adapter with a server route when credentials | +| exist. | +| | +| Auto mode already ran install, agent demo, smoke, and build. | +| | +| | +| Run: | +| cd D:\ProjectRecovery\NodeAgent current consumer 20260905\Response | +| recovery Chat app 02 | +| npm run dev | +| | +| Optional verification: | +| npm run smoke | +| | ++------------------------------------------------------------------------------+ +| +— Chat UI scaffold is ready. + diff --git a/evidence/current-consumer-20260905/operator/d3-installed-scaffold-03.stderr b/evidence/current-consumer-20260905/operator/d3-installed-scaffold-03.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-installed-scaffold-03.stdout b/evidence/current-consumer-20260905/operator/d3-installed-scaffold-03.stdout new file mode 100644 index 0000000..198533a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-installed-scaffold-03.stdout @@ -0,0 +1,44 @@ +T NodeAgent App Scaffold: chat-ui +| +* created D:\ProjectRecovery\NodeAgent current consumer 20260905\Response recovery Chat app 03 (15 files) +[?25l| +o npm install +[?25h| +* install 6.71s +[?25l| +o npm run agent:demo +[?25h| +* agent demo 454ms +[?25l| +o npm run smoke +[?25h| +* smoke 568ms +[?25l| +o npm run build +[?25h| +* build 19.76s +| +* wrote D:\ProjectRecovery\NodeAgent current consumer 20260905\Response recovery Chat app 03\.nodeagent\setup-receipt.json +| +o Chat UI --------------------------------------------------------------------+ +| | +| No API keys are required for the first run. | +| The chat uses assistant-ui, a scripted local adapter, and inline NodeAgent | +| tool cards; replace the adapter with a server route when credentials | +| exist. | +| | +| Auto mode already ran install, agent demo, smoke, and build. | +| | +| | +| Run: | +| cd D:\ProjectRecovery\NodeAgent current consumer 20260905\Response | +| recovery Chat app 03 | +| npm run dev | +| | +| Optional verification: | +| npm run smoke | +| | ++------------------------------------------------------------------------------+ +| +— Chat UI scaffold is ready. + diff --git a/evidence/current-consumer-20260905/operator/d3-installed-scaffold.stderr b/evidence/current-consumer-20260905/operator/d3-installed-scaffold.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-installed-scaffold.stdout b/evidence/current-consumer-20260905/operator/d3-installed-scaffold.stdout new file mode 100644 index 0000000..7b1aceb --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-installed-scaffold.stdout @@ -0,0 +1,44 @@ +T NodeAgent App Scaffold: chat-ui +| +* created D:\ProjectRecovery\NodeAgent current consumer 20260905\Response recovery Chat app (15 files) +[?25l| +o npm install +[?25h| +* install 7.50s +[?25l| +o npm run agent:demo +[?25h| +* agent demo 475ms +[?25l| +o npm run smoke +[?25h| +* smoke 534ms +[?25l| +o npm run build +[?25h| +* build 19.89s +| +* wrote D:\ProjectRecovery\NodeAgent current consumer 20260905\Response recovery Chat app\.nodeagent\setup-receipt.json +| +o Chat UI --------------------------------------------------------------------+ +| | +| No API keys are required for the first run. | +| The chat uses assistant-ui, a scripted local adapter, and inline NodeAgent | +| tool cards; replace the adapter with a server route when credentials | +| exist. | +| | +| Auto mode already ran install, agent demo, smoke, and build. | +| | +| | +| Run: | +| cd D:\ProjectRecovery\NodeAgent current consumer 20260905\Response | +| recovery Chat app | +| npm run dev | +| | +| Optional verification: | +| npm run smoke | +| | ++------------------------------------------------------------------------------+ +| +— Chat UI scaffold is ready. + diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-citation-relocation.json b/evidence/current-consumer-20260905/operator/d3-keyboard-citation-relocation.json new file mode 100644 index 0000000..4eb23a6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-citation-relocation.json @@ -0,0 +1,5 @@ +{ + "reason": "Approved source Retry keyboard visibility adds4lines before composer; unchanged anchors/snippets relocated", + "tourSend": "122 -> 126", + "composerRange": "114-131 -> 118-135" +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-focus-before.tsx.txt b/evidence/current-consumer-20260905/operator/d3-keyboard-focus-before.tsx.txt new file mode 100644 index 0000000..d56aec1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-focus-before.tsx.txt @@ -0,0 +1,140 @@ +/** + * NodeAgentThread — a custom-styled assistant-ui Thread. + * + * Built from assistant-ui's headless primitives (`ThreadPrimitive`, + * `MessagePrimitive`, `ComposerPrimitive`) and themed with the NodeBench design + * DNA — no Tailwind, no shadcn. The assistant's message renders text plus the + * four tool UIs inline (registered in toolUIs.tsx). + */ + +import { useRef, type MouseEvent } from "react"; +import { + ActionBarPrimitive, + AuiIf, + ComposerPrimitive, + MessagePrimitive, + ThreadPrimitive, + useAui, + useAuiState, +} from "@assistant-ui/react"; +import { DEMO_QUESTION } from "../demoScenario"; + +function focusComposer(event: MouseEvent) { + event.currentTarget.closest(".na-thread")?.querySelector("textarea[name=input]")?.focus(); +} + +function UserMessage() { + return ( + +
+ +
+
+ ); +} + +function AssistantMessage() { + const aui = useAui(); + const messageId = useAuiState((s) => s.message.id); + const submittedResponse = useRef(null); + const retryResponse = (event: MouseEvent) => { + if (aui.thread().getState().isRunning || submittedResponse.current === messageId) { + event.preventDefault(); + return; + } + submittedResponse.current = messageId; + focusComposer(event); + }; + return ( + + + ◆ + +
+ + s.message.status?.type === "incomplete" && (s.message.status.reason === "cancelled" || s.message.status.reason === "error")}> +
+ s.message.status?.type === "incomplete" && s.message.status.reason === "cancelled"}> +

Stopped this response. Completed work is kept.

+
+ +

This response failed. Earlier results are kept.

+
+ Retry response +
+
+
+
+ ); +} + +export function NodeAgentThread() { + return ( + + + s.thread.isEmpty}> +
+ + ◆ + +

Ask the room

+

+ NodeAgent gathers the relevant context, finds the right document for the right + answer, updates the model as a versioned delta, and writes the cited memo — and + you watch each step render inline. +

+
+ + Does our wedge hold + survive 18 months? → + + + What changed since last update? → + +
+
+
+ + + {({ message }) => + message.role === "user" ? : + } + + + + + + !s.thread.isRunning}> + + ↑ + + + s.thread.isRunning}> + + Stop + + + +

+ Deterministic demo — no keys. The agent runs the real ported modules over a fixed + scenario. +

+
+
+
+ ); +} diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.command.json b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.command.json new file mode 100644 index 0000000..8cc7983 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.command.json @@ -0,0 +1,10 @@ +{ + "command": [ + "node", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\diagnose-d3-keyboard-scroll.mjs", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Response recovery Chat app 02", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01" + ], + "exit": 1, + "seconds": 14.940946340560913 +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stderr b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stderr new file mode 100644 index 0000000..1b47e45 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stderr @@ -0,0 +1,5 @@ +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/react.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/index.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/NodeGraph.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/session.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/graph-model.js" points to missing source files diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stdout b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stdout new file mode 100644 index 0000000..7735ca3 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01.stdout @@ -0,0 +1 @@ +{"output":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-keyboard-scroll-diagnosis-01","passed":false,"checks":16,"captures":6,"error":"Error: DIAGNOSTIC COMPLETE: keyboard recovery-region scroll only; source untouched\n at file:///C:/Users/hshum/.codex/worktrees/5dba/nodebench-ai/docs/plans/portfolio-recovery-20260904/E6e-nodeagent-current-consumer/diagnose-d3-keyboard-scroll.mjs:149:15"} diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.md.txt b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.md.txt new file mode 100644 index 0000000..187036e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.md.txt @@ -0,0 +1,5 @@ +# Keyboard recovery visibility + +Actual source390x844 at original computed text sizes doubled, after two explicitly injected partial adapter failures. Native Shift+Tab focuses Retry but the existing sticky composer covers its lower portion. CHANGE B is the current recovery region; CHANGE A is the composer causing the overlap.3px annotation removed with exact DOM restoration. No source changes. + +Browser-only focus-visible recovery-region scroll makes both error and Retry visible above the footer. Scope excludes source header overflow, graph, footer geometry, adapter, runtime and generated UI. Pointer focus must not scroll the clicked action; repeated pointer and keyboard Retry stay part of final proof. diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.png b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.png new file mode 100644 index 0000000..109ab85 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/change-boundary.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.before.html b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.before.html new file mode 100644 index 0000000..dbdd1d6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.html b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.html new file mode 100644 index 0000000..dbdd1d6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.json b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.json new file mode 100644 index 0000000..feb58b5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 8764, + "scrollHeight": 9166, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 166, + "clientHeight": 166, + "box": { + "x": 63, + "y": 54.75, + "width": 300, + "height": 166.59375, + "top": 54.75, + "right": 363, + "bottom": 221.34375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 196, + "clientHeight": 196, + "box": { + "x": 12, + "y": 251.34375, + "width": 366, + "height": 196.28125, + "top": 251.34375, + "right": 378, + "bottom": 447.625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 21, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.png b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.png new file mode 100644 index 0000000..de57d6c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/diagnostic-keyboard-recovery-region.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.html b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.html new file mode 100644 index 0000000..dbdd1d6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.png b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.png new file mode 100644 index 0000000..a722aad Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/failure.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/keyboard-scroll-diagnosis.json b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/keyboard-scroll-diagnosis.json new file mode 100644 index 0000000..3e19ed2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/keyboard-scroll-diagnosis.json @@ -0,0 +1,60 @@ +{ + "hit": { + "visible": true, + "top": 167.34375, + "bottom": 221.34375, + "focused": true, + "focusVisible": true + }, + "layout": [ + { + "class": "na-viewport", + "scrollTop": 8764, + "scrollHeight": 9166, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 166, + "clientHeight": 166, + "box": { + "x": 63, + "y": 54.75, + "width": 300, + "height": 166.59375, + "top": 54.75, + "right": 363, + "bottom": 221.34375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 196, + "clientHeight": 196, + "box": { + "x": 12, + "y": 251.34375, + "width": 366, + "height": 196.28125, + "top": 251.34375, + "right": 378, + "bottom": 447.625, + "left": 12 + } + } + ], + "sourceChange": false +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/report.json b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/report.json new file mode 100644 index 0000000..b1e3d30 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/report.json @@ -0,0 +1,1073 @@ +{ + "namedProof": "NODEAGENT-RESPONSE-RECOVERY-01", + "startedAt": "2026-09-05T08:47:18.274Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "a0e40ef53b606e3249c46002cfaf04c6741859b07d808bad6474287e6a897f1b", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "e0adeb247191d8a894bf74989b714e7fdcfcf9c1f3d91e52b95db2ded5bcf341", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "e2e/current-consumer-recovery-proof.mjs": "ed2a8ff8e0c034d534b2d5b1ca941735c71c0e4c091af7a6e48a5200503e6ecd", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "passed": false, + "checks": [ + { + "name": "source-empty-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source native incomplete tool shows stopped 390", + "passed": true + }, + { + "name": "source Stop preserves earlier completed response 390", + "passed": true + }, + { + "name": "source stopped response has no fake Done 390", + "passed": true + }, + { + "name": "source stopped response remains stable 390", + "passed": true + }, + { + "name": "source-stopped-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source Stop retains keyboard continuation focus 390", + "passed": true + }, + { + "name": "source stopped Retry replaces only current response 390", + "passed": true + }, + { + "name": "source partial failure names failed tool 390", + "passed": true + }, + { + "name": "source failed response does not retry automatically 390", + "passed": true + }, + { + "name": "source-error-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source first explicit Retry fails once with no automatic or duplicate retry 390", + "passed": true + }, + { + "name": "source-error-again-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "source enlarged Retry reachable from composer by keyboard 390", + "passed": true + }, + { + "name": "source-error-text-200-390 exact DOM during settled screenshot", + "passed": true + }, + { + "name": "diagnostic-keyboard-recovery-region exact DOM during settled screenshot", + "passed": true + } + ], + "cells": [ + { + "kind": "source", + "width": 390, + "errors": [ + "PROOF FIXTURE: second tool failed after the first actual result.", + "PROOF FIXTURE: second tool failed after the first actual result." + ], + "checksStart": 0, + "capturesStart": 0, + "stopInput": "keyboard", + "stopLatencyMs": 837, + "enlargement": { + "method": "Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.", + "elements": 143, + "documentOverflow": 21, + "changedBounds": [ + { + "class": "na-recovery", + "left": 63, + "right": 363, + "overflow": 0 + }, + { + "class": "na-composer", + "left": 12, + "right": 378, + "overflow": 0 + } + ] + } + } + ], + "captures": [ + { + "name": "source-empty-390", + "pngSha256": "b9bd3a826f01d4e4aa0b498bda080af60cf16f7f9064f7945da07c307601c843", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] + } + }, + { + "name": "source-stopped-390", + "pngSha256": "4f2e24a7795ce397f769657bf0374fc4dad5851cf2b0f37a83a9063fd25ef3b9", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1675, + "scrollHeight": 2077, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.59375, + "width": 300, + "height": 111.78125, + "top": 178.59375, + "right": 363, + "bottom": 290.375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-390", + "pngSha256": "29a7493e6ac3a9eb3cba4804f8040d2827c465c2a5d05b2660e22c8857f63916", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-again-390", + "pngSha256": "c481e005cee97d17a7f53d59ecc2a544369e32a6235277d4366ed43e19dc9707", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "source-error-text-200-390", + "pngSha256": "654cf0d4f6001314c345f1b0251b004983cf16ffb0cca46f13d5a444ffdc4873", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 8703, + "scrollHeight": 9166, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 166, + "clientHeight": 166, + "box": { + "x": 63, + "y": 115.75, + "width": 300, + "height": 166.59375, + "top": 115.75, + "right": 363, + "bottom": 282.34375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 196, + "clientHeight": 196, + "box": { + "x": 12, + "y": 251.484375, + "width": 366, + "height": 196.28125, + "top": 251.484375, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 21, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + }, + { + "name": "diagnostic-keyboard-recovery-region", + "pngSha256": "846136dc3a855a4191839ce33ca98e9d79dd476dca996256865edd6a140b6c36", + "state": { + "layout": [ + { + "class": "na-viewport", + "scrollTop": 8764, + "scrollHeight": 9166, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 166, + "clientHeight": 166, + "box": { + "x": 63, + "y": 54.75, + "width": 300, + "height": 166.59375, + "top": 54.75, + "right": 363, + "bottom": 221.34375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 196, + "clientHeight": 196, + "box": { + "x": 12, + "y": 251.34375, + "width": 366, + "height": 196.28125, + "top": 251.34375, + "right": 378, + "bottom": 447.625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 21, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] + } + } + ], + "requests": [ + { + "origin": "http://127.0.0.1:54323", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "https://fonts.googleapis.com", + "path": "/css2", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/app/main.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/features/node-agent/components/NodeAgentDemoApp.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/app/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/chunk-ZZMF36N4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/chunk-DP4XHQAG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/features/node-agent/components/toolUIs.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/features/node-agent/components/NodeAgentThread.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/features/node-agent/components/GraphRailPanel.tsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/chunk-QJQSCR4D.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/features/node-agent/runtime/nodeAgentRuntime.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/features/spreadsheet/applySpreadsheetDelta.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/features/node-agent/demoScenario.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/features/node-agent/graph/agentGraphSession.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/vendor/nodegraph-live/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/features/chat/contextCollector.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/features/search/searchAndSynthesize.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/features/spreadsheet/versionedSpreadsheetSync.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/src/features/notebook/notebookEditor.ts", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/vendor/nodegraph-live/index.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/vendor/nodegraph-live/NodeGraph.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/chunk-ONGDZAIN.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/vendor/nodegraph-live/graph-model.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/vendor/nodegraph-live/session.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/react_jsx-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/sigma.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/@sigma_node-border.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/graphology-layout-forceatlas2_worker__js.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/graphology.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/chunk-B3RW7T5U.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/chunk-YYJD3BGG.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/chunk-5DNN236L.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54323", + "path": "/node_modules/.vite/deps/chunk-SF2L6BXH.js", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2", + "method": "GET" + }, + { + "origin": "https://fonts.gstatic.com", + "path": "/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2", + "method": "GET" + } + ], + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "error": "Error: DIAGNOSTIC COMPLETE: keyboard recovery-region scroll only; source untouched\n at file:///C:/Users/hshum/.codex/worktrees/5dba/nodebench-ai/docs/plans/portfolio-recovery-20260904/E6e-nodeagent-current-consumer/diagnose-d3-keyboard-scroll.mjs:149:15", + "finishedAt": "2026-09-05T08:47:32.491Z" +} diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.before.html b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.before.html new file mode 100644 index 0000000..e8fe833 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.html b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.html new file mode 100644 index 0000000..e8fe833 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Ask the room

NodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.json b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.json new file mode 100644 index 0000000..e6697fb --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.json @@ -0,0 +1,64 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 0, + "scrollHeight": 660, + "clientHeight": 660, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 660.21875, + "top": 54, + "right": 390, + "bottom": 714.21875, + "left": 0 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 578.125, + "width": 366, + "height": 128.09375, + "top": 578.125, + "right": 378, + "bottom": 706.21875, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n◆\nAsk the room\n\nNodeAgent gathers the relevant context, finds the right document for the right answer, updates the model as a versioned delta, and writes the cited memo — and you watch each step render inline.\n\nDoes our wedge hold + survive 18 months? →\nWhat changed since last update? →\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n0 entities · 0 edges\n\nAsk the room a question — each loop step streams the entities it actually touched into this graph.", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Does our wedge hold + survive 18 months? →", + "disabled": false + }, + { + "label": "What changed since last update? →", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.png b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.png new file mode 100644 index 0000000..f02e77c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-empty-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.before.html b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.before.html new file mode 100644 index 0000000..71b2260 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.html b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.html new file mode 100644 index 0000000..71b2260 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.json b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.json new file mode 100644 index 0000000..c27b26c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.png b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.png new file mode 100644 index 0000000..7f92e4a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.before.html b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.before.html new file mode 100644 index 0000000..fcbe451 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.html b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.html new file mode 100644 index 0000000..fcbe451 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.json b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.json new file mode 100644 index 0000000..c27b26c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 3338, + "scrollHeight": 3740, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 88, + "clientHeight": 88, + "box": { + "x": 63, + "y": 200.609375, + "width": 300, + "height": 89.390625, + "top": 200.609375, + "right": 363, + "bottom": 290, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.png b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.png new file mode 100644 index 0000000..e927d82 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-again-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.before.html b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.before.html new file mode 100644 index 0000000..dbdd1d6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.html b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.html new file mode 100644 index 0000000..dbdd1d6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizefailed

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.json b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.json new file mode 100644 index 0000000..7effdbf --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 8703, + "scrollHeight": 9166, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 166, + "clientHeight": 166, + "box": { + "x": 63, + "y": 115.75, + "width": 300, + "height": 166.59375, + "top": 115.75, + "right": 363, + "bottom": 282.34375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 196, + "clientHeight": 196, + "box": { + "x": 12, + "y": 251.484375, + "width": 366, + "height": 196.28125, + "top": 251.484375, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nfailed\n\nThis response failed. Earlier results are kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 21, + "focus": { + "tag": "BUTTON", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.png b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.png new file mode 100644 index 0000000..018277b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-error-text-200-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.before.html b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.before.html new file mode 100644 index 0000000..4f4b96e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.html b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.html new file mode 100644 index 0000000..4f4b96e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room contextstopped

Stopped this response. Completed work is kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.json b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.json new file mode 100644 index 0000000..f1f8621 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.json @@ -0,0 +1,80 @@ +{ + "layout": [ + { + "class": "na-viewport", + "scrollTop": 1675, + "scrollHeight": 2077, + "clientHeight": 402, + "box": { + "x": 0, + "y": 54, + "width": 390, + "height": 401.765625, + "top": 54, + "right": 390, + "bottom": 455.765625, + "left": 0 + } + }, + { + "class": "na-recovery", + "scrollTop": 0, + "scrollHeight": 111, + "clientHeight": 111, + "box": { + "x": 63, + "y": 178.59375, + "width": 300, + "height": 111.78125, + "top": 178.59375, + "right": 363, + "bottom": 290.375, + "left": 63 + } + }, + { + "class": "na-footer", + "scrollTop": 0, + "scrollHeight": 128, + "clientHeight": 128, + "box": { + "x": 12, + "y": 319.671875, + "width": 366, + "height": 128.09375, + "top": 319.671875, + "right": 378, + "bottom": 447.765625, + "left": 12 + } + } + ], + "viewport": { + "width": 390, + "height": 844 + }, + "scroll": { + "x": 0, + "y": 0 + }, + "text": "NodeAgent\nPrototype ↗\nGitHub ↗\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nDone. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.\n\n💬\nGather room context\n3 items · 2 active\n0.20\nDOCUMENT\nI pushed the retrieval-latency benchmark doc to the room earlier.\n0.19\nMESSAGE\nAcme just dropped a competing teardown of our wedge. Investor call is in 40.\n0.03\nMESSAGE\nFinance flagged burn crept to 420k/mo after the two senior hires.\n🔎\nSearch & synthesize\nhigh · grounded 3/4\nRAG\n[1] room://benchmark — wedge holds vs Acme on latency\n0.44\nDOC\n[2] finance://burn — runway model\n0.56\nDOC\n[3] diligence://wedge — competitive note\n0.44\nWEB\n[4] Acme teardown blog — Why context rooms lose\n0.11\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n▦\nUpdate model\nv2 · 2 cells\nNet burn / mo ($k)\t420\nCash on hand ($k)\t7560\nRunway (months)\t18\n↳ Correct base burn to the finance-audited 420k (was stress figure 510k).\n✎\nWrite memo\n5 blocks\nAcme — diligence memo\n\nThe room asked: \"Does our wedge hold versus Acme, and does the runway model survive 18 months?\"\n\n◆ CLAIM · GROUNDED 3/4\nBest-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.\n\n⌗ room://benchmark — wedge holds vs Acme on latency\n\nModel updated to v2 (2 cells).\n\nDoes our wedge hold versus Acme, and does the runway model survive 18 months?\n\n◆\n\nOn it — pulling the room context, then searching, updating the model, and writing the memo.\n\n💬\nGather room context\nstopped\n\nStopped this response. Completed work is kept.\n\nRetry response\n↑\n\nDeterministic demo — no keys. The agent runs the real ported modules over a fixed scenario.\n\nSession graph\n12 entities · 26 edges\nRelationship graph\n\n12 entities · 26 of 26 relationships shown\n\nfit\nevidence\n(5)\ntraversal\n(21)\n· local", + "overflow": 0, + "focus": { + "tag": "TEXTAREA", + "label": null + }, + "buttons": [ + { + "label": "Retry response", + "disabled": false + }, + { + "label": "Send", + "disabled": true + }, + { + "label": "fit", + "disabled": false + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.png b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.png new file mode 100644 index 0000000..56520d5 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-keyboard-scroll-diagnosis-01/source-stopped-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-pack-02.stderr b/evidence/current-consumer-20260905/operator/d3-pack-02.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-pack-02.stdout b/evidence/current-consumer-20260905/operator/d3-pack-02.stdout new file mode 100644 index 0000000..71e77a9 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-pack-02.stdout @@ -0,0 +1,1226 @@ +[ + { + "id": "nodeagent@0.1.0", + "name": "nodeagent", + "version": "0.1.0", + "size": 8716152, + "unpackedSize": 10892309, + "shasum": "cb7c5d576afb2deabc73478e93ea03a14962316a", + "integrity": "sha512-MZrZTvnk42E3UGUvfGslMj88Aqt4ZcjbGQ+mBkS9qc/GDX+OMOrbTDVuFsrBxmXGtbXK7yTxJ81hOodwpZo8UQ==", + "filename": "nodeagent-0.1.0.tgz", + "files": [ + { + "path": ".env.example", + "size": 2059, + "mode": 420 + }, + { + "path": ".gitattributes", + "size": 230, + "mode": 420 + }, + { + "path": ".github/workflows/ci.yml", + "size": 1007, + "mode": 420 + }, + { + "path": ".github/workflows/node-platform-conformance.yml", + "size": 245, + "mode": 420 + }, + { + "path": ".tours/01-primary-user-flow.tour", + "size": 4887, + "mode": 420 + }, + { + "path": ".tours/02-agent-execution.tour", + "size": 4419, + "mode": 420 + }, + { + "path": ".tours/03-debug-and-recovery.tour", + "size": 4149, + "mode": 420 + }, + { + "path": "HANDOFF.md", + "size": 3118, + "mode": 420 + }, + { + "path": "NODE-LOOPS.md", + "size": 18453, + "mode": 420 + }, + { + "path": "README.md", + "size": 24923, + "mode": 420 + }, + { + "path": "bin/nodeagent.mjs", + "size": 9925, + "mode": 420 + }, + { + "path": "convex/schema.ts", + "size": 6450, + "mode": 420 + }, + { + "path": "demo/runNodeAgentDemo.ts", + "size": 3047, + "mode": 420 + }, + { + "path": "docs/ARCHITECTURE.md", + "size": 23278, + "mode": 420 + }, + { + "path": "docs/CHAT_UI_ADOPTION.md", + "size": 2472, + "mode": 420 + }, + { + "path": "docs/codebase/ARCHITECTURE.md", + "size": 6793, + "mode": 420 + }, + { + "path": "docs/codebase/CONCERNS.md", + "size": 7265, + "mode": 420 + }, + { + "path": "docs/codebase/CONVENTIONS.md", + "size": 4354, + "mode": 420 + }, + { + "path": "docs/codebase/INTEGRATIONS.md", + "size": 4605, + "mode": 420 + }, + { + "path": "docs/codebase/STACK.md", + "size": 3543, + "mode": 420 + }, + { + "path": "docs/codebase/STRUCTURE.md", + "size": 4452, + "mode": 420 + }, + { + "path": "docs/codebase/TESTING.md", + "size": 5470, + "mode": 420 + }, + { + "path": "docs/DEMO_SCRIPT.md", + "size": 13073, + "mode": 420 + }, + { + "path": "docs/DURABLE_RUNTIME.md", + "size": 4339, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-chat-ui-scaffold-smoke.json", + "size": 940, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-convex-smoke.json", + "size": 292, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-durable-smoke.json", + "size": 798, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-frame-smoke.json", + "size": 513, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-happy-path-speed.json", + "size": 1389, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-live-provider-smoke.json", + "size": 375, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json", + "size": 796, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-sqlite-smoke.json", + "size": 915, + "mode": 420 + }, + { + "path": "docs/eval/omnigent-nodeagent-smoke.json", + "size": 4911, + "mode": 420 + }, + { + "path": "docs/eval/omnigent-official-cli-probe.json", + "size": 3882, + "mode": 420 + }, + { + "path": "docs/FEATURE_PROOF_STORYBOARD.md", + "size": 2524, + "mode": 420 + }, + { + "path": "docs/GRAPH_INTEGRATION.md", + "size": 11246, + "mode": 420 + }, + { + "path": "docs/LOCAL_DASHBOARD_WALKTHROUGH.md", + "size": 3009, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.gif", + "size": 3752304, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.mp4", + "size": 752930, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.png", + "size": 153152, + "mode": 420 + }, + { + "path": "docs/MIGRATION_MAP.md", + "size": 6228, + "mode": 420 + }, + { + "path": "docs/OMNIGENT_INTEGRATION.md", + "size": 3501, + "mode": 420 + }, + { + "path": "docs/PUSH_TO_GITHUB.md", + "size": 3458, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-desktop-empty.png", + "size": 73151, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-desktop-run.png", + "size": 109697, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-mobile-empty.png", + "size": 49168, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-mobile-run.png", + "size": 72898, + "mode": 420 + }, + { + "path": "docs/screenshots/local-dashboard-builder-locked.png", + "size": 77366, + "mode": 420 + }, + { + "path": "docs/screenshots/local-dashboard-overview.png", + "size": 99852, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-desktop-empty.png", + "size": 104196, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-desktop-run.png", + "size": 292952, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-mobile-empty.png", + "size": 74915, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-mobile-run.png", + "size": 254578, + "mode": 420 + }, + { + "path": "docs/SIMPLIFICATION_REPORT.md", + "size": 19108, + "mode": 420 + }, + { + "path": "docs/START_HERE.md", + "size": 18001, + "mode": 420 + }, + { + "path": "docs/TECH_RETRO.md", + "size": 7418, + "mode": 420 + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif", + "size": 179310, + "mode": 420 + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4", + "size": 63733, + "mode": 420 + }, + { + "path": "e2e/audit-web-quality.mjs", + "size": 8040, + "mode": 420 + }, + { + "path": "e2e/capture-journey-at-width.mjs", + "size": 14569, + "mode": 420 + }, + { + "path": "e2e/capture-live-graph-rail.mjs", + "size": 3581, + "mode": 420 + }, + { + "path": "e2e/current-consumer-proof.mjs", + "size": 9566, + "mode": 420 + }, + { + "path": "e2e/current-consumer-recovery-proof.mjs", + "size": 16029, + "mode": 420 + }, + { + "path": "e2e/record-live-graph-rail.mjs", + "size": 4094, + "mode": 420 + }, + { + "path": "e2e/wig-review.mjs", + "size": 13334, + "mode": 420 + }, + { + "path": "examples/adapters/AGENTS.md", + "size": 992, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/.env.example", + "size": 119, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/iam-policy.template.json", + "size": 741, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/README.md", + "size": 2892, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/.env.example", + "size": 114, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/README.md", + "size": 2583, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/wrangler.example.jsonc", + "size": 632, + "mode": 420 + }, + { + "path": "examples/adapters/convex/.env.example", + "size": 141, + "mode": 420 + }, + { + "path": "examples/adapters/convex/README.md", + "size": 2758, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/.env.example", + "size": 68, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/README.md", + "size": 2491, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/schema.sql", + "size": 1455, + "mode": 420 + }, + { + "path": "examples/adapters/README.md", + "size": 3284, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/.env.example", + "size": 142, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/README.md", + "size": 2132, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/schema.sql", + "size": 1408, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/sqliteDurableRuntime.ts", + "size": 13915, + "mode": 420 + }, + { + "path": "examples/apps/aws-hackathon-visual-labs/README.md", + "size": 1769, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/README.md", + "size": 2782, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/.env.example", + "size": 181, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/AGENTS.md", + "size": 966, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/index.html", + "size": 304, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/package-lock.json", + "size": 235233, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/package.json", + "size": 558, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/public/nodeagent-chat-state.json", + "size": 227, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/README.md", + "size": 2170, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs", + "size": 2953, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs", + "size": 1251, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/main.jsx", + "size": 296, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "size": 5921, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "size": 4251, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "size": 3753, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/styles.css", + "size": 7163, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/vite.config.mjs", + "size": 176, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/README.md", + "size": 3366, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/.env.example", + "size": 183, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/AGENTS.md", + "size": 693, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/docs/eval/.gitkeep", + "size": 1, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/index.html", + "size": 312, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/package.json", + "size": 613, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/public/nodeagent-state.json", + "size": 2228, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/README.md", + "size": 2440, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs", + "size": 7591, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/src/main.jsx", + "size": 8493, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/src/styles.css", + "size": 6174, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/vite.config.mjs", + "size": 192, + "mode": 420 + }, + { + "path": "examples/apps/local-design-dashboard/README.md", + "size": 1411, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/.env.example", + "size": 136, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/AGENTS.md", + "size": 287, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/README.md", + "size": 1771, + "mode": 420 + }, + { + "path": "examples/apps/README.md", + "size": 2011, + "mode": 420 + }, + { + "path": "examples/apps/video-agent-pipeline/README.md", + "size": 2115, + "mode": 420 + }, + { + "path": "examples/omnigent/nodeagent-reviewer.yaml", + "size": 811, + "mode": 420 + }, + { + "path": "examples/omnigent/nodeagent-worker.yaml", + "size": 886, + "mode": 420 + }, + { + "path": "index.html", + "size": 1273, + "mode": 420 + }, + { + "path": "knip.json", + "size": 1226, + "mode": 420 + }, + { + "path": "nodeagent-v1.html", + "size": 25839, + "mode": 420 + }, + { + "path": "nodekit.yaml", + "size": 1291, + "mode": 420 + }, + { + "path": "package.json", + "size": 5147, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-initial-prefix.json", + "size": 111936, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-initial.json", + "size": 112485, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-axe-1440.json", + "size": 697, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-keyboard-375.json", + "size": 677, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-prefix-keyboard-375.json", + "size": 3271, + "mode": 420 + }, + { + "path": "promotion/evidence/baseline-observations.json", + "size": 2602, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-agent-running.png", + "size": 68440, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-empty.png", + "size": 84064, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-keyboard-run.png", + "size": 162268, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-run.png", + "size": 162473, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-second-turn.png", + "size": 141629, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-observations.json", + "size": 971, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-run.png", + "size": 55980, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-steering-observations.json", + "size": 1035, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-steering-run.png", + "size": 54568, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-768-observations.json", + "size": 972, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-768-run.png", + "size": 108296, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-960-observations.json", + "size": 971, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-960-run.png", + "size": 102626, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-1440-observations.json", + "size": 975, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-1440-run.png", + "size": 142820, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-axe-1440-observations.json", + "size": 1576, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-axe-1440-run.png", + "size": 142664, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-keyboard-375-observations.json", + "size": 1827, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-keyboard-375-run.png", + "size": 56137, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-375-observations.json", + "size": 1421, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-375-run.png", + "size": 17874, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-observations.json", + "size": 4769, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-run.png", + "size": 61683, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-375-observations.json", + "size": 942, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-375-run.png", + "size": 61575, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-1440-observations.json", + "size": 946, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-1440-run.png", + "size": 143242, + "mode": 420 + }, + { + "path": "promotion/evidence/lighthouse-desktop.json", + "size": 507209, + "mode": 420 + }, + { + "path": "promotion/evidence/lighthouse-mobile.json", + "size": 538645, + "mode": 420 + }, + { + "path": "promotion/evidence/mobile-375-empty.png", + "size": 50419, + "mode": 420 + }, + { + "path": "promotion/evidence/mobile-375-run.png", + "size": 17874, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-375-load.png", + "size": 72242, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-375-run.png", + "size": 82707, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-1440-load.png", + "size": 106661, + "mode": 420 + }, + { + "path": "promotion/evidence/web-quality-audit-prefix.json", + "size": 6321, + "mode": 420 + }, + { + "path": "promotion/evidence/web-quality-audit.json", + "size": 5913, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-desktop-1440.png", + "size": 151387, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-mobile-375.png", + "size": 55383, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-prefix-desktop-1440.png", + "size": 151660, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-prefix-mobile-375.png", + "size": 67905, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-review-prefix.json", + "size": 13686, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-review.json", + "size": 13677, + "mode": 420 + }, + { + "path": "promotion/PRODUCT_GOAL.md", + "size": 12758, + "mode": 420 + }, + { + "path": "promotion/PRODUCT_JOURNEYS.md", + "size": 8759, + "mode": 420 + }, + { + "path": "promotion/PROMOTION_LOG.md", + "size": 21001, + "mode": 420 + }, + { + "path": "promotion/SKILLS.md", + "size": 1965, + "mode": 420 + }, + { + "path": "promotion/WIG_REVIEW.md", + "size": 10270, + "mode": 420 + }, + { + "path": "scripts/build-tours.mjs", + "size": 12094, + "mode": 420 + }, + { + "path": "scripts/example-guidance-smoke.ts", + "size": 6150, + "mode": 420 + }, + { + "path": "scripts/nodeagent-chat-ui-scaffold-smoke.ts", + "size": 6899, + "mode": 420 + }, + { + "path": "scripts/nodeagent-cli.ts", + "size": 12183, + "mode": 420 + }, + { + "path": "scripts/nodeagent-convex-smoke.ts", + "size": 3813, + "mode": 420 + }, + { + "path": "scripts/nodeagent-durable-smoke.ts", + "size": 3881, + "mode": 420 + }, + { + "path": "scripts/nodeagent-frame-smoke.ts", + "size": 1759, + "mode": 420 + }, + { + "path": "scripts/nodeagent-live-provider-smoke.ts", + "size": 12362, + "mode": 420 + }, + { + "path": "scripts/nodeagent-local-dashboard-scaffold-smoke.ts", + "size": 7620, + "mode": 420 + }, + { + "path": "scripts/nodeagent-sqlite-smoke.ts", + "size": 5087, + "mode": 420 + }, + { + "path": "scripts/omnigent-nodeagent-smoke.ts", + "size": 7796, + "mode": 420 + }, + { + "path": "scripts/omnigent-official-probe.mjs", + "size": 4419, + "mode": 420 + }, + { + "path": "scripts/render-walkthrough-media.mjs", + "size": 3784, + "mode": 420 + }, + { + "path": "scripts/secret-scan.mjs", + "size": 4589, + "mode": 420 + }, + { + "path": "scripts/validate-tours.mjs", + "size": 6395, + "mode": 420 + }, + { + "path": "src/app/main.tsx", + "size": 346, + "mode": 420 + }, + { + "path": "src/app/styles.css", + "size": 14198, + "mode": 420 + }, + { + "path": "src/features/chat/contextCollector.ts", + "size": 4882, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/GraphRailPanel.tsx", + "size": 1731, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/NodeAgentDemoApp.tsx", + "size": 2103, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/NodeAgentThread.tsx", + "size": 5161, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/toolUIs.tsx", + "size": 6199, + "mode": 420 + }, + { + "path": "src/features/node-agent/demoScenario.ts", + "size": 4339, + "mode": 420 + }, + { + "path": "src/features/node-agent/graph/agentGraphSession.ts", + "size": 5405, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/durableRuntime.ts", + "size": 16727, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "size": 5303, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/nodeAgentRuntime.ts", + "size": 6247, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/omnigentAdapter.ts", + "size": 5334, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/reasoningFrameRunner.ts", + "size": 4264, + "mode": 420 + }, + { + "path": "src/features/node-agent/types/nodeAgentTypes.ts", + "size": 7520, + "mode": 420 + }, + { + "path": "src/features/notebook/notebookEditor.ts", + "size": 3510, + "mode": 420 + }, + { + "path": "src/features/search/searchAndSynthesize.ts", + "size": 6871, + "mode": 420 + }, + { + "path": "src/features/spreadsheet/applySpreadsheetDelta.ts", + "size": 8449, + "mode": 420 + }, + { + "path": "src/features/spreadsheet/versionedSpreadsheetSync.ts", + "size": 3636, + "mode": 420 + }, + { + "path": "tests/durableRuntime.test.ts", + "size": 4594, + "mode": 420 + }, + { + "path": "tests/nodeAgentRuntime.test.ts", + "size": 3145, + "mode": 420 + }, + { + "path": "tests/omnigentAdapter.test.ts", + "size": 1690, + "mode": 420 + }, + { + "path": "tests/reasoningFrameRunner.test.ts", + "size": 1697, + "mode": 420 + }, + { + "path": "tests/searchSynthesize.test.ts", + "size": 4487, + "mode": 420 + }, + { + "path": "tests/spreadsheetDelta.test.ts", + "size": 6534, + "mode": 420 + }, + { + "path": "tests/sqliteDurableRuntime.test.ts", + "size": 3844, + "mode": 420 + }, + { + "path": "tsconfig.json", + "size": 864, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts", + "size": 6867, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts.map", + "size": 2448, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.js", + "size": 16285, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.js.map", + "size": 13998, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.d.ts", + "size": 546, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.d.ts.map", + "size": 514, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.js", + "size": 305, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.js.map", + "size": 306, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts", + "size": 1267, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts.map", + "size": 1312, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js", + "size": 30805, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js.map", + "size": 24655, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.d.ts", + "size": 187, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.d.ts.map", + "size": 238, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.js", + "size": 120, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.js.map", + "size": 186, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/README.md", + "size": 111, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.d.ts", + "size": 2813, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.d.ts.map", + "size": 1876, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.js", + "size": 11719, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.js.map", + "size": 12101, + "mode": 420 + }, + { + "path": "vite.config.ts", + "size": 769, + "mode": 420 + }, + { + "path": "vitest.config.ts", + "size": 530, + "mode": 420 + } + ], + "entryCount": 242, + "bundled": [] + } +] diff --git a/evidence/current-consumer-20260905/operator/d3-pack-03.stderr b/evidence/current-consumer-20260905/operator/d3-pack-03.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-pack-03.stdout b/evidence/current-consumer-20260905/operator/d3-pack-03.stdout new file mode 100644 index 0000000..7b28e4e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-pack-03.stdout @@ -0,0 +1,1226 @@ +[ + { + "id": "nodeagent@0.1.0", + "name": "nodeagent", + "version": "0.1.0", + "size": 8716484, + "unpackedSize": 10893670, + "shasum": "935d149c6be47924c54bb0f07090ca69a8cfb80a", + "integrity": "sha512-XR65l13vetZzCohqqIlo4q1ZclfSkQL1V9Fl2c1UJwanJbi9vLIeXpy0vH/T2nPujPAi3p4SNvYRETDtVtHzOg==", + "filename": "nodeagent-0.1.0.tgz", + "files": [ + { + "path": ".env.example", + "size": 2059, + "mode": 420 + }, + { + "path": ".gitattributes", + "size": 230, + "mode": 420 + }, + { + "path": ".github/workflows/ci.yml", + "size": 1007, + "mode": 420 + }, + { + "path": ".github/workflows/node-platform-conformance.yml", + "size": 245, + "mode": 420 + }, + { + "path": ".tours/01-primary-user-flow.tour", + "size": 4887, + "mode": 420 + }, + { + "path": ".tours/02-agent-execution.tour", + "size": 4419, + "mode": 420 + }, + { + "path": ".tours/03-debug-and-recovery.tour", + "size": 4149, + "mode": 420 + }, + { + "path": "HANDOFF.md", + "size": 3118, + "mode": 420 + }, + { + "path": "NODE-LOOPS.md", + "size": 18453, + "mode": 420 + }, + { + "path": "README.md", + "size": 24923, + "mode": 420 + }, + { + "path": "bin/nodeagent.mjs", + "size": 9925, + "mode": 420 + }, + { + "path": "convex/schema.ts", + "size": 6450, + "mode": 420 + }, + { + "path": "demo/runNodeAgentDemo.ts", + "size": 3047, + "mode": 420 + }, + { + "path": "docs/ARCHITECTURE.md", + "size": 23278, + "mode": 420 + }, + { + "path": "docs/CHAT_UI_ADOPTION.md", + "size": 2472, + "mode": 420 + }, + { + "path": "docs/codebase/ARCHITECTURE.md", + "size": 6793, + "mode": 420 + }, + { + "path": "docs/codebase/CONCERNS.md", + "size": 7265, + "mode": 420 + }, + { + "path": "docs/codebase/CONVENTIONS.md", + "size": 4354, + "mode": 420 + }, + { + "path": "docs/codebase/INTEGRATIONS.md", + "size": 4605, + "mode": 420 + }, + { + "path": "docs/codebase/STACK.md", + "size": 3543, + "mode": 420 + }, + { + "path": "docs/codebase/STRUCTURE.md", + "size": 4452, + "mode": 420 + }, + { + "path": "docs/codebase/TESTING.md", + "size": 5470, + "mode": 420 + }, + { + "path": "docs/DEMO_SCRIPT.md", + "size": 13073, + "mode": 420 + }, + { + "path": "docs/DURABLE_RUNTIME.md", + "size": 4339, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-chat-ui-scaffold-smoke.json", + "size": 940, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-convex-smoke.json", + "size": 292, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-durable-smoke.json", + "size": 798, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-frame-smoke.json", + "size": 513, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-happy-path-speed.json", + "size": 1389, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-live-provider-smoke.json", + "size": 375, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json", + "size": 796, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-sqlite-smoke.json", + "size": 915, + "mode": 420 + }, + { + "path": "docs/eval/omnigent-nodeagent-smoke.json", + "size": 4911, + "mode": 420 + }, + { + "path": "docs/eval/omnigent-official-cli-probe.json", + "size": 3882, + "mode": 420 + }, + { + "path": "docs/FEATURE_PROOF_STORYBOARD.md", + "size": 2524, + "mode": 420 + }, + { + "path": "docs/GRAPH_INTEGRATION.md", + "size": 11246, + "mode": 420 + }, + { + "path": "docs/LOCAL_DASHBOARD_WALKTHROUGH.md", + "size": 3009, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.gif", + "size": 3752304, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.mp4", + "size": 752930, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.png", + "size": 153152, + "mode": 420 + }, + { + "path": "docs/MIGRATION_MAP.md", + "size": 6228, + "mode": 420 + }, + { + "path": "docs/OMNIGENT_INTEGRATION.md", + "size": 3501, + "mode": 420 + }, + { + "path": "docs/PUSH_TO_GITHUB.md", + "size": 3458, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-desktop-empty.png", + "size": 73151, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-desktop-run.png", + "size": 109697, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-mobile-empty.png", + "size": 49168, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-mobile-run.png", + "size": 72898, + "mode": 420 + }, + { + "path": "docs/screenshots/local-dashboard-builder-locked.png", + "size": 77366, + "mode": 420 + }, + { + "path": "docs/screenshots/local-dashboard-overview.png", + "size": 99852, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-desktop-empty.png", + "size": 104196, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-desktop-run.png", + "size": 292952, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-mobile-empty.png", + "size": 74915, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-mobile-run.png", + "size": 254578, + "mode": 420 + }, + { + "path": "docs/SIMPLIFICATION_REPORT.md", + "size": 19108, + "mode": 420 + }, + { + "path": "docs/START_HERE.md", + "size": 18001, + "mode": 420 + }, + { + "path": "docs/TECH_RETRO.md", + "size": 7418, + "mode": 420 + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif", + "size": 179310, + "mode": 420 + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4", + "size": 63733, + "mode": 420 + }, + { + "path": "e2e/audit-web-quality.mjs", + "size": 8040, + "mode": 420 + }, + { + "path": "e2e/capture-journey-at-width.mjs", + "size": 14569, + "mode": 420 + }, + { + "path": "e2e/capture-live-graph-rail.mjs", + "size": 3581, + "mode": 420 + }, + { + "path": "e2e/current-consumer-proof.mjs", + "size": 9566, + "mode": 420 + }, + { + "path": "e2e/current-consumer-recovery-proof.mjs", + "size": 17183, + "mode": 420 + }, + { + "path": "e2e/record-live-graph-rail.mjs", + "size": 4094, + "mode": 420 + }, + { + "path": "e2e/wig-review.mjs", + "size": 13334, + "mode": 420 + }, + { + "path": "examples/adapters/AGENTS.md", + "size": 992, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/.env.example", + "size": 119, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/iam-policy.template.json", + "size": 741, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/README.md", + "size": 2892, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/.env.example", + "size": 114, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/README.md", + "size": 2583, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/wrangler.example.jsonc", + "size": 632, + "mode": 420 + }, + { + "path": "examples/adapters/convex/.env.example", + "size": 141, + "mode": 420 + }, + { + "path": "examples/adapters/convex/README.md", + "size": 2758, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/.env.example", + "size": 68, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/README.md", + "size": 2491, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/schema.sql", + "size": 1455, + "mode": 420 + }, + { + "path": "examples/adapters/README.md", + "size": 3284, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/.env.example", + "size": 142, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/README.md", + "size": 2132, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/schema.sql", + "size": 1408, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/sqliteDurableRuntime.ts", + "size": 13915, + "mode": 420 + }, + { + "path": "examples/apps/aws-hackathon-visual-labs/README.md", + "size": 1769, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/README.md", + "size": 2782, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/.env.example", + "size": 181, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/AGENTS.md", + "size": 966, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/index.html", + "size": 304, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/package-lock.json", + "size": 235233, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/package.json", + "size": 558, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/public/nodeagent-chat-state.json", + "size": 227, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/README.md", + "size": 2170, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs", + "size": 2953, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs", + "size": 1251, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/main.jsx", + "size": 296, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "size": 5921, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "size": 4251, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "size": 3753, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/styles.css", + "size": 7163, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/vite.config.mjs", + "size": 176, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/README.md", + "size": 3366, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/.env.example", + "size": 183, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/AGENTS.md", + "size": 693, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/docs/eval/.gitkeep", + "size": 1, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/index.html", + "size": 312, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/package.json", + "size": 613, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/public/nodeagent-state.json", + "size": 2228, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/README.md", + "size": 2440, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs", + "size": 7591, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/src/main.jsx", + "size": 8493, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/src/styles.css", + "size": 6174, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/vite.config.mjs", + "size": 192, + "mode": 420 + }, + { + "path": "examples/apps/local-design-dashboard/README.md", + "size": 1411, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/.env.example", + "size": 136, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/AGENTS.md", + "size": 287, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/README.md", + "size": 1771, + "mode": 420 + }, + { + "path": "examples/apps/README.md", + "size": 2011, + "mode": 420 + }, + { + "path": "examples/apps/video-agent-pipeline/README.md", + "size": 2115, + "mode": 420 + }, + { + "path": "examples/omnigent/nodeagent-reviewer.yaml", + "size": 811, + "mode": 420 + }, + { + "path": "examples/omnigent/nodeagent-worker.yaml", + "size": 886, + "mode": 420 + }, + { + "path": "index.html", + "size": 1273, + "mode": 420 + }, + { + "path": "knip.json", + "size": 1226, + "mode": 420 + }, + { + "path": "nodeagent-v1.html", + "size": 25839, + "mode": 420 + }, + { + "path": "nodekit.yaml", + "size": 1291, + "mode": 420 + }, + { + "path": "package.json", + "size": 5147, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-initial-prefix.json", + "size": 111936, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-initial.json", + "size": 112485, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-axe-1440.json", + "size": 697, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-keyboard-375.json", + "size": 677, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-prefix-keyboard-375.json", + "size": 3271, + "mode": 420 + }, + { + "path": "promotion/evidence/baseline-observations.json", + "size": 2602, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-agent-running.png", + "size": 68440, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-empty.png", + "size": 84064, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-keyboard-run.png", + "size": 162268, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-run.png", + "size": 162473, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-second-turn.png", + "size": 141629, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-observations.json", + "size": 971, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-run.png", + "size": 55980, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-steering-observations.json", + "size": 1035, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-steering-run.png", + "size": 54568, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-768-observations.json", + "size": 972, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-768-run.png", + "size": 108296, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-960-observations.json", + "size": 971, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-960-run.png", + "size": 102626, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-1440-observations.json", + "size": 975, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-1440-run.png", + "size": 142820, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-axe-1440-observations.json", + "size": 1576, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-axe-1440-run.png", + "size": 142664, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-keyboard-375-observations.json", + "size": 1827, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-keyboard-375-run.png", + "size": 56137, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-375-observations.json", + "size": 1421, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-375-run.png", + "size": 17874, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-observations.json", + "size": 4769, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-run.png", + "size": 61683, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-375-observations.json", + "size": 942, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-375-run.png", + "size": 61575, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-1440-observations.json", + "size": 946, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-1440-run.png", + "size": 143242, + "mode": 420 + }, + { + "path": "promotion/evidence/lighthouse-desktop.json", + "size": 507209, + "mode": 420 + }, + { + "path": "promotion/evidence/lighthouse-mobile.json", + "size": 538645, + "mode": 420 + }, + { + "path": "promotion/evidence/mobile-375-empty.png", + "size": 50419, + "mode": 420 + }, + { + "path": "promotion/evidence/mobile-375-run.png", + "size": 17874, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-375-load.png", + "size": 72242, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-375-run.png", + "size": 82707, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-1440-load.png", + "size": 106661, + "mode": 420 + }, + { + "path": "promotion/evidence/web-quality-audit-prefix.json", + "size": 6321, + "mode": 420 + }, + { + "path": "promotion/evidence/web-quality-audit.json", + "size": 5913, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-desktop-1440.png", + "size": 151387, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-mobile-375.png", + "size": 55383, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-prefix-desktop-1440.png", + "size": 151660, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-prefix-mobile-375.png", + "size": 67905, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-review-prefix.json", + "size": 13686, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-review.json", + "size": 13677, + "mode": 420 + }, + { + "path": "promotion/PRODUCT_GOAL.md", + "size": 12758, + "mode": 420 + }, + { + "path": "promotion/PRODUCT_JOURNEYS.md", + "size": 8759, + "mode": 420 + }, + { + "path": "promotion/PROMOTION_LOG.md", + "size": 21001, + "mode": 420 + }, + { + "path": "promotion/SKILLS.md", + "size": 1965, + "mode": 420 + }, + { + "path": "promotion/WIG_REVIEW.md", + "size": 10270, + "mode": 420 + }, + { + "path": "scripts/build-tours.mjs", + "size": 12094, + "mode": 420 + }, + { + "path": "scripts/example-guidance-smoke.ts", + "size": 6150, + "mode": 420 + }, + { + "path": "scripts/nodeagent-chat-ui-scaffold-smoke.ts", + "size": 6899, + "mode": 420 + }, + { + "path": "scripts/nodeagent-cli.ts", + "size": 12183, + "mode": 420 + }, + { + "path": "scripts/nodeagent-convex-smoke.ts", + "size": 3813, + "mode": 420 + }, + { + "path": "scripts/nodeagent-durable-smoke.ts", + "size": 3881, + "mode": 420 + }, + { + "path": "scripts/nodeagent-frame-smoke.ts", + "size": 1759, + "mode": 420 + }, + { + "path": "scripts/nodeagent-live-provider-smoke.ts", + "size": 12362, + "mode": 420 + }, + { + "path": "scripts/nodeagent-local-dashboard-scaffold-smoke.ts", + "size": 7620, + "mode": 420 + }, + { + "path": "scripts/nodeagent-sqlite-smoke.ts", + "size": 5087, + "mode": 420 + }, + { + "path": "scripts/omnigent-nodeagent-smoke.ts", + "size": 7796, + "mode": 420 + }, + { + "path": "scripts/omnigent-official-probe.mjs", + "size": 4419, + "mode": 420 + }, + { + "path": "scripts/render-walkthrough-media.mjs", + "size": 3784, + "mode": 420 + }, + { + "path": "scripts/secret-scan.mjs", + "size": 4589, + "mode": 420 + }, + { + "path": "scripts/validate-tours.mjs", + "size": 6395, + "mode": 420 + }, + { + "path": "src/app/main.tsx", + "size": 346, + "mode": 420 + }, + { + "path": "src/app/styles.css", + "size": 14198, + "mode": 420 + }, + { + "path": "src/features/chat/contextCollector.ts", + "size": 4882, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/GraphRailPanel.tsx", + "size": 1731, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/NodeAgentDemoApp.tsx", + "size": 2103, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/NodeAgentThread.tsx", + "size": 5368, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/toolUIs.tsx", + "size": 6199, + "mode": 420 + }, + { + "path": "src/features/node-agent/demoScenario.ts", + "size": 4339, + "mode": 420 + }, + { + "path": "src/features/node-agent/graph/agentGraphSession.ts", + "size": 5405, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/durableRuntime.ts", + "size": 16727, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "size": 5303, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/nodeAgentRuntime.ts", + "size": 6247, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/omnigentAdapter.ts", + "size": 5334, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/reasoningFrameRunner.ts", + "size": 4264, + "mode": 420 + }, + { + "path": "src/features/node-agent/types/nodeAgentTypes.ts", + "size": 7520, + "mode": 420 + }, + { + "path": "src/features/notebook/notebookEditor.ts", + "size": 3510, + "mode": 420 + }, + { + "path": "src/features/search/searchAndSynthesize.ts", + "size": 6871, + "mode": 420 + }, + { + "path": "src/features/spreadsheet/applySpreadsheetDelta.ts", + "size": 8449, + "mode": 420 + }, + { + "path": "src/features/spreadsheet/versionedSpreadsheetSync.ts", + "size": 3636, + "mode": 420 + }, + { + "path": "tests/durableRuntime.test.ts", + "size": 4594, + "mode": 420 + }, + { + "path": "tests/nodeAgentRuntime.test.ts", + "size": 3145, + "mode": 420 + }, + { + "path": "tests/omnigentAdapter.test.ts", + "size": 1690, + "mode": 420 + }, + { + "path": "tests/reasoningFrameRunner.test.ts", + "size": 1697, + "mode": 420 + }, + { + "path": "tests/searchSynthesize.test.ts", + "size": 4487, + "mode": 420 + }, + { + "path": "tests/spreadsheetDelta.test.ts", + "size": 6534, + "mode": 420 + }, + { + "path": "tests/sqliteDurableRuntime.test.ts", + "size": 3844, + "mode": 420 + }, + { + "path": "tsconfig.json", + "size": 864, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts", + "size": 6867, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts.map", + "size": 2448, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.js", + "size": 16285, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.js.map", + "size": 13998, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.d.ts", + "size": 546, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.d.ts.map", + "size": 514, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.js", + "size": 305, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.js.map", + "size": 306, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts", + "size": 1267, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts.map", + "size": 1312, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js", + "size": 30805, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js.map", + "size": 24655, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.d.ts", + "size": 187, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.d.ts.map", + "size": 238, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.js", + "size": 120, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.js.map", + "size": 186, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/README.md", + "size": 111, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.d.ts", + "size": 2813, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.d.ts.map", + "size": 1876, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.js", + "size": 11719, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.js.map", + "size": 12101, + "mode": 420 + }, + { + "path": "vite.config.ts", + "size": 769, + "mode": 420 + }, + { + "path": "vitest.config.ts", + "size": 530, + "mode": 420 + } + ], + "entryCount": 242, + "bundled": [] + } +] diff --git a/evidence/current-consumer-20260905/operator/d3-pack.stderr b/evidence/current-consumer-20260905/operator/d3-pack.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-pack.stdout b/evidence/current-consumer-20260905/operator/d3-pack.stdout new file mode 100644 index 0000000..57bd1a9 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-pack.stdout @@ -0,0 +1,1226 @@ +[ + { + "id": "nodeagent@0.1.0", + "name": "nodeagent", + "version": "0.1.0", + "size": 8716154, + "unpackedSize": 10892272, + "shasum": "585b327605bf9b4eb1d8a44c5ce56bcc5a3ccae1", + "integrity": "sha512-AI3qcBJNb9JmkBJM03fev6YkwCzZ9WhIAI2BNJyaYe1zJyYL+iOaEyHKMLACbUPnbU0dRMexDWecGwXfuKXhiw==", + "filename": "nodeagent-0.1.0.tgz", + "files": [ + { + "path": ".env.example", + "size": 2059, + "mode": 420 + }, + { + "path": ".gitattributes", + "size": 230, + "mode": 420 + }, + { + "path": ".github/workflows/ci.yml", + "size": 1007, + "mode": 420 + }, + { + "path": ".github/workflows/node-platform-conformance.yml", + "size": 245, + "mode": 420 + }, + { + "path": ".tours/01-primary-user-flow.tour", + "size": 4887, + "mode": 420 + }, + { + "path": ".tours/02-agent-execution.tour", + "size": 4419, + "mode": 420 + }, + { + "path": ".tours/03-debug-and-recovery.tour", + "size": 4149, + "mode": 420 + }, + { + "path": "HANDOFF.md", + "size": 3118, + "mode": 420 + }, + { + "path": "NODE-LOOPS.md", + "size": 18453, + "mode": 420 + }, + { + "path": "README.md", + "size": 24923, + "mode": 420 + }, + { + "path": "bin/nodeagent.mjs", + "size": 9925, + "mode": 420 + }, + { + "path": "convex/schema.ts", + "size": 6450, + "mode": 420 + }, + { + "path": "demo/runNodeAgentDemo.ts", + "size": 3047, + "mode": 420 + }, + { + "path": "docs/ARCHITECTURE.md", + "size": 23278, + "mode": 420 + }, + { + "path": "docs/CHAT_UI_ADOPTION.md", + "size": 2472, + "mode": 420 + }, + { + "path": "docs/codebase/ARCHITECTURE.md", + "size": 6793, + "mode": 420 + }, + { + "path": "docs/codebase/CONCERNS.md", + "size": 7265, + "mode": 420 + }, + { + "path": "docs/codebase/CONVENTIONS.md", + "size": 4354, + "mode": 420 + }, + { + "path": "docs/codebase/INTEGRATIONS.md", + "size": 4605, + "mode": 420 + }, + { + "path": "docs/codebase/STACK.md", + "size": 3543, + "mode": 420 + }, + { + "path": "docs/codebase/STRUCTURE.md", + "size": 4452, + "mode": 420 + }, + { + "path": "docs/codebase/TESTING.md", + "size": 5470, + "mode": 420 + }, + { + "path": "docs/DEMO_SCRIPT.md", + "size": 13073, + "mode": 420 + }, + { + "path": "docs/DURABLE_RUNTIME.md", + "size": 4339, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-chat-ui-scaffold-smoke.json", + "size": 940, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-convex-smoke.json", + "size": 292, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-durable-smoke.json", + "size": 798, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-frame-smoke.json", + "size": 513, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-happy-path-speed.json", + "size": 1389, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-live-provider-smoke.json", + "size": 375, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json", + "size": 796, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-sqlite-smoke.json", + "size": 915, + "mode": 420 + }, + { + "path": "docs/eval/omnigent-nodeagent-smoke.json", + "size": 4911, + "mode": 420 + }, + { + "path": "docs/eval/omnigent-official-cli-probe.json", + "size": 3882, + "mode": 420 + }, + { + "path": "docs/FEATURE_PROOF_STORYBOARD.md", + "size": 2524, + "mode": 420 + }, + { + "path": "docs/GRAPH_INTEGRATION.md", + "size": 11246, + "mode": 420 + }, + { + "path": "docs/LOCAL_DASHBOARD_WALKTHROUGH.md", + "size": 3009, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.gif", + "size": 3752304, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.mp4", + "size": 752930, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.png", + "size": 153152, + "mode": 420 + }, + { + "path": "docs/MIGRATION_MAP.md", + "size": 6228, + "mode": 420 + }, + { + "path": "docs/OMNIGENT_INTEGRATION.md", + "size": 3501, + "mode": 420 + }, + { + "path": "docs/PUSH_TO_GITHUB.md", + "size": 3458, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-desktop-empty.png", + "size": 73151, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-desktop-run.png", + "size": 109697, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-mobile-empty.png", + "size": 49168, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-mobile-run.png", + "size": 72898, + "mode": 420 + }, + { + "path": "docs/screenshots/local-dashboard-builder-locked.png", + "size": 77366, + "mode": 420 + }, + { + "path": "docs/screenshots/local-dashboard-overview.png", + "size": 99852, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-desktop-empty.png", + "size": 104196, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-desktop-run.png", + "size": 292952, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-mobile-empty.png", + "size": 74915, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-mobile-run.png", + "size": 254578, + "mode": 420 + }, + { + "path": "docs/SIMPLIFICATION_REPORT.md", + "size": 19108, + "mode": 420 + }, + { + "path": "docs/START_HERE.md", + "size": 18001, + "mode": 420 + }, + { + "path": "docs/TECH_RETRO.md", + "size": 7418, + "mode": 420 + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif", + "size": 179310, + "mode": 420 + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4", + "size": 63733, + "mode": 420 + }, + { + "path": "e2e/audit-web-quality.mjs", + "size": 8040, + "mode": 420 + }, + { + "path": "e2e/capture-journey-at-width.mjs", + "size": 14569, + "mode": 420 + }, + { + "path": "e2e/capture-live-graph-rail.mjs", + "size": 3581, + "mode": 420 + }, + { + "path": "e2e/current-consumer-proof.mjs", + "size": 9566, + "mode": 420 + }, + { + "path": "e2e/current-consumer-recovery-proof.mjs", + "size": 16029, + "mode": 420 + }, + { + "path": "e2e/record-live-graph-rail.mjs", + "size": 4094, + "mode": 420 + }, + { + "path": "e2e/wig-review.mjs", + "size": 13334, + "mode": 420 + }, + { + "path": "examples/adapters/AGENTS.md", + "size": 992, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/.env.example", + "size": 119, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/iam-policy.template.json", + "size": 741, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/README.md", + "size": 2892, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/.env.example", + "size": 114, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/README.md", + "size": 2583, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/wrangler.example.jsonc", + "size": 632, + "mode": 420 + }, + { + "path": "examples/adapters/convex/.env.example", + "size": 141, + "mode": 420 + }, + { + "path": "examples/adapters/convex/README.md", + "size": 2758, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/.env.example", + "size": 68, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/README.md", + "size": 2491, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/schema.sql", + "size": 1455, + "mode": 420 + }, + { + "path": "examples/adapters/README.md", + "size": 3284, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/.env.example", + "size": 142, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/README.md", + "size": 2132, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/schema.sql", + "size": 1408, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/sqliteDurableRuntime.ts", + "size": 13915, + "mode": 420 + }, + { + "path": "examples/apps/aws-hackathon-visual-labs/README.md", + "size": 1769, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/README.md", + "size": 2782, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/.env.example", + "size": 181, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/AGENTS.md", + "size": 966, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/index.html", + "size": 304, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/package-lock.json", + "size": 235233, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/package.json", + "size": 558, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/public/nodeagent-chat-state.json", + "size": 227, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/README.md", + "size": 2170, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs", + "size": 2953, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs", + "size": 1251, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/main.jsx", + "size": 296, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "size": 5921, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "size": 4251, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "size": 3753, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/styles.css", + "size": 7126, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/vite.config.mjs", + "size": 176, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/README.md", + "size": 3366, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/.env.example", + "size": 183, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/AGENTS.md", + "size": 693, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/docs/eval/.gitkeep", + "size": 1, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/index.html", + "size": 312, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/package.json", + "size": 613, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/public/nodeagent-state.json", + "size": 2228, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/README.md", + "size": 2440, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs", + "size": 7591, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/src/main.jsx", + "size": 8493, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/src/styles.css", + "size": 6174, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/vite.config.mjs", + "size": 192, + "mode": 420 + }, + { + "path": "examples/apps/local-design-dashboard/README.md", + "size": 1411, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/.env.example", + "size": 136, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/AGENTS.md", + "size": 287, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/README.md", + "size": 1771, + "mode": 420 + }, + { + "path": "examples/apps/README.md", + "size": 2011, + "mode": 420 + }, + { + "path": "examples/apps/video-agent-pipeline/README.md", + "size": 2115, + "mode": 420 + }, + { + "path": "examples/omnigent/nodeagent-reviewer.yaml", + "size": 811, + "mode": 420 + }, + { + "path": "examples/omnigent/nodeagent-worker.yaml", + "size": 886, + "mode": 420 + }, + { + "path": "index.html", + "size": 1273, + "mode": 420 + }, + { + "path": "knip.json", + "size": 1226, + "mode": 420 + }, + { + "path": "nodeagent-v1.html", + "size": 25839, + "mode": 420 + }, + { + "path": "nodekit.yaml", + "size": 1291, + "mode": 420 + }, + { + "path": "package.json", + "size": 5147, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-initial-prefix.json", + "size": 111936, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-initial.json", + "size": 112485, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-axe-1440.json", + "size": 697, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-keyboard-375.json", + "size": 677, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-prefix-keyboard-375.json", + "size": 3271, + "mode": 420 + }, + { + "path": "promotion/evidence/baseline-observations.json", + "size": 2602, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-agent-running.png", + "size": 68440, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-empty.png", + "size": 84064, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-keyboard-run.png", + "size": 162268, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-run.png", + "size": 162473, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-second-turn.png", + "size": 141629, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-observations.json", + "size": 971, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-run.png", + "size": 55980, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-steering-observations.json", + "size": 1035, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-steering-run.png", + "size": 54568, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-768-observations.json", + "size": 972, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-768-run.png", + "size": 108296, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-960-observations.json", + "size": 971, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-960-run.png", + "size": 102626, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-1440-observations.json", + "size": 975, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-1440-run.png", + "size": 142820, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-axe-1440-observations.json", + "size": 1576, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-axe-1440-run.png", + "size": 142664, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-keyboard-375-observations.json", + "size": 1827, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-keyboard-375-run.png", + "size": 56137, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-375-observations.json", + "size": 1421, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-375-run.png", + "size": 17874, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-observations.json", + "size": 4769, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-run.png", + "size": 61683, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-375-observations.json", + "size": 942, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-375-run.png", + "size": 61575, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-1440-observations.json", + "size": 946, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-1440-run.png", + "size": 143242, + "mode": 420 + }, + { + "path": "promotion/evidence/lighthouse-desktop.json", + "size": 507209, + "mode": 420 + }, + { + "path": "promotion/evidence/lighthouse-mobile.json", + "size": 538645, + "mode": 420 + }, + { + "path": "promotion/evidence/mobile-375-empty.png", + "size": 50419, + "mode": 420 + }, + { + "path": "promotion/evidence/mobile-375-run.png", + "size": 17874, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-375-load.png", + "size": 72242, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-375-run.png", + "size": 82707, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-1440-load.png", + "size": 106661, + "mode": 420 + }, + { + "path": "promotion/evidence/web-quality-audit-prefix.json", + "size": 6321, + "mode": 420 + }, + { + "path": "promotion/evidence/web-quality-audit.json", + "size": 5913, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-desktop-1440.png", + "size": 151387, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-mobile-375.png", + "size": 55383, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-prefix-desktop-1440.png", + "size": 151660, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-prefix-mobile-375.png", + "size": 67905, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-review-prefix.json", + "size": 13686, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-review.json", + "size": 13677, + "mode": 420 + }, + { + "path": "promotion/PRODUCT_GOAL.md", + "size": 12758, + "mode": 420 + }, + { + "path": "promotion/PRODUCT_JOURNEYS.md", + "size": 8759, + "mode": 420 + }, + { + "path": "promotion/PROMOTION_LOG.md", + "size": 21001, + "mode": 420 + }, + { + "path": "promotion/SKILLS.md", + "size": 1965, + "mode": 420 + }, + { + "path": "promotion/WIG_REVIEW.md", + "size": 10270, + "mode": 420 + }, + { + "path": "scripts/build-tours.mjs", + "size": 12094, + "mode": 420 + }, + { + "path": "scripts/example-guidance-smoke.ts", + "size": 6150, + "mode": 420 + }, + { + "path": "scripts/nodeagent-chat-ui-scaffold-smoke.ts", + "size": 6899, + "mode": 420 + }, + { + "path": "scripts/nodeagent-cli.ts", + "size": 12183, + "mode": 420 + }, + { + "path": "scripts/nodeagent-convex-smoke.ts", + "size": 3813, + "mode": 420 + }, + { + "path": "scripts/nodeagent-durable-smoke.ts", + "size": 3881, + "mode": 420 + }, + { + "path": "scripts/nodeagent-frame-smoke.ts", + "size": 1759, + "mode": 420 + }, + { + "path": "scripts/nodeagent-live-provider-smoke.ts", + "size": 12362, + "mode": 420 + }, + { + "path": "scripts/nodeagent-local-dashboard-scaffold-smoke.ts", + "size": 7620, + "mode": 420 + }, + { + "path": "scripts/nodeagent-sqlite-smoke.ts", + "size": 5087, + "mode": 420 + }, + { + "path": "scripts/omnigent-nodeagent-smoke.ts", + "size": 7796, + "mode": 420 + }, + { + "path": "scripts/omnigent-official-probe.mjs", + "size": 4419, + "mode": 420 + }, + { + "path": "scripts/render-walkthrough-media.mjs", + "size": 3784, + "mode": 420 + }, + { + "path": "scripts/secret-scan.mjs", + "size": 4589, + "mode": 420 + }, + { + "path": "scripts/validate-tours.mjs", + "size": 6395, + "mode": 420 + }, + { + "path": "src/app/main.tsx", + "size": 346, + "mode": 420 + }, + { + "path": "src/app/styles.css", + "size": 14198, + "mode": 420 + }, + { + "path": "src/features/chat/contextCollector.ts", + "size": 4882, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/GraphRailPanel.tsx", + "size": 1731, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/NodeAgentDemoApp.tsx", + "size": 2103, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/NodeAgentThread.tsx", + "size": 5161, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/toolUIs.tsx", + "size": 6199, + "mode": 420 + }, + { + "path": "src/features/node-agent/demoScenario.ts", + "size": 4339, + "mode": 420 + }, + { + "path": "src/features/node-agent/graph/agentGraphSession.ts", + "size": 5405, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/durableRuntime.ts", + "size": 16727, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "size": 5303, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/nodeAgentRuntime.ts", + "size": 6247, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/omnigentAdapter.ts", + "size": 5334, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/reasoningFrameRunner.ts", + "size": 4264, + "mode": 420 + }, + { + "path": "src/features/node-agent/types/nodeAgentTypes.ts", + "size": 7520, + "mode": 420 + }, + { + "path": "src/features/notebook/notebookEditor.ts", + "size": 3510, + "mode": 420 + }, + { + "path": "src/features/search/searchAndSynthesize.ts", + "size": 6871, + "mode": 420 + }, + { + "path": "src/features/spreadsheet/applySpreadsheetDelta.ts", + "size": 8449, + "mode": 420 + }, + { + "path": "src/features/spreadsheet/versionedSpreadsheetSync.ts", + "size": 3636, + "mode": 420 + }, + { + "path": "tests/durableRuntime.test.ts", + "size": 4594, + "mode": 420 + }, + { + "path": "tests/nodeAgentRuntime.test.ts", + "size": 3145, + "mode": 420 + }, + { + "path": "tests/omnigentAdapter.test.ts", + "size": 1690, + "mode": 420 + }, + { + "path": "tests/reasoningFrameRunner.test.ts", + "size": 1697, + "mode": 420 + }, + { + "path": "tests/searchSynthesize.test.ts", + "size": 4487, + "mode": 420 + }, + { + "path": "tests/spreadsheetDelta.test.ts", + "size": 6534, + "mode": 420 + }, + { + "path": "tests/sqliteDurableRuntime.test.ts", + "size": 3844, + "mode": 420 + }, + { + "path": "tsconfig.json", + "size": 864, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts", + "size": 6867, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts.map", + "size": 2448, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.js", + "size": 16285, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.js.map", + "size": 13998, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.d.ts", + "size": 546, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.d.ts.map", + "size": 514, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.js", + "size": 305, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.js.map", + "size": 306, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts", + "size": 1267, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts.map", + "size": 1312, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js", + "size": 30805, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js.map", + "size": 24655, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.d.ts", + "size": 187, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.d.ts.map", + "size": 238, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.js", + "size": 120, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.js.map", + "size": 186, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/README.md", + "size": 111, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.d.ts", + "size": 2813, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.d.ts.map", + "size": 1876, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.js", + "size": 11719, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.js.map", + "size": 12101, + "mode": 420 + }, + { + "path": "vite.config.ts", + "size": 769, + "mode": 420 + }, + { + "path": "vitest.config.ts", + "size": 530, + "mode": 420 + } + ], + "entryCount": 242, + "bundled": [] + } +] diff --git a/evidence/current-consumer-20260905/operator/d3-primary-preservation-readback.json b/evidence/current-consumer-20260905/operator/d3-primary-preservation-readback.json new file mode 100644 index 0000000..53b5705 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-primary-preservation-readback.json @@ -0,0 +1,32 @@ +[ + { + "name": "primary-head", + "exit": 0, + "sha256": "60f857286c031a8172d111c183c1c2424aea72ad167f65a7eb0f13343712efce", + "sameBefore": null + }, + { + "name": "primary-index", + "exit": 0, + "sha256": "0d7c23b38f63ed4c17a9fd7a2b93fc797a2062bfb4e5090214ad277fa5f171ea", + "sameBefore": false + }, + { + "name": "primary-status", + "exit": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "sameBefore": true + }, + { + "name": "primary-refs", + "exit": 0, + "sha256": "66c33b755dd5ab353501b08720e282584bbfc643331375bb49b45e09fdb45007", + "sameBefore": false + }, + { + "name": "primary-worktrees", + "exit": 0, + "sha256": "960d0ec942afbfd80194e5e9c9febf8a0ae9fa7cd1e588817df50df4e8352c8a", + "sameBefore": false + } +] \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-primary-preservation-verified.json b/evidence/current-consumer-20260905/operator/d3-primary-preservation-verified.json new file mode 100644 index 0000000..59df70f --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-primary-preservation-verified.json @@ -0,0 +1,14 @@ +{ + "passed": true, + "primaryHEAD": "c0ad5236d5424fca60008ed500cb565683bcd1d5", + "originalIndexExact": true, + "indexSerialization": "git ls-files --stage -z; prior diagnostic newline serialization mismatch is retained, not a source/index mutation", + "primaryClean": true, + "existingRefsExact": true, + "onlyRefAddition": [ + "4e525fd0f84e08a4f8203599d7341c17bf53205e refs/heads/codex/nodeagent-current-consumer-20260905" + ], + "originalWorktreeBlockExact": true, + "newWorktree": "Authorized current-consumer sibling only", + "indexSha256": "76673f16be2d2376a07251eb459f191fa9d254c54e7ad9fe0e88eb5f9b812ed3" +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt b/evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt new file mode 100644 index 0000000..ce241cd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx.txt @@ -0,0 +1,117 @@ +import { + AuiIf, + AssistantRuntimeProvider, + ComposerPrimitive, + MessagePrimitive, + ThreadPrimitive, + useLocalRuntime, +} from "@assistant-ui/react"; +import { Github, KeyRound, SendHorizontal, Sparkles } from "lucide-react"; +import { nodeAgentLocalAdapter, SUGGESTED_PROMPT } from "./nodeAgentLocalAdapter.js"; +import { NodeAgentToolUIs } from "./toolUIs.jsx"; + +function UserMessage() { + return ( + +
+ +
+
+ ); +} + +function AssistantMessage() { + return ( + + +
+ +
+
+ ); +} + +function NodeAgentThread() { + return ( + + + snapshot.thread.isEmpty}> +
+ +

No-key local agent

+

Ask the room. Watch the work.

+

+ NodeAgent gathers context, checks sources, applies a model delta, + and writes the memo as inline tool cards. The default adapter is + scripted so the first run needs no API keys. +

+
+ + Run the MVP proof + + + Find the next check + +
+
+
+ + + {({ message }) => (message.role === "user" ? : )} + + + + + + + + +

Scripted local adapter. Replace it with a server route when credentials exist.

+
+
+
+ ); +} + +export function NodeAgentChatApp() { + const runtime = useLocalRuntime(nodeAgentLocalAdapter); + + return ( + + +
+
+
+ NA +
+ NodeAgent + portable chat UI +
+
+
+ + + + +
+
+
+ +
+
+
+ ); +} diff --git a/evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx.txt b/evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx.txt new file mode 100644 index 0000000..9bb8e34 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx.txt @@ -0,0 +1,108 @@ +import { makeAssistantToolUI } from "@assistant-ui/react"; + +function ToolCard({ children, label, running, sub }) { + return ( +
+
+ {label} + {running ? "working" : sub ?? "done"} +
+ {!running && children ?
{children}
: null} +
+ ); +} + +export const ContextToolUI = makeAssistantToolUI({ + toolName: "collect_context", + render: ({ result }) => ( + + {result?.items.map((item, index) => ( +

+ {item.relevance.toFixed(2)} + {item.kind} + {item.text} +

+ ))} +
+ ), +}); + +export const SearchToolUI = makeAssistantToolUI({ + toolName: "search_synthesize", + render: ({ result }) => ( + + {result?.sources.map((source) => ( +
+ {source.kind} + [{source.citation}] {source.title} + {source.grounding.toFixed(2)} +
+ ))} + {result?.answer ?

{result.answer}

: null} +
+ ), +}); + +export const ModelToolUI = makeAssistantToolUI({ + toolName: "apply_model_delta", + render: ({ result }) => { + const changed = new Set((result?.applied?.changes ?? []).map((change) => change.address)); + return ( + + + + {result && + Object.values(result.model.cells).map((cell) => ( + + + + + ))} + +
{cell.label}{cell.value}
+ {result?.applied?.reason ?

{result.applied.reason}

: null} +
+ ); + }, +}); + +export const MemoToolUI = makeAssistantToolUI({ + toolName: "write_memo", + render: ({ result }) => ( + +
+ {result?.blocks.map((block) => { + if (block.type === "heading") return

{block.text}

; + if (block.type === "claim") { + return ( +
+ Claim {block.groundedRatio} + {block.text} +
+ ); + } + return

{block.text}

; + })} +
+
+ ), +}); + +export function NodeAgentToolUIs() { + return ( + <> + + + + + + ); +} diff --git a/evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/styles.css b/evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/styles.css new file mode 100644 index 0000000..e0cb9a8 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-product-before-custody/examples/apps/chat-ui/template/src/styles.css @@ -0,0 +1,439 @@ +:root { + --bg: #101418; + --panel: #171d23; + --surface: #202831; + --text: #eef3f7; + --muted: #97a5b3; + --line: rgba(255, 255, 255, 0.11); + --accent: #65d6ad; + --accent-2: #f2b84b; +} + +* { + box-sizing: border-box; +} + +html, +body, +#root { + min-height: 100%; +} + +body { + margin: 0; + background: var(--bg); + color: var(--text); + font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; +} + +button, +textarea { + font: inherit; +} + +a { + color: inherit; +} + +.naShell { + min-height: 100vh; + display: grid; + grid-template-rows: 64px 1fr; +} + +.naTopbar { + display: flex; + align-items: center; + justify-content: space-between; + gap: 16px; + padding: 0 22px; + border-bottom: 1px solid var(--line); + background: rgba(16, 20, 24, 0.92); +} + +.naBrand { + display: flex; + align-items: center; + gap: 11px; +} + +.naBrand strong, +.naBrand span { + display: block; +} + +.naBrand span { + color: var(--muted); + font-size: 12px; +} + +.naLogo, +.naAvatar, +.naHeroMark { + display: inline-grid; + place-items: center; + background: var(--accent); + color: #06110d; + font-weight: 800; +} + +.naLogo { + width: 36px; + height: 36px; + border-radius: 8px; +} + +.naTopActions { + display: flex; + align-items: center; + gap: 10px; +} + +.naPill, +.naIconLink { + display: inline-flex; + align-items: center; + justify-content: center; + gap: 7px; + min-height: 34px; + border: 1px solid var(--line); + border-radius: 8px; + background: var(--panel); + color: var(--muted); + padding: 0 11px; + text-decoration: none; +} + +.naIconLink { + width: 36px; + padding: 0; +} + +.naMain, +.naThread, +.naViewport { + min-height: 0; +} + +.naMain { + display: flex; +} + +.naThread { + flex: 1; + display: flex; + flex-direction: column; +} + +.naViewport { + flex: 1; + overflow-y: auto; + display: flex; + flex-direction: column; + gap: 18px; + width: min(920px, 100%); + margin: 0 auto; + padding: 28px 18px 8px; +} + +.naEmpty { + width: min(640px, 100%); + margin: auto; + text-align: center; + padding: 28px 0; +} + +.naHeroMark { + width: 52px; + height: 52px; + margin: 0 auto 16px; + border-radius: 14px; +} + +.naEyebrow { + margin: 0 0 8px; + color: var(--accent); + font-size: 12px; + font-weight: 800; + letter-spacing: 0.08em; + text-transform: uppercase; +} + +.naEmpty h1 { + margin: 0 0 12px; + font-size: 40px; + line-height: 1.08; + letter-spacing: 0; +} + +.naEmpty p { + margin: 0 auto 18px; + color: var(--muted); + max-width: 58ch; +} + +.naSuggestions { + display: flex; + justify-content: center; + gap: 10px; + flex-wrap: wrap; +} + +.naChip { + border: 1px solid var(--line); + border-radius: 8px; + background: var(--surface); + color: var(--text); + padding: 10px 13px; +} + +.naMsg { + display: flex; + gap: 10px; +} + +.naMsgUser { + justify-content: flex-end; +} + +.naMsgAssistant { + justify-content: flex-start; +} + +.naAvatar { + width: 30px; + height: 30px; + border-radius: 8px; + font-size: 11px; + flex: 0 0 auto; +} + +.naBubble { + max-width: min(760px, 88%); + border-radius: 12px; + padding: 12px 14px; + line-height: 1.55; +} + +.naBubbleUser { + background: var(--accent); + color: #06110d; + font-weight: 650; +} + +.naBubbleAssistant { + flex: 1; + min-width: 0; + background: var(--panel); + border: 1px solid var(--line); +} + +.naFooter { + position: sticky; + bottom: 0; + width: min(920px, 100%); + margin: 0 auto; + padding: 12px 18px 20px; + background: linear-gradient(180deg, rgba(16, 20, 24, 0), var(--bg) 35%); +} + +.naComposer { + display: flex; + align-items: flex-end; + gap: 10px; + border: 1px solid var(--line); + background: var(--panel); + border-radius: 12px; + padding: 9px 9px 9px 13px; +} + +.naComposer:focus-within { + border-color: var(--accent); +} + +.naComposerInput { + min-height: 34px; + max-height: 160px; + flex: 1; + resize: none; + border: 0; + outline: 0; + background: transparent; + color: var(--text); + padding: 7px 0; +} + +.naComposerInput::placeholder, +.naFootnote { + color: var(--muted); +} + +.naSend { + width: 36px; + height: 36px; + display: inline-flex; + align-items: center; + justify-content: center; + border: 0; + border-radius: 8px; + background: var(--accent); + color: #06110d; +} + +.naSend:disabled { + opacity: 0.35; +} + +.naFootnote { + margin: 8px 0 0; + text-align: center; + font-size: 12px; +} + +.naTool { + margin-top: 10px; + overflow: hidden; + border: 1px solid var(--line); + border-radius: 8px; + background: var(--bg); +} + +.naTool[data-running="true"] { + border-style: dashed; +} + +.naTool header { + display: flex; + align-items: center; + justify-content: space-between; + gap: 12px; + padding: 10px 12px; + background: var(--surface); +} + +.naTool header span { + color: var(--accent); + font-size: 12px; +} + +.naToolBody { + padding: 12px; +} + +.naContextRow, +.naReason, +.naAnswer { + margin: 0; + color: var(--muted); +} + +.naContextRow { + display: grid; + grid-template-columns: 48px 72px 1fr; + gap: 8px; + padding: 5px 0; + border-top: 1px solid var(--line); + font-size: 13px; + text-align: left; +} + +.naContextRow:first-child { + border-top: 0; +} + +.naContextRow span, +.naSource em, +.naReason { + color: var(--accent-2); + font-family: ui-monospace, SFMono-Regular, Menlo, monospace; + font-size: 12px; +} + +.naSource { + display: grid; + grid-template-columns: 70px 1fr 44px; + align-items: center; + gap: 8px; + padding: 8px; + border: 1px solid var(--line); + border-radius: 8px; + margin-bottom: 7px; +} + +.naSourceWin { + border-color: var(--accent); + background: rgba(101, 214, 173, 0.08); +} + +.naSource span { + color: var(--muted); + font-size: 11px; +} + +.naModelTable { + width: 100%; + border-collapse: collapse; + margin-bottom: 8px; +} + +.naModelTable td { + border: 1px solid var(--line); + padding: 8px; +} + +.naModelTable td:last-child { + text-align: right; +} + +.naModelTable .changed { + color: var(--accent); + font-weight: 800; +} + +.naMemo h3 { + margin: 0 0 8px; +} + +.naMemo p { + color: var(--muted); +} + +.naMemo blockquote { + margin: 8px 0; + border-left: 3px solid var(--accent); + background: rgba(101, 214, 173, 0.08); + padding: 10px 12px; +} + +.naMemo blockquote strong { + display: block; + margin-bottom: 5px; + color: var(--accent); +} + +@media (max-width: 680px) { + .naTopbar { + padding: 0 14px; + } + + .naPill { + display: none; + } + + .naViewport { + padding: 20px 12px 8px; + } + + .naEmpty h1 { + font-size: 30px; + } + + .naBubble { + max-width: 100%; + } + + .naContextRow, + .naSource { + grid-template-columns: 1fr; + } +} diff --git a/evidence/current-consumer-20260905/operator/d3-product-before-custody/src/app/styles.css b/evidence/current-consumer-20260905/operator/d3-product-before-custody/src/app/styles.css new file mode 100644 index 0000000..b6c06d9 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-product-before-custody/src/app/styles.css @@ -0,0 +1,236 @@ +/* NodeAgent on assistant-ui — design DNA shared with nodeagent-v1.html. + bg #151413 · terracotta #d97757 · Manrope + JetBrains Mono. + We theme assistant-ui's headless primitives with our own CSS (no Tailwind). */ +:root { + --bg: #151413; + --paper: #1c1b1a; + --panel: #232221; + --surface: #2a2928; + --ink: #e8e4df; + /* The two secondary ink tokens are set by CONTRAST, not by taste. Both are + read against the darkest surface they ever sit on (--surface #2a2928), so + no call site has to re-check: --ink-muted 5.59:1, --ink-faint 4.88:1, both + clear of the 4.5:1 WCAG AA floor for body text. + Was --ink-muted #8a857e (3.97:1 on --surface) and --ink-faint #5a5650 + (1.99:1 on --surface, 2.36:1 on --paper). axe-core 4.13.0 reported the + second as a SERIOUS violation on .na-rail-empty at first paint and on + eight more nodes once the loop had run (.na-kind, .na-badge, .na-reason) — + see promotion/evidence/axe-initial-prefix.json and + journey-prefix-keyboard-375-observations.json. Fixed at the token because + seven rules read --ink-faint and five read --ink-muted; patching the one + selector axe named would have left the other twelve failing. */ + --ink-muted: #a5a098; + --ink-faint: #9a958d; + --accent: #d97757; + --accent-dim: rgba(217, 119, 87, 0.15); + --accent-ghost: rgba(217, 119, 87, 0.1); + --green: #7bd089; + --blue: #5b9bf5; + --purple: #a78bfa; + --line: rgba(255, 255, 255, 0.07); + --line-faint: rgba(255, 255, 255, 0.04); + --glass: rgba(255, 255, 255, 0.02); + --r: 14px; + --r-sm: 9px; + --r-pill: 999px; +} +* { box-sizing: border-box; } +/* WIG Design — "Set the appropriate color-scheme". Without this the browser + still paints scrollbars, popups and form controls light on a dark + page. `data-theme="dark"` in index.html is an app attribute; the browser + only reads color-scheme. */ +html { color-scheme: dark; } +html, body, #root { height: 100%; } +/* WIG Interactions — "Prevent double-tap zoom on controls". */ +a, button, input, textarea, select, label { touch-action: manipulation; } +body { + margin: 0; + background: var(--bg); + color: var(--ink); + font-family: "Manrope", system-ui, -apple-system, sans-serif; + font-size: 14px; + line-height: 1.55; + -webkit-font-smoothing: antialiased; + background-image: radial-gradient(900px 480px at 50% -10%, rgba(217, 119, 87, 0.08), transparent 60%); +} +.mono { font-family: "JetBrains Mono", ui-monospace, monospace; } +a { color: var(--accent); text-decoration: none; } +button { font-family: inherit; cursor: pointer; } +:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 6px; } + +/* shell */ +.na-app { display: flex; flex-direction: column; height: 100%; } +.na-appbar { + display: flex; align-items: center; gap: 12px; + height: 54px; padding: 0 18px; + border-bottom: 1px solid var(--line); + background: linear-gradient(180deg, rgba(21, 20, 19, 0.92), rgba(21, 20, 19, 0.7)); + backdrop-filter: blur(12px); +} +/* .na-brand is the

; the reset keeps the appbar looking identical. */ +.na-brand { display: flex; align-items: center; gap: 8px; font-weight: 800; letter-spacing: -0.02em; margin: 0; font-size: 14px; line-height: 1.55; } +.na-dot { width: 10px; height: 10px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 0 0 rgba(217, 119, 87, 0.5); animation: na-breathe 3.4s ease infinite; } +@keyframes na-breathe { 0%, 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(217,119,87,.5);} 50% { transform: scale(1.18); box-shadow: 0 0 0 7px rgba(217,119,87,0);} } +.na-ver { color: var(--ink-faint); font-size: 11px; font-weight: 500; } +.na-spacer { flex: 1; } +.na-link { font-size: 12px; color: var(--ink-muted); } +.na-link:hover { color: var(--accent); } + +.na-main { flex: 1; min-height: 0; display: flex; } + +/* thread */ +.na-thread { flex: 1; min-height: 0; display: flex; flex-direction: column; width: 100%; } +.na-viewport { + flex: 1; min-height: 0; overflow-y: auto; + display: flex; flex-direction: column; gap: 18px; + padding: 24px 18px 8px; + width: 100%; max-width: 820px; margin: 0 auto; +} + +/* empty state */ +.na-empty { margin: auto 0; text-align: center; max-width: 56ch; align-self: center; padding: 32px 0; } +.na-av { width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; flex: 0 0 26px; background: var(--accent-dim); color: var(--accent); font-size: 13px; } +.na-av-lg { width: 46px; height: 46px; font-size: 22px; margin: 0 auto 14px; } +.na-empty h2 { font-size: 22px; font-weight: 800; letter-spacing: -0.02em; margin: 0 0 8px; } +.na-empty p { color: var(--ink-muted); margin: 0 auto 18px; } +.na-suggestions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; } +.na-chip { + border: 1px solid var(--line); background: var(--glass); color: var(--ink-muted); + border-radius: var(--r-pill); padding: 9px 14px; font-size: 13px; font-weight: 600; + transition: border-color 120ms, color 120ms; +} +.na-chip:hover { border-color: var(--accent); color: var(--ink); } + +/* messages */ +.na-msg { display: flex; gap: 10px; } +.na-msg-user { justify-content: flex-end; } +.na-msg-assistant { justify-content: flex-start; } +.na-bubble { max-width: 88%; border-radius: 16px; padding: 11px 14px; font-size: 14px; line-height: 1.6; } +.na-bubble-user { background: var(--accent); color: #1a1009; border-bottom-right-radius: 5px; font-weight: 500; } +.na-bubble-assistant { background: var(--paper); border: 1px solid var(--line); border-bottom-left-radius: 5px; min-width: 0; flex: 1; } +.na-msg-assistant .na-av { margin-top: 2px; } + +/* composer */ +.na-footer { position: sticky; bottom: 0; width: 100%; max-width: 820px; margin: 0 auto; padding: 8px 0 16px; background: linear-gradient(180deg, transparent, var(--bg) 28%); } +.na-composer { display: flex; align-items: flex-end; gap: 8px; border: 1px solid var(--line); background: var(--paper); border-radius: 18px; padding: 8px 8px 8px 14px; } +.na-composer:focus-within { border-color: var(--accent); } +/* 16px, not 14px: iOS Safari auto-zooms the page when a field smaller than 16px + takes focus, so a 14px composer means every mobile user's first tap jumps the + layout. WIG Interactions — "Mobile input size". Measured at 375w before this: + 14px (promotion/evidence/wig-review-prefix.json). */ +.na-composer-input { flex: 1; resize: none; border: none; background: transparent; color: var(--ink); font-size: 16px; line-height: 1.5; padding: 6px 0; max-height: 160px; outline: none; } +.na-composer-input::placeholder { color: var(--ink-faint); } +.na-send { flex: 0 0 auto; width: 34px; height: 34px; border-radius: 50%; border: none; background: var(--accent); color: #1a1009; font-size: 16px; font-weight: 700; display: grid; place-items: center; } +.na-send:disabled { opacity: 0.3; } +.na-disclaimer { text-align: center; font-size: 11px; color: var(--ink-faint); margin: 8px 0 0; } + +/* ---- tool cards (the four surfaces, inline) ---- */ +.na-tool { border: 1px solid var(--line); border-radius: var(--r-sm); background: var(--bg); margin: 9px 0; overflow: hidden; } +.na-tool[data-running="true"] { border-style: dashed; } +.na-tool-h { display: flex; align-items: center; gap: 9px; padding: 9px 12px; background: var(--glass); } +.na-tool-i { width: 22px; height: 22px; border-radius: 6px; display: grid; place-items: center; font-size: 12px; background: var(--surface); } +.na-tool-label { font-weight: 700; font-size: 13px; } +.na-tool-status { margin-left: auto; font-size: 10px; font-family: "JetBrains Mono", monospace; } +.na-done { color: var(--green); } +.na-running { color: var(--accent); display: inline-flex; align-items: center; gap: 6px; } +.na-spin { width: 10px; height: 10px; border: 2px solid var(--accent-dim); border-top-color: var(--accent); border-radius: 50%; animation: na-spin 0.8s linear infinite; } +@keyframes na-spin { to { transform: rotate(360deg); } } +.na-tool-b { padding: 11px 12px; } + +/* context items */ +.na-ctx { display: flex; gap: 9px; align-items: baseline; padding: 4px 0; font-size: 12px; border-top: 1px solid var(--line-faint); } +.na-ctx:first-child { border-top: none; } +.na-rel { color: var(--accent); font-size: 11px; flex: 0 0 auto; } +.na-kind { color: var(--ink-faint); font-size: 10px; text-transform: uppercase; letter-spacing: 0.06em; flex: 0 0 64px; } +.na-txt { color: var(--ink-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } + +/* sources */ +.na-src { display: flex; gap: 9px; align-items: center; padding: 8px 9px; border: 1px solid var(--line-faint); border-radius: 7px; margin-bottom: 6px; } +.na-src.win { border-color: var(--accent); background: var(--accent-ghost); } +.na-badge { font-size: 9px; padding: 2px 6px; border-radius: 5px; background: var(--surface); color: var(--ink-muted); font-weight: 600; } +.na-src-t { font-size: 12px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex: 1; } +.na-g { margin-left: auto; font-size: 11px; color: var(--ink-muted); flex: 0 0 auto; } +.na-src.win .na-g { color: var(--accent); } +.na-answer { margin-top: 9px; padding: 11px; border: 1px solid var(--line); border-radius: 7px; background: var(--paper); font-size: 13px; line-height: 1.6; } +.na-faint { color: var(--ink-faint); } + +/* spreadsheet */ +.na-sheet { width: 100%; border-collapse: collapse; font-size: 12px; } +/* WIG Content — "Tabular numbers for comparisons". This table is the runway + model: the whole point is reading a column of figures against each other, and + proportional digits make the columns wobble. */ +.na-sheet td { border: 1px solid var(--line-faint); padding: 6px 9px; text-align: right; font-variant-numeric: tabular-nums; } +.na-sheet td:first-child { text-align: left; color: var(--ink-muted); } +.na-sheet td.na-delta { color: var(--accent); font-weight: 700; background: var(--accent-ghost); } +.na-reason { margin-top: 8px; font-size: 10px; color: var(--ink-faint); } + +/* memo */ +.na-memo { font-size: 13px; line-height: 1.6; } +.na-memo h2 { margin: 0 0 6px; font-size: 14px; font-weight: 700; line-height: 1.55; } +.na-memo p { margin: 6px 0; color: var(--ink); } +.na-claim { border-left: 2px solid var(--accent); background: var(--accent-ghost); padding: 9px 11px; border-radius: 0 7px 7px 0; margin: 7px 0; } +.na-claim-t { font-size: 10px; text-transform: uppercase; letter-spacing: 0.08em; color: var(--accent); font-weight: 700; margin-bottom: 4px; } +.na-cite-line { color: var(--ink-muted); font-size: 12px; } + +@media (max-width: 640px) { + .na-viewport { padding: 16px 12px 8px; } + .na-bubble { max-width: 100%; } + .na-ver { display: none; } +} +/* WIG Animations — "Honor prefers-reduced-motion". The animation half was + already here; the transition half was not, so .na-chip and .na-composer still + animated their border and colour under `reduce`. One rule, extended, rather + than a second block: a policy stated twice is a policy that will diverge. + The measurement that proves this is honest is in e2e/wig-review.mjs — a + runtime probe CANNOT prove it, because headless Chromium computes + animation-name: none whenever the media feature is emulated, whether or not + the page has any such rule. The check reads CSSOM for the rule itself. */ +@media (prefers-reduced-motion: reduce) { + * { animation: none !important; transition: none !important; } +} + +/* live graph rail (vendored @homenshum/nodegraph-live) */ +.na-rail { + width: 360px; min-width: 300px; + display: flex; flex-direction: column; + border-left: 1px solid var(--line); + background: var(--paper); +} +.na-rail-head { + display: flex; align-items: center; justify-content: space-between; + padding: 10px 14px; border-bottom: 1px solid var(--line-faint); + font-size: 12px; font-weight: 700; +} +.na-rail-meta { color: var(--ink-muted); font-size: 11px; font-weight: 500; } +.na-rail-empty { padding: 14px; color: var(--ink-faint); font-size: 12px; } +.na-rail-graph { padding: 8px; } +/* Below 960px there is no room beside the conversation, so the rail becomes a + bottom panel — it is never hidden. It used to be `display: none` here, and + that was defect D1: `display:none` is invisible to React, so GraphRailPanel + (which mounts on `snapshot.nodes.length > 0`, i.e. on DATA) put a + WebGL renderer inside a 0x0 box the moment the first loop step landed. Sigma + throws "Container has no width", and with no error boundary the throw took + the whole app down. A rail that is always laid out cannot be mounted into a + collapsed container, so the two owners of "is the rail shown?" cannot + disagree. Regression: `node e2e/capture-journey-at-width.mjs --width 375`. */ +@media (max-width: 960px) { + .na-main { flex-direction: column; } + .na-rail { + width: auto; min-width: 0; + flex: 0 0 auto; max-height: 46vh; overflow-y: auto; + border-left: none; border-top: 1px solid var(--line); + } + .na-rail-head { position: sticky; top: 0; z-index: 1; background: var(--paper); } + + /* WIG Interactions — "Match visual & hit targets": 44px minimum on mobile. + Measured at 375w before this rule: .na-link 66x19, .na-send 34x34, + .na-composer-input 285x33, and the vendored NodeGraph "fit" button 28x21 + with 13x13 filter checkboxes. The vendored control is corrected from here + rather than by editing vendor/nodegraph-live, which stays a verbatim copy. + Producer: `npm run wig:review`. */ + .na-link { display: inline-flex; align-items: center; min-height: 44px; } + .na-send { width: 44px; height: 44px; } + .na-composer-input { min-height: 44px; } + .na-rail-graph button { min-width: 44px; min-height: 44px; } + .na-rail-graph label { min-height: 44px; } +} + +/* Response controls retain completed results when native streaming stops. */ +.na-stop { width: auto; min-width: 64px; padding: 0 12px; } +.na-recovery { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line); overflow-wrap: anywhere; } +.na-recovery p { margin: 0 0 10px; } +.na-recovery button { min-height: 44px; padding: 8px 12px; border: 1px solid var(--ink-muted); border-radius: var(--r-sm); background: var(--surface); color: var(--ink); } +.na-recovery button:disabled { cursor: default; } +.na-interrupted { color: var(--ink-muted); } + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.before.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.before.html new file mode 100644 index 0000000..40bd530 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.html new file mode 100644 index 0000000..40bd530 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.png b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.png new file mode 100644 index 0000000..5373e2f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.after.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.after.html new file mode 100644 index 0000000..a06d645 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.after.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.before.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.before.html new file mode 100644 index 0000000..a06d645 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.html new file mode 100644 index 0000000..a06d645 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.png b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.png new file mode 100644 index 0000000..b617f34 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.after.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.after.html new file mode 100644 index 0000000..bbed259 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.after.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.before.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.before.html new file mode 100644 index 0000000..bbed259 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.html new file mode 100644 index 0000000..bbed259 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.png b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.png new file mode 100644 index 0000000..aaf17f4 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.after.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.after.html new file mode 100644 index 0000000..1142249 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.after.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.before.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.before.html new file mode 100644 index 0000000..1142249 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.html new file mode 100644 index 0000000..1142249 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.png b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.png new file mode 100644 index 0000000..e03dfdc Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.after.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.after.html new file mode 100644 index 0000000..d738d28 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.after.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.before.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.before.html new file mode 100644 index 0000000..d738d28 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.html new file mode 100644 index 0000000..d738d28 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.png b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.png new file mode 100644 index 0000000..60b1119 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.after.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.after.html new file mode 100644 index 0000000..07cd545 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.after.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.before.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.before.html new file mode 100644 index 0000000..07cd545 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.html new file mode 100644 index 0000000..07cd545 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

This response failed. Earlier results are kept.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.png b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.png new file mode 100644 index 0000000..bf7cb25 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-error-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.after.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.after.html new file mode 100644 index 0000000..c34e697 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.after.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.before.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.before.html new file mode 100644 index 0000000..c34e697 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.html new file mode 100644 index 0000000..c34e697 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.png b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.png new file mode 100644 index 0000000..436c900 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.after.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.after.html new file mode 100644 index 0000000..71bfd10 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.after.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.before.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.before.html new file mode 100644 index 0000000..71bfd10 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.html new file mode 100644 index 0000000..71bfd10 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.png b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.png new file mode 100644 index 0000000..f865a84 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.after.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.after.html new file mode 100644 index 0000000..58a009d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.after.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.before.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.before.html new file mode 100644 index 0000000..58a009d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.html new file mode 100644 index 0000000..58a009d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.png b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.png new file mode 100644 index 0000000..954ff33 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.after.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.after.html new file mode 100644 index 0000000..4c0d3dc --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.after.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.before.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.before.html new file mode 100644 index 0000000..4c0d3dc --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.html new file mode 100644 index 0000000..4c0d3dc --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.png b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.png new file mode 100644 index 0000000..0949a42 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.after.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.after.html new file mode 100644 index 0000000..24b1ce2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.after.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.before.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.before.html new file mode 100644 index 0000000..24b1ce2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.html new file mode 100644 index 0000000..24b1ce2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.png b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.png new file mode 100644 index 0000000..f088864 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.after.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.after.html new file mode 100644 index 0000000..63b7749 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.after.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.before.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.before.html new file mode 100644 index 0000000..63b7749 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.before.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.html b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.html new file mode 100644 index 0000000..63b7749 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.html @@ -0,0 +1,270 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.png b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.png new file mode 100644 index 0000000..7d606a8 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-source-matched-after/source-running-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-01-harness.mjs.txt b/evidence/current-consumer-20260905/operator/d3-source-smoke-01-harness.mjs.txt new file mode 100644 index 0000000..daa4b92 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-01-harness.mjs.txt @@ -0,0 +1,131 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import { createServer as portProbe } from 'node:net'; +import path from 'node:path'; +import { chromium } from 'playwright'; +import { createServer } from 'vite'; + +const source = path.resolve(import.meta.dirname, '..'); +const consumer = path.resolve(process.argv[2] ?? ''); +const output = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide a real installed generated app and NEW output directory'); +await mkdir(output, { recursive: false }); +const sha = bytes => createHash('sha256').update(bytes).digest('hex'); +const sourceFiles = execFileSync('git', ['ls-files', '-z'], { cwd: source, env: { ...process.env, GIT_OPTIONAL_LOCKS: '0' } }).toString().split('\0').filter(f => f && !path.basename(f).startsWith('.env')); +sourceFiles.push('e2e/current-consumer-proof.mjs', 'e2e/current-consumer-recovery-proof.mjs', 'examples/apps/chat-ui/template/package-lock.json'); +const consumerFiles = ['package.json', 'package-lock.json', 'index.html', 'vite.config.mjs', 'src/main.jsx', 'src/styles.css', 'src/nodeagent-chat/NodeAgentChatApp.jsx', 'src/nodeagent-chat/nodeAgentLocalAdapter.js', 'src/nodeagent-chat/toolUIs.jsx']; +const hashFiles = async (root, files) => Object.fromEntries(await Promise.all(files.map(async f => [f, sha(await readFile(path.join(root, f)))]))); +const report = { namedProof: 'NODEAGENT-RESPONSE-RECOVERY-01', startedAt: new Date().toISOString(), sourceBefore: await hashFiles(source, sourceFiles), consumerBefore: await hashFiles(consumer, consumerFiles), passed: false, checks: [], cells: [], captures: [], requests: [], grade: null }; +const check = (value, name) => { report.checks.push({ name, passed: Boolean(value) }); assert.ok(value, name); }; +let browser, server, page; +let kind, tool, bubble, composer; +const surfaces = process.argv[4] === '--source-only' ? ['source'] : ['generated', 'source']; +async function start(root) { + const probe = portProbe(); await new Promise(resolve => probe.listen(0, '127.0.0.1', resolve)); const port = probe.address().port; await new Promise(resolve => probe.close(resolve)); + server = await createServer({ root, envDir: false, server: { host: '127.0.0.1', port, strictPort: true, open: false } }); await server.listen(); return 'http://127.0.0.1:' + port; +} +async function snapshot(name) { + await page.locator(composer).scrollIntoViewIfNeeded(); + let prior = await page.content(); + for (let i = 0; i < 16; i++) { await page.waitForTimeout(200); const current = await page.content(); if (current === prior) break; prior = current; } + await page.evaluate(() => new Promise(resolve => requestAnimationFrame(() => requestAnimationFrame(resolve)))); + const html = await page.content(); + await writeFile(path.join(output, name + '.before.html'), html); + await page.screenshot({ path: path.join(output, name + '.png'), caret: 'initial' }); + const after = await page.content(); await writeFile(path.join(output, name + '.html'), after); + check(after === html, name + ' exact DOM during settled screenshot'); + const state = await page.evaluate(() => ({ viewport: { width: innerWidth, height: innerHeight }, scroll: { x: scrollX, y: scrollY }, text: document.body.innerText, overflow: document.documentElement.scrollWidth - innerWidth, focus: { tag: document.activeElement?.tagName, label: document.activeElement?.getAttribute('aria-label') }, buttons: [...document.querySelectorAll('button')].map(b => ({ label: b.getAttribute('aria-label') || b.textContent, disabled: b.disabled })) })); + await writeFile(path.join(output, name + '.json'), JSON.stringify(state, null, 2) + '\n'); + report.captures.push({ name, pngSha256: sha(await readFile(path.join(output, name + '.png'))), state }); return state; +} +async function send(question) { + await page.locator('textarea[name="input"]').fill(question); + await page.getByRole('button', { name: 'Send', exact: true }).waitFor(); + await page.waitForFunction(() => document.querySelector('button[aria-label="Send"]')?.disabled === false); + await page.locator('textarea[name="input"]').press('Enter'); +} +async function idleWithCards(count) { + await page.waitForFunction(({ tool, count }) => document.querySelectorAll(tool).length === count && !document.querySelector('button[aria-label="Stop response"]'), { tool, count }); +} +async function graph() { + if (kind === 'generated') return null; + return page.evaluate(async () => { const m = await import('/src/features/node-agent/graph/agentGraphSession.ts'); return m.graphSession.getSnapshot(); }); +} +async function installPartialFailure() { + await page.evaluate(async ({ modulePath, key }) => { + const module = await import(modulePath), original = module[key].run; + window.proofFailureCalls = 0; window.proofRecoveryCalls = 0; + module[key].run = async function* (args) { + window.proofFailureCalls++; + module[key].run = async function* (next) { window.proofRecoveryCalls++; yield* original(next); }; + for await (const frame of original(args)) { + yield frame; + const tools = frame.content.filter(p => p.type === 'tool-call'); + if (tools.some(p => p.result) && tools.some(p => !p.result)) throw new Error('PROOF FIXTURE: second tool failed after the first actual result.'); + } + }; + }, { modulePath: kind === 'generated' ? '/src/nodeagent-chat/nodeAgentLocalAdapter.js' : '/src/features/node-agent/runtime/nodeAgentChatAdapter.ts', key: kind === 'generated' ? 'nodeAgentLocalAdapter' : 'nodeAgentChatAdapter' }); +} +try { + browser = await chromium.launch({ headless: true }); report.browser = browser.version(); report.node = process.version; + for (kind of surfaces) { + const base = await start(kind === 'generated' ? consumer : source); + tool = kind === 'generated' ? '.naTool' : '.na-tool'; bubble = kind === 'generated' ? '.naMsgAssistant .naBubble' : '.na-msg-assistant .na-bubble'; composer = kind === 'generated' ? '.naComposer' : '.na-composer'; + for (const width of [320, 390, 768, 1024, 1440, 1920]) { + const ctx = await browser.newContext({ viewport: { width, height: width <= 390 ? 844 : 960 }, colorScheme: 'dark' }); + await ctx.route('**/*', route => { const request = route.request(), url = new URL(request.url()); if (report.requests.length < 2000) report.requests.push({ origin: url.origin, path: url.pathname, method: request.method() }); return url.origin === base || ['fonts.googleapis.com', 'fonts.gstatic.com'].includes(url.hostname) ? route.continue() : route.abort(); }); + page = await ctx.newPage(); page.setDefaultTimeout(16000); + const cell = { kind, width, errors: [], checksStart: report.checks.length, capturesStart: report.captures.length }; report.cells.push(cell); page.on('pageerror', error => cell.errors.push(error.message)); + await page.goto(base, { waitUntil: 'domcontentloaded', timeout: 45000 }); await page.locator('textarea[name="input"]').waitFor(); + const question = kind === 'generated' ? 'Does the local NodeAgent wedge hold for an MVP?' : 'Does our wedge hold versus Acme, and does the runway model survive 18 months?'; + await snapshot(kind + '-empty-' + width); + await send(question); await idleWithCards(4); await page.waitForTimeout(700); + const earlier = await page.locator(bubble).first().innerText(); const graphBefore = await graph(); + await send(question); await page.locator(tool + '[data-running="true"]').first().waitFor(); + const stop = page.getByRole('button', { name: 'Stop response', exact: true }); const began = Date.now(); + if ([390, 1024, 1920].includes(width)) { await stop.focus(); await page.keyboard.press('Enter'); cell.stopInput = 'keyboard'; } else { await stop.click(); cell.stopInput = 'pointer'; } + await page.getByText('Stopped this response. Completed work is kept.', { exact: true }).waitFor(); cell.stopLatencyMs = Date.now() - began; + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('stopped')), kind + ' native incomplete tool shows stopped ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' Stop preserves earlier completed response ' + width); + const stoppedText = await page.locator(bubble).last().innerText(), stoppedGraph = await graph(); + check(!stoppedText.includes('Done.'), kind + ' stopped response has no fake Done ' + width); + await page.waitForTimeout(750); check(await page.locator(bubble).last().innerText() === stoppedText, kind + ' stopped response remains stable ' + width); assert.deepEqual(await graph(), stoppedGraph); assert.deepEqual(stoppedGraph, graphBefore); + await snapshot(kind + '-stopped-' + width); + check(await page.locator('textarea[name="input"]').evaluate(e => e === document.activeElement), kind + ' Stop retains keyboard continuation focus ' + width); + await page.getByRole('button', { name: 'Retry response', exact: true }).click(); await idleWithCards(8); check(await page.locator(bubble).count() === 2, kind + ' stopped Retry replaces only current response ' + width); + await installPartialFailure(); await send(question); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('failed')), kind + ' partial failure names failed tool ' + width); + await page.waitForTimeout(750); check(await page.evaluate(() => window.proofFailureCalls === 1 && window.proofRecoveryCalls === 0), kind + ' failed response does not retry automatically ' + width); + await snapshot(kind + '-error-' + width); + const retry = page.getByRole('button', { name: 'Retry response', exact: true }); + if ([390, 1024, 1920].includes(width)) { await retry.focus(); await page.keyboard.press('Enter'); } else await retry.dblclick(); + await idleWithCards(12); check(await page.evaluate(() => window.proofRecoveryCalls === 1), kind + ' explicit Retry runs once despite repeated activation ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' recovery retains earlier evidence ' + width); + check(await page.getByRole('alert').count() === 0, kind + ' recovered response removes failure notice ' + width); + await snapshot(kind + '-recovered-' + width); + if (width === 390) { + const begin = Date.now(); for (let i = 0; i < 12; i++) { await send(question); await idleWithCards(4 * (4 + i)); } + cell.accumulation = { additionalTurns: 12, totalResponses: 15, toolCards: 60, elapsedMs: Date.now() - begin }; + await snapshot(kind + '-accumulated-' + width); + await page.evaluate(() => { for (const e of document.querySelectorAll('*')) { if ([...e.childNodes].some(n => n.nodeType === 3 && n.textContent.trim())) e.style.fontSize = parseFloat(getComputedStyle(e).fontSize) * 2 + 'px'; } }); + const enlarged = await snapshot(kind + '-text-200-' + width); check(enlarged.overflow <= 1, kind + ' doubled computed text reflows ' + width); cell.enlargement = 'Explicit test-only doubled computed text sizes; not an operating-system zoom certificate.'; + } + await page.reload({ waitUntil: 'domcontentloaded' }); await page.locator('textarea[name="input"]').waitFor(); check(await page.locator(tool).count() === 0, kind + ' reload resets browser session honestly ' + width); + await snapshot(kind + '-reloaded-' + width); + check(cell.errors.every(e => e.includes('PROOF FIXTURE: second tool failed')), kind + ' only the intentional adapter fault reaches page errors ' + width); + cell.checksEnd = report.checks.length; cell.capturesEnd = report.captures.length; await ctx.close(); + } + await server.close(); server = null; + } + check(report.requests.every(r => r.method === 'GET'), 'no browser writes or provider requests'); + report.sourceAfter = await hashFiles(source, sourceFiles); report.consumerAfter = await hashFiles(consumer, consumerFiles); assert.deepEqual(report.sourceAfter, report.sourceBefore); assert.deepEqual(report.consumerAfter, report.consumerBefore); + report.passed = true; +} catch (error) { + report.error = String(error.stack ?? error); process.exitCode = 1; + if (page && !page.isClosed()) { await writeFile(path.join(output, 'failure.html'), await page.content()); await page.screenshot({ path: path.join(output, 'failure.png'), caret: 'initial' }).catch(() => {}); } +} finally { + await browser?.close(); await server?.close(); report.finishedAt = new Date().toISOString(); await writeFile(path.join(output, 'report.json'), JSON.stringify(report, null, 2) + '\n'); console.log(JSON.stringify({ output, passed: report.passed, checks: report.checks.length, captures: report.captures.length, error: report.error })); +} diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-01.command.json b/evidence/current-consumer-20260905/operator/d3-source-smoke-01.command.json new file mode 100644 index 0000000..8a9f366 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-01.command.json @@ -0,0 +1,11 @@ +{ + "command": [ + "node", + "e2e/current-consumer-recovery-proof.mjs", + "D:/ProjectRecovery/NodeAgent current consumer 20260905/Locked Chat app", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01", + "--source-only" + ], + "exit": 1, + "seconds": 9.893549919128418 +} diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-01.stderr b/evidence/current-consumer-20260905/operator/d3-source-smoke-01.stderr new file mode 100644 index 0000000..41808a1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-01.stderr @@ -0,0 +1,5 @@ +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/react.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/index.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/NodeGraph.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/graph-model.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/session.js" points to missing source files diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-01.stdout b/evidence/current-consumer-20260905/operator/d3-source-smoke-01.stdout new file mode 100644 index 0000000..4b8c001 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-01.stdout @@ -0,0 +1 @@ +{"output":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-01","passed":false,"checks":7,"captures":2,"error":"AssertionError [ERR_ASSERTION]: source Stop retains keyboard continuation focus 320\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:96:7"} diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-02-harness.mjs.txt b/evidence/current-consumer-20260905/operator/d3-source-smoke-02-harness.mjs.txt new file mode 100644 index 0000000..68b131e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-02-harness.mjs.txt @@ -0,0 +1,131 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import { createServer as portProbe } from 'node:net'; +import path from 'node:path'; +import { chromium } from 'playwright'; +import { createServer } from 'vite'; + +const source = path.resolve(import.meta.dirname, '..'); +const consumer = path.resolve(process.argv[2] ?? ''); +const output = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide a real installed generated app and NEW output directory'); +await mkdir(output, { recursive: false }); +const sha = bytes => createHash('sha256').update(bytes).digest('hex'); +const sourceFiles = execFileSync('git', ['ls-files', '-z'], { cwd: source, env: { ...process.env, GIT_OPTIONAL_LOCKS: '0' } }).toString().split('\0').filter(f => f && !path.basename(f).startsWith('.env')); +sourceFiles.push('e2e/current-consumer-proof.mjs', 'e2e/current-consumer-recovery-proof.mjs', 'examples/apps/chat-ui/template/package-lock.json'); +const consumerFiles = ['package.json', 'package-lock.json', 'index.html', 'vite.config.mjs', 'src/main.jsx', 'src/styles.css', 'src/nodeagent-chat/NodeAgentChatApp.jsx', 'src/nodeagent-chat/nodeAgentLocalAdapter.js', 'src/nodeagent-chat/toolUIs.jsx']; +const hashFiles = async (root, files) => Object.fromEntries(await Promise.all(files.map(async f => [f, sha(await readFile(path.join(root, f)))]))); +const report = { namedProof: 'NODEAGENT-RESPONSE-RECOVERY-01', startedAt: new Date().toISOString(), sourceBefore: await hashFiles(source, sourceFiles), consumerBefore: await hashFiles(consumer, consumerFiles), passed: false, checks: [], cells: [], captures: [], requests: [], grade: null }; +const check = (value, name) => { report.checks.push({ name, passed: Boolean(value) }); assert.ok(value, name); }; +let browser, server, page; +let kind, tool, bubble, composer; +const surfaces = process.argv[4] === '--source-only' ? ['source'] : ['generated', 'source']; +async function start(root) { + const probe = portProbe(); await new Promise(resolve => probe.listen(0, '127.0.0.1', resolve)); const port = probe.address().port; await new Promise(resolve => probe.close(resolve)); + server = await createServer({ root, envDir: false, server: { host: '127.0.0.1', port, strictPort: true, open: false } }); await server.listen(); return 'http://127.0.0.1:' + port; +} +async function snapshot(name) { + await page.locator(composer).scrollIntoViewIfNeeded(); + let prior = await page.content(); + for (let i = 0; i < 16; i++) { await page.waitForTimeout(200); const current = await page.content(); if (current === prior) break; prior = current; } + await page.evaluate(() => new Promise(resolve => requestAnimationFrame(() => requestAnimationFrame(resolve)))); + const html = await page.content(); + await writeFile(path.join(output, name + '.before.html'), html); + await page.screenshot({ path: path.join(output, name + '.png'), caret: 'initial' }); + const after = await page.content(); await writeFile(path.join(output, name + '.html'), after); + check(after === html, name + ' exact DOM during settled screenshot'); + const state = await page.evaluate(() => ({ layout: [...document.querySelectorAll('.na-recovery,.naRecovery,.na-footer,.naFooter,.na-viewport,.naViewport')].map(e=>({class:e.className,scrollTop:e.scrollTop,scrollHeight:e.scrollHeight,clientHeight:e.clientHeight,box:JSON.parse(JSON.stringify(e.getBoundingClientRect()))})), viewport: { width: innerWidth, height: innerHeight }, scroll: { x: scrollX, y: scrollY }, text: document.body.innerText, overflow: document.documentElement.scrollWidth - innerWidth, focus: { tag: document.activeElement?.tagName, label: document.activeElement?.getAttribute('aria-label') }, buttons: [...document.querySelectorAll('button')].map(b => ({ label: b.getAttribute('aria-label') || b.textContent, disabled: b.disabled })) })); + await writeFile(path.join(output, name + '.json'), JSON.stringify(state, null, 2) + '\n'); + report.captures.push({ name, pngSha256: sha(await readFile(path.join(output, name + '.png'))), state }); return state; +} +async function send(question) { + await page.locator('textarea[name="input"]').fill(question); + await page.getByRole('button', { name: 'Send', exact: true }).waitFor(); + await page.waitForFunction(() => document.querySelector('button[aria-label="Send"]')?.disabled === false); + await page.locator('textarea[name="input"]').press('Enter'); +} +async function idleWithCards(count) { + await page.waitForFunction(({ tool, count }) => document.querySelectorAll(tool).length === count && !document.querySelector('button[aria-label="Stop response"]'), { tool, count }); +} +async function graph() { + if (kind === 'generated') return null; + return page.evaluate(async () => { const m = await import('/src/features/node-agent/graph/agentGraphSession.ts'); return m.graphSession.getSnapshot(); }); +} +async function installPartialFailure() { + await page.evaluate(async ({ modulePath, key }) => { + const module = await import(modulePath), original = module[key].run; + window.proofFailureCalls = 0; window.proofRecoveryCalls = 0; + module[key].run = async function* (args) { + window.proofFailureCalls++; + module[key].run = async function* (next) { window.proofRecoveryCalls++; yield* original(next); }; + for await (const frame of original(args)) { + yield frame; + const tools = frame.content.filter(p => p.type === 'tool-call'); + if (tools.some(p => p.result) && tools.some(p => !p.result)) throw new Error('PROOF FIXTURE: second tool failed after the first actual result.'); + } + }; + }, { modulePath: kind === 'generated' ? '/src/nodeagent-chat/nodeAgentLocalAdapter.js' : '/src/features/node-agent/runtime/nodeAgentChatAdapter.ts', key: kind === 'generated' ? 'nodeAgentLocalAdapter' : 'nodeAgentChatAdapter' }); +} +try { + browser = await chromium.launch({ headless: true }); report.browser = browser.version(); report.node = process.version; + for (kind of surfaces) { + const base = await start(kind === 'generated' ? consumer : source); + tool = kind === 'generated' ? '.naTool' : '.na-tool'; bubble = kind === 'generated' ? '.naMsgAssistant .naBubble' : '.na-msg-assistant .na-bubble'; composer = kind === 'generated' ? '.naComposer' : '.na-composer'; + for (const width of [320, 390, 768, 1024, 1440, 1920]) { + const ctx = await browser.newContext({ viewport: { width, height: width <= 390 ? 844 : 960 }, colorScheme: 'dark' }); + await ctx.route('**/*', route => { const request = route.request(), url = new URL(request.url()); if (report.requests.length < 2000) report.requests.push({ origin: url.origin, path: url.pathname, method: request.method() }); return url.origin === base || ['fonts.googleapis.com', 'fonts.gstatic.com'].includes(url.hostname) ? route.continue() : route.abort(); }); + page = await ctx.newPage(); page.setDefaultTimeout(16000); + const cell = { kind, width, errors: [], checksStart: report.checks.length, capturesStart: report.captures.length }; report.cells.push(cell); page.on('pageerror', error => cell.errors.push(error.message)); + await page.goto(base, { waitUntil: 'domcontentloaded', timeout: 45000 }); await page.locator('textarea[name="input"]').waitFor(); + const question = kind === 'generated' ? 'Does the local NodeAgent wedge hold for an MVP?' : 'Does our wedge hold versus Acme, and does the runway model survive 18 months?'; + await snapshot(kind + '-empty-' + width); + await send(question); await idleWithCards(4); await page.waitForTimeout(700); + const earlier = await page.locator(bubble).first().innerText(); const graphBefore = await graph(); + await send(question); await page.locator(tool + '[data-running="true"]').first().waitFor(); + const stop = page.getByRole('button', { name: 'Stop response', exact: true }); const began = Date.now(); + if ([390, 1024, 1920].includes(width)) { await stop.focus(); await page.keyboard.press('Enter'); cell.stopInput = 'keyboard'; } else { await stop.click(); cell.stopInput = 'pointer'; } + await page.getByText('Stopped this response. Completed work is kept.', { exact: true }).waitFor(); cell.stopLatencyMs = Date.now() - began; + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('stopped')), kind + ' native incomplete tool shows stopped ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' Stop preserves earlier completed response ' + width); + const stoppedText = await page.locator(bubble).last().innerText(), stoppedGraph = await graph(); + check(!stoppedText.includes('Done.'), kind + ' stopped response has no fake Done ' + width); + await page.waitForTimeout(750); check(await page.locator(bubble).last().innerText() === stoppedText, kind + ' stopped response remains stable ' + width); assert.deepEqual(await graph(), stoppedGraph); assert.deepEqual(stoppedGraph, graphBefore); + await snapshot(kind + '-stopped-' + width); + check(await page.locator('textarea[name="input"]').evaluate(e => e === document.activeElement), kind + ' Stop retains keyboard continuation focus ' + width); + await page.getByRole('button', { name: 'Retry response', exact: true }).click(); await idleWithCards(8); check(await page.locator(bubble).count() === 2, kind + ' stopped Retry replaces only current response ' + width); + await installPartialFailure(); await send(question); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('failed')), kind + ' partial failure names failed tool ' + width); + await page.waitForTimeout(750); check(await page.evaluate(() => window.proofFailureCalls === 1 && window.proofRecoveryCalls === 0), kind + ' failed response does not retry automatically ' + width); + await snapshot(kind + '-error-' + width); + const retry = page.getByRole('button', { name: 'Retry response', exact: true }); + if ([390, 1024, 1920].includes(width)) { await retry.focus(); await page.keyboard.press('Enter'); } else await retry.dblclick(); + await idleWithCards(12); check(await page.evaluate(() => window.proofRecoveryCalls === 1), kind + ' explicit Retry runs once despite repeated activation ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' recovery retains earlier evidence ' + width); + check(await page.getByRole('alert').count() === 0, kind + ' recovered response removes failure notice ' + width); + await snapshot(kind + '-recovered-' + width); + if (width === 390) { + const begin = Date.now(); for (let i = 0; i < 12; i++) { await send(question); await idleWithCards(4 * (4 + i)); } + cell.accumulation = { additionalTurns: 12, totalResponses: 15, toolCards: 60, elapsedMs: Date.now() - begin }; + await snapshot(kind + '-accumulated-' + width); + await page.evaluate(() => { for (const e of document.querySelectorAll('*')) { if ([...e.childNodes].some(n => n.nodeType === 3 && n.textContent.trim())) e.style.fontSize = parseFloat(getComputedStyle(e).fontSize) * 2 + 'px'; } }); + const enlarged = await snapshot(kind + '-text-200-' + width); check(enlarged.overflow <= 1, kind + ' doubled computed text reflows ' + width); cell.enlargement = 'Explicit test-only doubled computed text sizes; not an operating-system zoom certificate.'; + } + await page.reload({ waitUntil: 'domcontentloaded' }); await page.locator('textarea[name="input"]').waitFor(); check(await page.locator(tool).count() === 0, kind + ' reload resets browser session honestly ' + width); + await snapshot(kind + '-reloaded-' + width); + check(cell.errors.every(e => e.includes('PROOF FIXTURE: second tool failed')), kind + ' only the intentional adapter fault reaches page errors ' + width); + cell.checksEnd = report.checks.length; cell.capturesEnd = report.captures.length; await ctx.close(); + } + await server.close(); server = null; + } + check(report.requests.every(r => r.method === 'GET'), 'no browser writes or provider requests'); + report.sourceAfter = await hashFiles(source, sourceFiles); report.consumerAfter = await hashFiles(consumer, consumerFiles); assert.deepEqual(report.sourceAfter, report.sourceBefore); assert.deepEqual(report.consumerAfter, report.consumerBefore); + report.passed = true; +} catch (error) { + report.error = String(error.stack ?? error); process.exitCode = 1; + if (page && !page.isClosed()) { await writeFile(path.join(output, 'failure.html'), await page.content()); await page.screenshot({ path: path.join(output, 'failure.png'), caret: 'initial' }).catch(() => {}); } +} finally { + await browser?.close(); await server?.close(); report.finishedAt = new Date().toISOString(); await writeFile(path.join(output, 'report.json'), JSON.stringify(report, null, 2) + '\n'); console.log(JSON.stringify({ output, passed: report.passed, checks: report.checks.length, captures: report.captures.length, error: report.error })); +} diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-02.command.json b/evidence/current-consumer-20260905/operator/d3-source-smoke-02.command.json new file mode 100644 index 0000000..f688442 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-02.command.json @@ -0,0 +1,11 @@ +{ + "command": [ + "node", + "e2e/current-consumer-recovery-proof.mjs", + "D:/ProjectRecovery/NodeAgent current consumer 20260905/Locked Chat app", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02", + "--source-only" + ], + "exit": 1, + "seconds": 14.270663976669312 +} diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-02.stderr b/evidence/current-consumer-20260905/operator/d3-source-smoke-02.stderr new file mode 100644 index 0000000..1b47e45 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-02.stderr @@ -0,0 +1,5 @@ +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/react.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/index.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/NodeGraph.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/session.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/graph-model.js" points to missing source files diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-02.stdout b/evidence/current-consumer-20260905/operator/d3-source-smoke-02.stdout new file mode 100644 index 0000000..fd2bad4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-02.stdout @@ -0,0 +1 @@ +{"output":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-02","passed":false,"checks":12,"captures":3,"error":"AssertionError [ERR_ASSERTION]: source explicit Retry runs once despite repeated activation 320\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:105:32"} diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-03.command.json b/evidence/current-consumer-20260905/operator/d3-source-smoke-03.command.json new file mode 100644 index 0000000..c8ae82a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-03.command.json @@ -0,0 +1,11 @@ +{ + "command": [ + "node", + "e2e/current-consumer-recovery-proof.mjs", + "D:/ProjectRecovery/NodeAgent current consumer 20260905/Locked Chat app", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03", + "--source-only" + ], + "exit": 1, + "seconds": 14.287252187728882 +} diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-03.stderr b/evidence/current-consumer-20260905/operator/d3-source-smoke-03.stderr new file mode 100644 index 0000000..41808a1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-03.stderr @@ -0,0 +1,5 @@ +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/react.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/index.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/NodeGraph.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/graph-model.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/session.js" points to missing source files diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-03.stdout b/evidence/current-consumer-20260905/operator/d3-source-smoke-03.stdout new file mode 100644 index 0000000..3a0af5d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-03.stdout @@ -0,0 +1 @@ +{"output":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-03","passed":false,"checks":12,"captures":3,"error":"AssertionError [ERR_ASSERTION]: source explicit Retry runs once despite repeated activation 320\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:105:114"} diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-04.command.json b/evidence/current-consumer-20260905/operator/d3-source-smoke-04.command.json new file mode 100644 index 0000000..f7aba7e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-04.command.json @@ -0,0 +1,11 @@ +{ + "command": [ + "node", + "e2e/current-consumer-recovery-proof.mjs", + "D:/ProjectRecovery/NodeAgent current consumer 20260905/Locked Chat app", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04", + "--source-only" + ], + "exit": 1, + "seconds": 14.23109483718872 +} diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-04.stderr b/evidence/current-consumer-20260905/operator/d3-source-smoke-04.stderr new file mode 100644 index 0000000..41808a1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-04.stderr @@ -0,0 +1,5 @@ +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/react.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/index.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/NodeGraph.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/graph-model.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/session.js" points to missing source files diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-04.stdout b/evidence/current-consumer-20260905/operator/d3-source-smoke-04.stdout new file mode 100644 index 0000000..281a053 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-04.stdout @@ -0,0 +1 @@ +{"output":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-04","passed":false,"checks":12,"captures":3,"error":"AssertionError [ERR_ASSERTION]: source explicit Retry runs once despite repeated activation 320\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:105:114"} diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-05.command.json b/evidence/current-consumer-20260905/operator/d3-source-smoke-05.command.json new file mode 100644 index 0000000..df41817 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-05.command.json @@ -0,0 +1,11 @@ +{ + "command": [ + "node", + "e2e/current-consumer-recovery-proof.mjs", + "D:/ProjectRecovery/NodeAgent current consumer 20260905/Locked Chat app", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05", + "--source-only" + ], + "exit": 1, + "seconds": 58.43394064903259 +} diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-05.stderr b/evidence/current-consumer-20260905/operator/d3-source-smoke-05.stderr new file mode 100644 index 0000000..41808a1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-05.stderr @@ -0,0 +1,5 @@ +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/react.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/index.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/NodeGraph.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/graph-model.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/session.js" points to missing source files diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-05.stdout b/evidence/current-consumer-20260905/operator/d3-source-smoke-05.stdout new file mode 100644 index 0000000..eb8929d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-05.stdout @@ -0,0 +1 @@ +{"output":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-05","passed":false,"checks":36,"captures":11,"error":"AssertionError [ERR_ASSERTION]: source doubled computed text reflows 390\n at check (file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:21:95)\n at file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/e2e/current-consumer-recovery-proof.mjs:114:71"} diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-06.command.json b/evidence/current-consumer-20260905/operator/d3-source-smoke-06.command.json new file mode 100644 index 0000000..eef07ab --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-06.command.json @@ -0,0 +1,11 @@ +{ + "command": [ + "node", + "e2e/current-consumer-recovery-proof.mjs", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked Chat app", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-06", + "--source-only" + ], + "exit": 0, + "seconds": 124.65809035301208 +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-06.stderr b/evidence/current-consumer-20260905/operator/d3-source-smoke-06.stderr new file mode 100644 index 0000000..41808a1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-06.stderr @@ -0,0 +1,5 @@ +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/react.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/index.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/NodeGraph.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/graph-model.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/session.js" points to missing source files diff --git a/evidence/current-consumer-20260905/operator/d3-source-smoke-06.stdout b/evidence/current-consumer-20260905/operator/d3-source-smoke-06.stdout new file mode 100644 index 0000000..95f03f0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-source-smoke-06.stdout @@ -0,0 +1 @@ +{"output":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-source-smoke-06","passed":true,"checks":136,"captures":38} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay.stderr b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay.stdout b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay.stdout new file mode 100644 index 0000000..a893ef9 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay.stdout @@ -0,0 +1 @@ +{"evidence":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\d3-unchanged-baseline-replay","passed":true,"checks":59,"captures":25} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.json new file mode 100644 index 0000000..294b4dc --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.png new file mode 100644 index 0000000..3ad4c4f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.json new file mode 100644 index 0000000..1c97223 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.png new file mode 100644 index 0000000..ec06403 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.json new file mode 100644 index 0000000..0a43873 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.png new file mode 100644 index 0000000..678f31a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.html new file mode 100644 index 0000000..a3dd3db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.json new file mode 100644 index 0000000..bba6a6b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.png new file mode 100644 index 0000000..5ec89ef Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.html new file mode 100644 index 0000000..b885889 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.json new file mode 100644 index 0000000..13529e6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.png new file mode 100644 index 0000000..3c0088c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.html new file mode 100644 index 0000000..6c93632 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.json new file mode 100644 index 0000000..dd37ae2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.png new file mode 100644 index 0000000..e3b655b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-empty-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.html new file mode 100644 index 0000000..29dd64c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.html @@ -0,0 +1,468 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.json new file mode 100644 index 0000000..4f67b71 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.png new file mode 100644 index 0000000..f75fd91 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.html new file mode 100644 index 0000000..a24c053 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.html @@ -0,0 +1,468 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.json new file mode 100644 index 0000000..ea3a513 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.png new file mode 100644 index 0000000..6219e2c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.html new file mode 100644 index 0000000..0b688d5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.html @@ -0,0 +1,468 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.json new file mode 100644 index 0000000..6d6207a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.png new file mode 100644 index 0000000..d6f66e0 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.html new file mode 100644 index 0000000..33553e9 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.html @@ -0,0 +1,468 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.json new file mode 100644 index 0000000..e566a45 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.png new file mode 100644 index 0000000..eea7c38 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.html new file mode 100644 index 0000000..95499ee --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.html @@ -0,0 +1,468 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.json new file mode 100644 index 0000000..fd13537 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.png new file mode 100644 index 0000000..39ec85a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.html new file mode 100644 index 0000000..73436a8 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.html @@ -0,0 +1,468 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.json new file mode 100644 index 0000000..06116e9 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.png new file mode 100644 index 0000000..f633fd3 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-populated-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.json new file mode 100644 index 0000000..294b4dc --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.png new file mode 100644 index 0000000..3ad4c4f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.json new file mode 100644 index 0000000..1c97223 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.png new file mode 100644 index 0000000..ec06403 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.html new file mode 100644 index 0000000..a1a62db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.json new file mode 100644 index 0000000..0a43873 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.png new file mode 100644 index 0000000..678f31a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.html new file mode 100644 index 0000000..a3dd3db --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.json new file mode 100644 index 0000000..bba6a6b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.png new file mode 100644 index 0000000..5ec89ef Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.html new file mode 100644 index 0000000..b885889 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.json new file mode 100644 index 0000000..13529e6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.png new file mode 100644 index 0000000..3c0088c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.html new file mode 100644 index 0000000..6c93632 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.json new file mode 100644 index 0000000..dd37ae2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.png new file mode 100644 index 0000000..e3b655b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-reloaded-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.html new file mode 100644 index 0000000..957f47b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.json new file mode 100644 index 0000000..e18904a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.png new file mode 100644 index 0000000..9145d69 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.html new file mode 100644 index 0000000..1454df4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.json new file mode 100644 index 0000000..802e433 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.png new file mode 100644 index 0000000..e304faa Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.html new file mode 100644 index 0000000..20d74f0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.json new file mode 100644 index 0000000..9002d85 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.png new file mode 100644 index 0000000..a741431 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.html new file mode 100644 index 0000000..e772499 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.json new file mode 100644 index 0000000..8bea86f --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.png new file mode 100644 index 0000000..6f87ee9 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-320.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.html new file mode 100644 index 0000000..13966f4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.json new file mode 100644 index 0000000..240fa46 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.png new file mode 100644 index 0000000..a505d84 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.html new file mode 100644 index 0000000..ad49318 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.json new file mode 100644 index 0000000..295a385 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.png new file mode 100644 index 0000000..aa54b4b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-running-768.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.html b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.html new file mode 100644 index 0000000..370a3ae --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.html @@ -0,0 +1,467 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.json new file mode 100644 index 0000000..d592c91 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": " API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 5: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 6: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 7: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 8: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.png b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.png new file mode 100644 index 0000000..582fc3e Binary files /dev/null and b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/generated-sustained-390.png differ diff --git a/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/report.json b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/report.json new file mode 100644 index 0000000..04607c1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-unchanged-baseline-replay/report.json @@ -0,0 +1,2501 @@ +{ + "namedProof": "NODEAGENT-CURRENT-CONSUMER-01", + "passed": true, + "startedAt": "2026-09-05T08:57:02.178Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "checks": [ + { + "name": "generated empty state 320", + "passed": true + }, + { + "name": "generated-empty-320 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-320 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 320", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 320", + "passed": true + }, + { + "name": "generated-populated-320 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 320", + "passed": true + }, + { + "name": "generated-reloaded-320 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 390", + "passed": true + }, + { + "name": "generated-empty-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 390", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 390", + "passed": true + }, + { + "name": "generated-populated-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 390", + "passed": true + }, + { + "name": "generated-reloaded-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 768", + "passed": true + }, + { + "name": "generated-empty-768 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-768 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 768", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 768", + "passed": true + }, + { + "name": "generated-populated-768 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 768", + "passed": true + }, + { + "name": "generated-reloaded-768 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 1024", + "passed": true + }, + { + "name": "generated-empty-1024 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-1024 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 1024", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 1024", + "passed": true + }, + { + "name": "generated-populated-1024 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 1024", + "passed": true + }, + { + "name": "generated-reloaded-1024 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 1440", + "passed": true + }, + { + "name": "generated-empty-1440 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-1440 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 1440", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 1440", + "passed": true + }, + { + "name": "generated-populated-1440 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 1440", + "passed": true + }, + { + "name": "generated-reloaded-1440 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 1920", + "passed": true + }, + { + "name": "generated-empty-1920 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-1920 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 1920", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 1920", + "passed": true + }, + { + "name": "generated-populated-1920 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 1920", + "passed": true + }, + { + "name": "generated-reloaded-1920 screenshot restores exact DOM", + "passed": true + }, + { + "name": "sustained accumulated four-card run 1", + "passed": true + }, + { + "name": "sustained accumulated four-card run 2", + "passed": true + }, + { + "name": "sustained accumulated four-card run 3", + "passed": true + }, + { + "name": "sustained accumulated four-card run 4", + "passed": true + }, + { + "name": "sustained accumulated four-card run 5", + "passed": true + }, + { + "name": "sustained accumulated four-card run 6", + "passed": true + }, + { + "name": "sustained accumulated four-card run 7", + "passed": true + }, + { + "name": "sustained accumulated four-card run 8", + "passed": true + }, + { + "name": "generated-sustained-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "browser made no writes or provider requests", + "passed": true + }, + { + "name": "source and installed generated input bytes unchanged", + "passed": true + } + ], + "captures": [ + { + "name": "generated-empty-320", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad" + }, + { + "name": "generated-running-320", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "2463b6b0dd814a68aa8a11add62698f312dc14965a58d3fd1e4cae25f0d95dce" + }, + { + "name": "generated-populated-320", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "62b1ec0fc69fb0c4b1c4caf0c3705c8d6f552402e50c611a8625aed21690b64c" + }, + { + "name": "generated-reloaded-320", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad" + }, + { + "name": "generated-empty-390", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734" + }, + { + "name": "generated-running-390", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "481085b6770cbd83d8ad02ff39cd2092363b987a419579ce37a6272b3c3828f9" + }, + { + "name": "generated-populated-390", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "382ec6f9a7846cc694a7ffb848dccb1ded561a8d64e2c2ff5c5e7834d499cc6f" + }, + { + "name": "generated-reloaded-390", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734" + }, + { + "name": "generated-empty-768", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445" + }, + { + "name": "generated-running-768", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "e8dae771111a83055368058a7fd6e1fca1e8b7fdddec46e31e98bdd9ac2278f8" + }, + { + "name": "generated-populated-768", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "8f39389bb97178ffa7148afde59ec70d87173744f8188295f37726a0250d7ee0" + }, + { + "name": "generated-reloaded-768", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445" + }, + { + "name": "generated-empty-1024", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9" + }, + { + "name": "generated-running-1024", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "9fc2d4e713fd9535791513e5091d0de8996203dc06e2b7fb09a1987088742f4d" + }, + { + "name": "generated-populated-1024", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "db5b14a2d4e77e3545d129ee6413f70874b349de7c7d67fe60ff75b23e824174" + }, + { + "name": "generated-reloaded-1024", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9" + }, + { + "name": "generated-empty-1440", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795" + }, + { + "name": "generated-running-1440", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "35af4cbe6bbec6c1162e77e788b645ed9f41d0d579e2f9a4e26cfaf1c113bdcf" + }, + { + "name": "generated-populated-1440", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "0bc2f3246755af576a03fd013a3f79acb377261ab1b0b7a2ae0be65d99110ffb" + }, + { + "name": "generated-reloaded-1440", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795" + }, + { + "name": "generated-empty-1920", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b" + }, + { + "name": "generated-running-1920", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Stop response", + "disabled": false + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nStop\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "8f132143a465e72aab76b3d538be286fd5086d5489eb4ec3cb86ed5caba9eabb" + }, + { + "name": "generated-populated-1920", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "f35bc072e2f56b00950ad4a12abd14df26e1562deb707c54e460123d022714bc" + }, + { + "name": "generated-reloaded-1920", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b" + }, + { + "name": "generated-sustained-390", + "state": { + "url": "http://127.0.0.1:54906/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": " API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 5: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 6: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 7: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 8: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "9edf791fc10d37996214708c197022e52134cae4af28e9b7b4d2d404946a763e" + } + ], + "observations": [ + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-320", + "hasStop": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-390", + "hasStop": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-768", + "hasStop": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-1024", + "hasStop": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-1440", + "hasStop": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-1920", + "hasStop": true + } + ], + "console": [], + "requests": [ + { + "origin": "http://127.0.0.1:54906", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-MAU4JPZO.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-HCWXQHWH.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:54906", + "path": "/node_modules/.vite/deps/chunk-XFECIUFB.js", + "method": "GET" + } + ], + "providerCalls": 0, + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "sustained": { + "turns": 8, + "toolCards": 32, + "elapsedMs": 13968 + }, + "sourceAfter": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "238f22bdf410dcbfdf8c183fc6f4fa437c476e0650ab5950e0e0ba79c2e829f8", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "2267eb5d12a3da35d036bdd0b9298e267c00dd980d97fc59266ebfefbd6b57a5", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24", + "examples/apps/chat-ui/template/src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "b18a51e811b6ac0a003f7bebf988c1077500b4183ae6c54db5e9878a0b28eca8", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "867c29ffa6efe1bce591a54ebdfe1a4721f88e82f53ead5f63e69ee1f19e2c42", + "src/features/node-agent/components/toolUIs.tsx": "f7de41d57e4b01946a36f79d4bc3040d07f8355a07107e9a9e5e580e9c31311e", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerAfter": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "217a84beff59430b4ef561c84ee2cf067e838c1e8ca91360fd007f36735f2096", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "83ac384c19eebdb1e49d8e0e3dc3af967a9f076193081efa45aa16a91036f5b1", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "99ddf781c65b86bc50d450efe03a8f0090ef82597a649a1303cd532eb95d1a24" + }, + "finishedAt": "2026-09-05T08:57:40.577Z" +} diff --git a/evidence/current-consumer-20260905/operator/d3-worker-visual-inspection.json b/evidence/current-consumer-20260905/operator/d3-worker-visual-inspection.json new file mode 100644 index 0000000..cb63f42 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/d3-worker-visual-inspection.json @@ -0,0 +1,135 @@ +{ + "worker": "preservation_worker", + "purpose": "Actual saved PNG review of changed Stop/error/Retry surfaces; not independent grading", + "images": [ + { + "path": "d3-final-browser-03/source-error-again-320.png", + "sha256": "1de10380e5438e19a7e0c6e19690cfdbb24cc1822a01dc28fd8dc411c937a2ca" + }, + { + "path": "d3-final-browser-03/source-error-again-390.png", + "sha256": "1d8241a055cfaeb73eb0a25a1cc110e4ac50c9409e58035754c1896fb8bd1e8e" + }, + { + "path": "d3-final-browser-03/source-error-again-768.png", + "sha256": "0e9234dad7bd90d049e43078933c4d4e9caf3196d44c94f89b7409be6c6e7cac" + }, + { + "path": "d3-final-browser-03/source-error-again-1024.png", + "sha256": "97835197502d12bd65dd9a1fe6e859da8892a2251871bf263c1daae2808b3033" + }, + { + "path": "d3-final-browser-03/source-error-again-1440.png", + "sha256": "2d93b1676903b446f2e89ef6d62d674198ad1b5daf033ab2c0398ea48c348537" + }, + { + "path": "d3-final-browser-03/source-error-again-1920.png", + "sha256": "fd6ec63d65548c8b6d3ca5558fe5f8758dc84134daa518e3aa7d31d74748f580" + }, + { + "path": "d3-final-browser-03/generated-error-again-320.png", + "sha256": "937c54b96421ca35ca308d9de0682e87350da227de26184abb7a3754220c5cd8" + }, + { + "path": "d3-final-browser-03/generated-error-again-390.png", + "sha256": "9b647459c84508775de0544c26432594dd88b5d16d930d0f3e38fab26720746c" + }, + { + "path": "d3-final-browser-03/generated-error-again-768.png", + "sha256": "b04709917a1a7c0571b29d18e84a1f98b2dbc9071ac2689281b8f7e2bde61968" + }, + { + "path": "d3-final-browser-03/generated-error-again-1024.png", + "sha256": "56f0f5a4352c57b7c56842dcd6da1f6c90d04dfb46cfae4995994a48995ec2e2" + }, + { + "path": "d3-final-browser-03/generated-error-again-1440.png", + "sha256": "07765375ec1a2f2786cd335ef09b11e6daf43b5625483e646f3c722a6f5b291b" + }, + { + "path": "d3-final-browser-03/generated-error-again-1920.png", + "sha256": "8af7493a48bb6c6c5c98e4bcc94edf71d35ffe14af6a3db4b696e2923f5f123b" + }, + { + "path": "d3-final-browser-03/source-stopped-320.png", + "sha256": "12ff4ab7c4bf5c9d15fa6cd71d5b5d43d2684f73b2ff6dc4d84e26ff711ea8a8" + }, + { + "path": "d3-final-browser-03/generated-stopped-320.png", + "sha256": "652934d39f0e3eb65357e59ab2312c57f16fe9c2c2c0e4791e407dc9303dc6ec" + }, + { + "path": "d3-final-browser-03/source-stopped-1440.png", + "sha256": "e370868af0ecaaca436356008fc24545265e37c63ecb2e8b9fdfdd99fd1a8212" + }, + { + "path": "d3-final-browser-03/source-error-text-200-390.png", + "sha256": "2d2c6213cf705762e21755eabebddcf2d20c07c01a2e505125107c95c0e77f4b" + }, + { + "path": "d3-final-browser-03/generated-error-text-200-390.png", + "sha256": "f1e2f8bc8999d5d87fe5473340d7ca7c65f7dfbb538a0054eabecbb2776a1f4b" + }, + { + "path": "d3-final-browser-03/source-recovered-390.png", + "sha256": "3be1d4d87ab86cd042f7a2e2409df9521bcd3d0185e5490a9bdebdfc2322c589" + }, + { + "path": "d3-final-browser-03/generated-recovered-390.png", + "sha256": "33ee4ebc7c01a3f826e4b66b873fa57610fce8cd9120df361172a40c3def033d" + }, + { + "path": "d3-source-matched-after/source-running-320.png", + "sha256": "c9f0a54175296caf8ec1dac28b7efdafc2a48ba7b834b8ac3e1c0c8cb8020df6" + }, + { + "path": "d3-source-matched-after/source-running-390.png", + "sha256": "02f3cdccee3dc97499d21ac9fabfc93c4720847dbc6651cad2080a6f5eb20400" + }, + { + "path": "d3-source-matched-after/source-running-768.png", + "sha256": "60b103f5712b7d02a41c96e65a727243a8306a755d5af9f75a03e41b94108aee" + }, + { + "path": "d3-source-matched-after/source-running-1024.png", + "sha256": "b09b2b01f37a29dde76805aead4a0a07ea614a976f121738826c8f6a7df1b791" + }, + { + "path": "d3-source-matched-after/source-running-1440.png", + "sha256": "3e75fbcf907d074f0a3487b34487f77eb976214f5b69a3c09cbb634f224288f1" + }, + { + "path": "d3-source-matched-after/source-running-1920.png", + "sha256": "009fdbd78f0e6af1c107ca20f7bdbedac63f4c4c69015ab4f826a9f002fd0251" + }, + { + "path": "d3-source-matched-after/source-error-390.png", + "sha256": "133256ed2c9bfbfc6f02ef0da27411bb7c1a17e10edf1f8c401c9a451b15c63a" + }, + { + "path": "d3-source-matched-after/source-error-1440.png", + "sha256": "dc646a03b5847107cabc0a8fbcc03df3860582d796ad05e246ea5e03afbb7f65" + }, + { + "path": "d3-generated-matched-after/generated-running-390.png", + "sha256": "c3c92b4a3907ad40dbc766b7d20ac8449228fcbeb6f47e1cacb1962b2330314e" + }, + { + "path": "d3-generated-matched-after/generated-error-390.png", + "sha256": "b36a7a967eef092af86ff1417cc142b8182bf05e335915027c18b31f530e95e2" + }, + { + "path": "d3-generated-matched-after/generated-running-1440.png", + "sha256": "4f9cb8fedbf3fb25f07292e9624c521a078c1cce713fe440b36d8479b8a409cc" + }, + { + "path": "d3-generated-matched-after/generated-error-1440.png", + "sha256": "5a572d368b6e666892fa186814393ec7db29a4801bf9a048fcb9a74b84391528" + } + ], + "observedLimits": [ + "Source header still overflows21px at390 with original computed text doubled.", + "Source graph labels remain crowded/clipped in several captured views; graph redesign and grading outside this slice." + ], + "grade": null +} \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/dependency-repair-freeze/HANDOFF.md.txt b/evidence/current-consumer-20260905/operator/dependency-repair-freeze/HANDOFF.md.txt new file mode 100644 index 0000000..c395bdb --- /dev/null +++ b/evidence/current-consumer-20260905/operator/dependency-repair-freeze/HANDOFF.md.txt @@ -0,0 +1,24 @@ +# NodeAgent developer handoff + +Read this file first, then [the runtime walkthrough](docs/START_HERE.md). This candidate starts from canonical `4e525fd0`; the separately preserved Pi draft is not integrated. + +A developer can run the repository's local scenario and generate a separate chat application without credentials. The generated chat is scripted, including its displayed confidence numbers. Its browser conversation resets on reload. The library's durable/SQLite demonstration is a separate integration and does not persist the browser chat. + +Use Node 22; this receipt used Node 22.22.2. From the repository run `npm ci`, `npm test` and `npm run build`. The current 41 tests and build pass. To generate a consumer, run `npm pack`, install that exact tarball in a new empty npm project, then use its installed CLI: + +```powershell +node node_modules/nodeagent/bin/nodeagent.mjs doctor +node node_modules/nodeagent/bin/nodeagent.mjs apps scaffold chat-ui --dir "../NodeAgent Chat" --auto +Set-Location "../NodeAgent Chat" +npm run dev +``` + +`--auto` performs normal install, demo, smoke and build. Keep the included template lock; use `npm ci` for repeatable reinstall. Reusing an existing target refuses before writing unless a developer explicitly selects the existing force option. This proof verified refusal and preservation without force. + +The original unlocked template resolved newer assistant-ui dependencies and failed its first real prompt despite smoke/build passing. A tested compatible template lock now preserves the canonical dependency cohort. The normally packed and installed locked consumer passed 59 browser checks, 25 captures at 320/390/768/1024/1440/1920, pointer/keyboard submission, duplicate Enter during a run, eight sequential turns/32 cards in 13.94 seconds and reload reset. This is bounded local interaction evidence, not production longevity or a complete visual grade. + +Separate offline frame/durable/SQLite runs completed. SQLite reopened the retained database and replayed the same frame with one journal entry; lease exclusion, expiry recovery and fencing passed. Run the existing `nodeagent:frame:smoke`, `nodeagent:durable:smoke` and `nodeagent:sqlite:smoke` commands for that library integration. Their fixture-derived confidence is not an external provider measurement. + +Open limits: both source and generated chat lack designed Stop/error/retry controls at this checkpoint; a separately reviewed D3 slice is pending. Full UI/accessibility/performance grades remain null. No provider, Convex, login, external-host hook, deployment or Pi capability was activated by this proof. Source full audit reports nine development advisories; the generated locked app reports four development advisories (three high, one low). Both production-only audits report zero. Those full-audit findings remain open. + +Dependency proof and the D3 before state are retained in the operator portfolio packet under `E6e-nodeagent-current-consumer`; portable evidence will accompany the final reviewed slice. The dependency receipt stays historical and separate if response recovery changes the UI next. diff --git a/evidence/current-consumer-20260905/operator/dependency-repair-freeze/e2e/current-consumer-proof.mjs.txt b/evidence/current-consumer-20260905/operator/dependency-repair-freeze/e2e/current-consumer-proof.mjs.txt new file mode 100644 index 0000000..684a931 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/dependency-repair-freeze/e2e/current-consumer-proof.mjs.txt @@ -0,0 +1,60 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import { createServer as createPortProbe } from 'node:net'; +import { chromium } from 'playwright'; +import { createServer } from 'vite'; + +// The supplied app must be the retained output of the installed package CLI. +// The actual adapter iterator is held in browser memory only to settle running-frame captures. +const source = path.resolve(import.meta.dirname, '..'); +const consumer = path.resolve(process.argv[2] ?? ''); +const evidence = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide generated consumer path and NEW evidence directory'); +await mkdir(evidence, { recursive:false }); +const sha = value => createHash('sha256').update(value).digest('hex'); +const tracked = execFileSync('git',['ls-files','-z'],{cwd:source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(Boolean).filter(file=>!path.basename(file).startsWith('.env')); +tracked.push('e2e/current-consumer-proof.mjs','examples/apps/chat-ui/template/package-lock.json'); +const sourceHashes = async () => Object.fromEntries(await Promise.all(tracked.map(async file=>[file,sha(await readFile(path.join(source,file)))]))); +const consumerFiles=['package.json','package-lock.json','index.html','vite.config.mjs','src/main.jsx','src/styles.css','src/nodeagent-chat/NodeAgentChatApp.jsx','src/nodeagent-chat/nodeAgentLocalAdapter.js','src/nodeagent-chat/toolUIs.jsx']; +const consumerHashes = async () => Object.fromEntries(await Promise.all(consumerFiles.map(async file=>[file,sha(await readFile(path.join(consumer,file)))]))); +const report={namedProof:'NODEAGENT-CURRENT-CONSUMER-01',passed:false,startedAt:new Date().toISOString(),sourceBefore:await sourceHashes(),consumerBefore:await consumerHashes(),checks:[],captures:[],observations:[],console:[],requests:[],providerCalls:0,grade:null}; +const check=(value,name)=>{report.checks.push({name,passed:Boolean(value)});assert.ok(value,name);}; +let browser,page;const servers=[]; +async function server(root){ + const probe=createPortProbe(); await new Promise(resolve=>probe.listen(0,'127.0.0.1',resolve)); const port=probe.address().port; await new Promise(resolve=>probe.close(resolve)); + const app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}}); await app.listen(); servers.push(app); + return 'http://127.0.0.1:'+port; +} +async function context(base,width){ + const ctx=await browser.newContext({viewport:{width,height:width<=390?844:960},colorScheme:'light'}); + await ctx.route('**/*',route=>{const request=route.request(),url=new URL(request.url());if(report.requests.length<500)report.requests.push({origin:url.origin,path:url.pathname,method:request.method()});if(url.origin!==base&&!['fonts.googleapis.com','fonts.gstatic.com'].includes(url.hostname))return route.abort();return route.continue();}); + page=await ctx.newPage();page.setDefaultTimeout(12000);page.on('pageerror',error=>report.console.push({type:'pageerror',message:error.message}));page.on('console',message=>{if(message.type()==='error'&&report.console.length<100)report.console.push({type:'console',message:message.text()});});await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor();await page.evaluate(()=>Promise.race([document.fonts.ready,new Promise(resolve=>setTimeout(resolve,3000))]));return ctx; +} +async function capture(name){ + await page.evaluate(()=>new Promise(resolve=>requestAnimationFrame(()=>requestAnimationFrame(resolve)))); + let prior=await page.content();for(let i=0;i<8;i++){await page.waitForTimeout(250);const now=await page.content();if(now===prior)break;prior=now;}const html=await page.content();const state=await page.evaluate(()=>({url:location.href,viewport:{width:innerWidth,height:innerHeight},focused:document.activeElement?.tagName,overflow:document.documentElement.scrollWidth-innerWidth,buttons:[...document.querySelectorAll('button')].map(e=>({label:e.getAttribute('aria-label')??e.textContent,disabled:e.disabled})),bodyText:document.body.innerText.slice(-6000)})); + await page.screenshot({path:path.join(evidence,name+'.png'),caret:'initial'});check(await page.content()===html,name+' screenshot restores exact DOM');await writeFile(path.join(evidence,name+'.html'),html);await writeFile(path.join(evidence,name+'.json'),JSON.stringify(state,null,2)+'\n');report.captures.push({name,state,pngSha256:sha(await readFile(path.join(evidence,name+'.png')))});return state; +} +async function holdActualRunningFrame(base){ + await page.evaluate(async()=>{const module=await import('/src/nodeagent-chat/nodeAgentLocalAdapter.js'),original=module.nodeAgentLocalAdapter.run;module.nodeAgentLocalAdapter.run=async function*(args){module.nodeAgentLocalAdapter.run=original;window.proofRunCompleted=false;let held=false;for await(const frame of original(args)){yield frame;if(!held&&frame.content.some(p=>p.type==='tool-call'&&!p.result)){held=true;window.proofHeldText=frame.content.find(p=>p.type==='text').text;await new Promise(resolve=>window.proofRelease=resolve);}}window.proofRunCompleted=true;};}); + report.observations.push({name:'actual-running-frame-hold',purpose:'The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution.'}); +} +async function send(text){await page.locator('textarea[name="input"]').fill(text);await page.waitForFunction(()=>document.querySelector('button[aria-label="Send"]')?.disabled===false);await page.locator('textarea[name="input"]').press('Enter');} +async function complete(generated,count=1){await page.waitForFunction(({generated,count})=>{const cards=document.querySelectorAll(generated?'.naTool':'.na-tool');return cards.length===4*count&&[...cards].every(e=>e.getAttribute('data-running')!=='true')&&document.body.innerText.includes('Done.');},{generated,count});} +try { + const generatedBase=await server(consumer);browser=await chromium.launch({headless:true});report.browser=browser.version();report.node=process.version; + for(const width of [320,390,768,1024,1440,1920]){ + const ctx=await context(generatedBase,width);check(await page.locator('[data-nodeagent-chat="empty"]').isVisible(),'generated empty state '+width);await capture('generated-empty-'+width); + await holdActualRunningFrame(generatedBase);await page.locator('textarea[name="input"]').fill('PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.');if([320,768,1440].includes(width))await page.getByRole('button',{name:'Send',exact:true}).click();else await page.locator('textarea[name="input"]').press('Enter');await page.locator('.naTool[data-running="true"]').first().waitFor(); + await page.waitForFunction(()=>typeof window.proofRelease==='function'&&document.body.innerText.includes(window.proofHeldText));const running=await capture('generated-running-'+width);check(running.overflow<=1,'generated running reflows '+width);report.observations.push({name:'generated-D3-'+width,hasStop:running.buttons.some(b=>/stop|cancel/i.test(b.label??'')),sendDisabled:running.buttons.find(b=>b.label==='Send')?.disabled}); + // A second immediate Enter cannot add a concurrent model/fixture run. + await page.locator('textarea[name="input"]').press('Enter');await page.evaluate(()=>window.proofRelease());await complete(true);await page.waitForFunction(()=>window.proofRunCompleted===true);check(await page.locator('.naTool').count()===4,'burst Enter retains one four-card run '+width);await capture('generated-populated-'+width); + await page.reload({waitUntil:'domcontentloaded'});await page.locator('textarea[name="input"]').waitFor();check(await page.locator('.naTool').count()===0&&await page.locator('[data-nodeagent-chat="empty"]').isVisible(),'reload resets only browser session '+width);await capture('generated-reloaded-'+width);await ctx.close(); + } + const sustained=await context(generatedBase,390),began=Date.now();for(let i=0;i<8;i++){await send('PROOF FIXTURE repeat '+(i+1)+': inspect the same local adoption evidence.');await complete(true,i+1);check(await page.locator('.naTool').count()===4*(i+1),'sustained accumulated four-card run '+(i+1));}report.sustained={turns:8,toolCards:32,elapsedMs:Date.now()-began};await capture('generated-sustained-390');await sustained.close(); + check(report.requests.every(r=>r.method==='GET'),'browser made no writes or provider requests');report.sourceAfter=await sourceHashes();report.consumerAfter=await consumerHashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);assert.deepEqual(report.consumerAfter,report.consumerBefore);check(true,'source and installed generated input bytes unchanged');report.passed=true; +}catch(error){report.error=String(error.stack??error);process.exitCode=1;if(page&&!page.isClosed()){await writeFile(path.join(evidence,'failure.html'),await page.content());await page.screenshot({path:path.join(evidence,'failure.png'),caret:'initial'}).catch(()=>{});} +}finally{await browser?.close();for(const app of servers)await app.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(evidence,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({evidence,passed:report.passed,checks:report.checks.length,captures:report.captures.length,error:report.error}));} diff --git a/evidence/current-consumer-20260905/operator/dependency-repair-freeze/examples/apps/chat-ui/template/package-lock.json b/evidence/current-consumer-20260905/operator/dependency-repair-freeze/examples/apps/chat-ui/template/package-lock.json new file mode 100644 index 0000000..6159d99 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/dependency-repair-freeze/examples/apps/chat-ui/template/package-lock.json @@ -0,0 +1,6598 @@ +{ + "name": "nodeagent-chat-ui", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "nodeagent-chat-ui", + "version": "0.1.0", + "dependencies": { + "@assistant-ui/react": "^0.14.14", + "lucide-react": "^0.468.0", + "react": "^19.0.0", + "react-dom": "^19.0.0" + }, + "devDependencies": { + "@vitejs/plugin-react": "^4.3.4", + "vite": "^6.0.7" + } + }, + "node_modules/@assistant-ui/core": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/@assistant-ui/core/-/core-0.2.10.tgz", + "integrity": "sha512-0YyqlpZgg1Hoaq2X4jHAaMKXg+lGniLygNt1KrGFTPgbxeo8ZStRjWyyG2xIl+zlFKHiKCGHzflUHvlJi4IurA==", + "license": "MIT", + "dependencies": { + "assistant-stream": "^0.3.20", + "nanoid": "^5.1.11" + }, + "peerDependencies": { + "@assistant-ui/store": "^0.2.13", + "@assistant-ui/tap": "^0.5.14", + "@types/react": "*", + "assistant-cloud": "^0.1.31", + "react": "^18 || ^19", + "zustand": "^5.0.11" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "assistant-cloud": { + "optional": true + }, + "react": { + "optional": true + }, + "zustand": { + "optional": true + } + } + }, + "node_modules/@assistant-ui/core/node_modules/nanoid": { + "version": "5.1.16", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.16.tgz", + "integrity": "sha512-kVrnsrJqMR8+oLJnGEmSWw9BivK5mt7H3FZatVRjrc5wGqFYuBxX1yG7+A7Gi5AefkX6t/oCkizcQgpu0cY1dQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, + "node_modules/@assistant-ui/react": { + "version": "0.14.14", + "resolved": "https://registry.npmjs.org/@assistant-ui/react/-/react-0.14.14.tgz", + "integrity": "sha512-qS7YJewwFbmhs+yte56ZnO9jIOK+8hKo7mOK3cKDcCndn+jGSWTJmoNVIYQgMpB2JYIJ/SKZD+LeWSR6K3LL5g==", + "license": "MIT", + "dependencies": { + "@assistant-ui/core": "^0.2.10", + "@assistant-ui/store": "^0.2.13", + "@assistant-ui/tap": "^0.5.14", + "@radix-ui/primitive": "^1.1.3", + "@radix-ui/react-compose-refs": "^1.1.2", + "@radix-ui/react-context": "^1.1.3", + "@radix-ui/react-primitive": "^2.1.4", + "@radix-ui/react-use-callback-ref": "^1.1.1", + "@radix-ui/react-use-escape-keydown": "^1.1.1", + "assistant-cloud": "^0.1.31", + "assistant-stream": "^0.3.20", + "nanoid": "^5.1.11", + "radix-ui": "^1.4.3", + "react-textarea-autosize": "^8.5.9", + "safe-content-frame": "^0.0.20", + "zod": "^4.4.3", + "zustand": "^5.0.14" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@assistant-ui/react/node_modules/nanoid": { + "version": "5.1.16", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.16.tgz", + "integrity": "sha512-kVrnsrJqMR8+oLJnGEmSWw9BivK5mt7H3FZatVRjrc5wGqFYuBxX1yG7+A7Gi5AefkX6t/oCkizcQgpu0cY1dQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, + "node_modules/@assistant-ui/store": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/@assistant-ui/store/-/store-0.2.13.tgz", + "integrity": "sha512-7NL6HWMBxe1ndLWO4kHkjQ0Syyc0D/Aj+zxdpcy4yrplG71X04CzFimMBBSQAk+AnGBf+d96D7cuUZdjHkTavg==", + "license": "MIT", + "dependencies": { + "use-effect-event": "^2.0.3" + }, + "peerDependencies": { + "@assistant-ui/tap": "^0.5.14", + "@types/react": "*", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@assistant-ui/tap": { + "version": "0.5.14", + "resolved": "https://registry.npmjs.org/@assistant-ui/tap/-/tap-0.5.14.tgz", + "integrity": "sha512-SAy0ip8nKo72U8K9MuU7gYUR4tzoIi6k+HAQgev3zA/sWN7hr/QDDUTblrn5QB9Y/yycRiq8s98WD1vnDy8WMQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "react": { + "optional": true + } + } + }, + "node_modules/@babel/code-frame": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.7.tgz", + "integrity": "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.29.7", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.7.tgz", + "integrity": "sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.7.tgz", + "integrity": "sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helpers": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.29.7.tgz", + "integrity": "sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.29.7", + "@babel/helper-validator-option": "^7.29.7", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz", + "integrity": "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz", + "integrity": "sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.29.7.tgz", + "integrity": "sha512-G7sHYigPY17oO5SYWnfD/0MTBwVR781S/JI643e/JhUYgVgWE/61SoW3NH9KWUKyKq5LVh3npif99Wkt6j86Jw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz", + "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz", + "integrity": "sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.7.tgz", + "integrity": "sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.7.tgz", + "integrity": "sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.7" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.29.7.tgz", + "integrity": "sha512-TL0hMc9xzy86VD31nUiwzd5otRAcyEPcsegCxolO0PvcXuH1v0kECe/UIznYFihpkvU5wg/jk4v0TTEFfm53fw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.29.7.tgz", + "integrity": "sha512-06IyK09H3wi4cGbhDBwp5gUGo0IKtnYa8tyTiephirPCK6fbobVGiXMMI5zLQ4aKEYP3wZ3ArU44o+8KMrSG/Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.7.tgz", + "integrity": "sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.7.5.tgz", + "integrity": "sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ==", + "license": "MIT", + "dependencies": { + "@floating-ui/utils": "^0.2.11" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.6.tgz", + "integrity": "sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.7.5", + "@floating-ui/utils": "^0.2.11" + } + }, + "node_modules/@floating-ui/react-dom": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.8.tgz", + "integrity": "sha512-cC52bHwM/n/CxS87FH0yWdngEZrjdtLW/qVruo68qg+prK7ZQ4YGdut2GyDVpoGeAYe/h899rVeOVm6Oi40k2A==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "^1.7.6" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.11", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.11.tgz", + "integrity": "sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==", + "license": "MIT" + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@radix-ui/number": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.1.tgz", + "integrity": "sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==", + "license": "MIT" + }, + "node_modules/@radix-ui/primitive": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.3.tgz", + "integrity": "sha512-JTF99U/6XIjCBo0wqkU5sK10glYe27MRRsfwoiq5zzOEZLHU3A3KCMa5X/azekYRCJ0HlwI0crAXS/5dEHTzDg==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-accessible-icon": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-accessible-icon/-/react-accessible-icon-1.1.7.tgz", + "integrity": "sha512-XM+E4WXl0OqUJFovy6GjmxxFyx9opfCAIUku4dlKRd5YEPqt4kALOkQOp0Of6reHuUkJuiPBEc5k0o4z4lTC8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-accordion": { + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@radix-ui/react-accordion/-/react-accordion-1.2.12.tgz", + "integrity": "sha512-T4nygeh9YE9dLRPhAHSeOZi7HBXo+0kYIPJXayZfvWOWA0+n3dESrZbjfDPUABkUNym6Hd+f2IR113To8D2GPA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collapsible": "1.1.12", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-accordion/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-accordion/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-accordion/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-alert-dialog/-/react-alert-dialog-1.1.15.tgz", + "integrity": "sha512-oTVLkEw5GpdRe29BqJ0LSDFWI3qu0vR1M0mUkOQWDIUnY/QIkLpgDMWuKxP94c2NAC2LGcgVhG1ImF3jkZ5wXw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dialog": "1.1.15", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-arrow": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.7.tgz", + "integrity": "sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-arrow/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-arrow/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-aspect-ratio": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-aspect-ratio/-/react-aspect-ratio-1.1.7.tgz", + "integrity": "sha512-Yq6lvO9HQyPwev1onK1daHCHqXVLzPhSVjmsNjCa2Zcxy2f7uJD2itDtxknv6FzAKCwD1qQkeVDmX/cev13n/g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-aspect-ratio/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-aspect-ratio/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-avatar/-/react-avatar-1.1.10.tgz", + "integrity": "sha512-V8piFfWapM5OmNCXTzVQY+E1rDa53zY+MQ4Y7356v4fFz6vqCyUtIz2rUD44ZEdwg78/jKmMJHj07+C/Z/rcog==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-is-hydrated": "0.1.0", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-checkbox/-/react-checkbox-1.3.3.tgz", + "integrity": "sha512-wBbpv+NQftHDdG86Qc0pIyXk5IR3tM8Vd0nWLKDcX8nNn4nXFOFwsKuqw2okA/1D/mpaAkmuyndrPJTYDNZtFw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collapsible/-/react-collapsible-1.1.12.tgz", + "integrity": "sha512-Uu+mSh4agx2ib1uIGPP4/CKNULyajb3p92LsVXmH2EHVMTfZWpll88XJ0j4W0z3f8NK1eYl1+Mf/szHPmcHzyA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.7.tgz", + "integrity": "sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.2.tgz", + "integrity": "sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.3.tgz", + "integrity": "sha512-ieIFACdMpYfMEjF0rEf5KLvfVyIkOz6PDGyNnP+u+4xQ6jny3VCgA4OgXOwNx2aUkxn8zx9fiVcM8CfFYv9Lxw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu": { + "version": "2.2.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context-menu/-/react-context-menu-2.2.16.tgz", + "integrity": "sha512-O8morBEW+HsVG28gYDZPTrT9UUovQUlJue5YO836tiTJhuIWBm/zQHc7j388sHWtdH/xUZurK9olD2+pcqx5ww==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.15.tgz", + "integrity": "sha512-TCglVRtzlffRNxRMEyR36DGBLJpeusFcgMVD9PZEzAKnUs1lKCgX5u9BmC2Yg+LL9MgZDugFFs1Vl+Jp4t/PGw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-direction": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.1.tgz", + "integrity": "sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.11.tgz", + "integrity": "sha512-Nqcp+t5cTB8BinFkZgXiMJniQH0PsUt2k51FUhbdfeKvc4ACcG2uQniY/8+h1Yv6Kza4Q7lD7PQV0z0oicE0Mg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-escape-keydown": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu": { + "version": "2.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dropdown-menu/-/react-dropdown-menu-2.1.16.tgz", + "integrity": "sha512-1PLGQEynI/3OX/ftV54COn+3Sud/Mn8vALg2rWnBLnRaGtJDduNW/22XjlGgPdpcIbiQxjKtb7BkcjP00nqfJw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-guards": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.3.tgz", + "integrity": "sha512-0rFg/Rj2Q62NCm62jZw0QX7a3sz6QCQU0LpZdNrJX8byRGaGVTqbrW9jAoIAHyMQqsNpeZ81YgSizOt5WXq0Pw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.7.tgz", + "integrity": "sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-form": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-form/-/react-form-0.1.8.tgz", + "integrity": "sha512-QM70k4Zwjttifr5a4sZFts9fn8FzHYvQ5PiB19O2HsYibaHSVt9fH9rzB0XZo/YcM+b7t/p7lYCT/F5eOeF5yQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-label": "2.1.7", + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-form/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-form/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-form/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-hover-card/-/react-hover-card-1.1.15.tgz", + "integrity": "sha512-qgTkjNT1CfKMoP0rcasmlH2r1DAiYicWsDsufxl940sT2wHNEWWv6FMWIQXWhVdmC1d/HYfbhQx60KYyAtKxjg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-id": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.1.tgz", + "integrity": "sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-label": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-label/-/react-label-2.1.7.tgz", + "integrity": "sha512-YT1GqPSL8kJn20djelMX7/cTRp/Y9w5IZHvfxQTVHrOqa2yMl7i/UfMqKRU5V7mEyKTrUVgJXhNQPVCG8PBLoQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-label/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-label/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu": { + "version": "2.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-2.1.16.tgz", + "integrity": "sha512-72F2T+PLlphrqLcAotYPp0uJMr5SjP5SL01wfEspJbru5Zs5vQaSHb4VB3ZMJPimgHHCHG7gMOeOB9H3Hdmtxg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar": { + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-menubar/-/react-menubar-1.1.16.tgz", + "integrity": "sha512-EB1FktTz5xRRi2Er974AUQZWg2yVBb1yjip38/lgwtCVRd3a+maUoGHN/xs9Yv8SY8QwbSEb+YrxGadVWbEutA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu": { + "version": "1.2.14", + "resolved": "https://registry.npmjs.org/@radix-ui/react-navigation-menu/-/react-navigation-menu-1.2.14.tgz", + "integrity": "sha512-YB9mTFQvCOAQMHU+C/jVl96WmuWeltyUEpRJJky51huhds5W2FQr1J8D/16sQlf0ozxkPK8uF3niQMdUwZPv5w==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-one-time-password-field": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-one-time-password-field/-/react-one-time-password-field-0.1.8.tgz", + "integrity": "sha512-ycS4rbwURavDPVjCb5iS3aG4lURFDILi6sKI/WITUMZ13gMmn/xGjpLoqBAalhJaDk8I3UbCM5GzKHrnzwHbvg==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-is-hydrated": "0.1.0", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-one-time-password-field/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-one-time-password-field/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-one-time-password-field/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-password-toggle-field": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-password-toggle-field/-/react-password-toggle-field-0.1.3.tgz", + "integrity": "sha512-/UuCrDBWravcaMix4TdT+qlNdVwOM1Nck9kWx/vafXsdfj1ChfhOdfi3cy9SGBpWgTXwYCuboT/oYpJy3clqfw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-is-hydrated": "0.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-password-toggle-field/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-password-toggle-field/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-password-toggle-field/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.15.tgz", + "integrity": "sha512-kr0X2+6Yy/vJzLYJUPCZEc8SfQcf+1COFoAqauJm74umQhta9M7lNJHP7QQS3vkvcGLQUbWpMzwrXYwrYztHKA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.8.tgz", + "integrity": "sha512-0NJQ4LFFUuWkE7Oxf0htBKS6zLkkjBH+hM1uk7Ng705ReR8m/uelduy1DBo0PyBXPKVnBA6YBlU94MBGXrSBCw==", + "license": "MIT", + "dependencies": { + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-rect": "1.1.1", + "@radix-ui/react-use-size": "1.1.1", + "@radix-ui/rect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.9.tgz", + "integrity": "sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-presence": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.5.tgz", + "integrity": "sha512-/jfEwNDdQVBCNvjkGit4h6pMOzq8bHkopq458dPt2lMjx+eBQUohZNG9A7DtO/O5ukSbxuaNGXMjHicgwy6rQQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-primitive": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz", + "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-progress/-/react-progress-1.1.7.tgz", + "integrity": "sha512-vPdg/tF6YC/ynuBIJlk1mm7Le0VgW6ub6J2UWnTQ7/D23KXcPI1qy+0vBkgKgd38RCMJavBXpB83HPNFMTb0Fg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-radio-group/-/react-radio-group-1.3.8.tgz", + "integrity": "sha512-VBKYIYImA5zsxACdisNQ3BjCBfmbGH3kQlnFVqlWU4tXwjy7cGX8ta80BcrO+WJXIn5iBylEH3K6ZTlee//lgQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.11.tgz", + "integrity": "sha512-7A6S9jSgm/S+7MdtNDSb+IU859vQqJ/QAtcYQcfFC6W8RS4IxIZDldLR0xqCFZ6DCyrQLjLPsxtTNch5jVA4lA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-scroll-area/-/react-scroll-area-1.2.10.tgz", + "integrity": "sha512-tAXIa1g3sM5CGpVT0uIbUx/U3Gs5N8T52IICuCtObaos1S8fzsrPXG5WObkQN3S6NVl6wKgPhAIiBGbWnvc97A==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-select/-/react-select-2.2.6.tgz", + "integrity": "sha512-I30RydO+bnn2PQztvo25tswPH+wFBjehVGtmagkU78yMdwTwVf12wnAOF+AeP8S2N8xD+5UPbGhkUfPyvT+mwQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-separator": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-separator/-/react-separator-1.1.7.tgz", + "integrity": "sha512-0HEb8R9E8A+jZjvmFCy/J4xhbXy3TV+9XSnGJ3KvTtjlIUy/YQ/p6UYZvi7YbeoeXdyU9+Y3scizK6hkY37baA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-separator/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-separator/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slider/-/react-slider-1.3.6.tgz", + "integrity": "sha512-JPYb1GuM1bxfjMRlNLE+BcmBC8onfCi60Blk7OBqi2MLTFdS+8401U4uFjnwkOr49BLmXxLC6JHkvAsx5OJvHw==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slot": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.4.tgz", + "integrity": "sha512-Jl+bCv8HxKnlTLVrcDE8zTMJ09R9/ukw4qBs/oZClOfoQk/cOTbDn+NceXfV7j09YPVQUryJPHurafcSg6EVKA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-switch/-/react-switch-1.2.6.tgz", + "integrity": "sha512-bByzr1+ep1zk4VubeEVViV592vu2lHE2BZY5OnzehZqOOgogN80+mNtCqPkhn2gklJqOpxWgPoYTSnhBCqpOXQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tabs/-/react-tabs-1.1.13.tgz", + "integrity": "sha512-7xdcatg7/U+7+Udyoj2zodtI9H/IIopqo+YOIcZOq1nJwXWBZ9p8xiu5llXlekDbZkca79a/fozEYQXIA4sW6A==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toast": { + "version": "1.2.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toast/-/react-toast-1.2.15.tgz", + "integrity": "sha512-3OSz3TacUWy4WtOXV38DggwxoqJK4+eDkNMl5Z/MJZaoUPaP4/9lf81xXMe1I2ReTAptverZUpbPY4wWwWyL5g==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle/-/react-toggle-1.1.10.tgz", + "integrity": "sha512-lS1odchhFTeZv3xwHH31YPObmJn8gOg7Lq12inrr0+BH/l3Tsq32VfjqH1oh80ARM3mlkfMic15n0kg4sD1poQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle-group/-/react-toggle-group-1.1.11.tgz", + "integrity": "sha512-5umnS0T8JQzQT6HbPyO7Hh9dgd82NmS36DQr+X/YJ9ctFNCiiQd6IJAYYZ33LUwm8M+taCz5t2ui29fHZc4Y6Q==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-toggle": "1.1.10", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toolbar/-/react-toolbar-1.1.11.tgz", + "integrity": "sha512-4ol06/1bLoFu1nwUqzdD4Y5RZ9oDdKeiHIsntug54Hcr1pgaHiPqHFEaXI1IFP/EsOfROQZ8Mig9VTIRza6Tjg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-separator": "1.1.7", + "@radix-ui/react-toggle-group": "1.1.11" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tooltip/-/react-tooltip-1.2.8.tgz", + "integrity": "sha512-tY7sVt1yL9ozIxvmbtN5qtmH2krXcBCfjEiCgKGLqunJHvgvZG2Pcl2oQ3kbcZARb1BGEHdkLzcYGO8ynVlieg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.1.tgz", + "integrity": "sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.2.2.tgz", + "integrity": "sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-effect-event": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-effect-event/-/react-use-effect-event-0.0.2.tgz", + "integrity": "sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-escape-keydown": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.1.tgz", + "integrity": "sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-is-hydrated": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-is-hydrated/-/react-use-is-hydrated-0.1.0.tgz", + "integrity": "sha512-U+UORVEq+cTnRIaostJv9AGdV3G6Y+zbVd+12e18jQ5A3c0xL03IhnHuiU4UV69wolOQp5GfR58NW/EgdQhwOA==", + "license": "MIT", + "dependencies": { + "use-sync-external-store": "^1.5.0" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.1.tgz", + "integrity": "sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-previous": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-1.1.1.tgz", + "integrity": "sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-rect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.1.tgz", + "integrity": "sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==", + "license": "MIT", + "dependencies": { + "@radix-ui/rect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-size": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.1.tgz", + "integrity": "sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.2.3.tgz", + "integrity": "sha512-pzJq12tEaaIhqjbzpCuv/OypJY/BPavOofm+dbab+MHLajy277+1lLm6JFcGgF5eskJ6mquGirhXY2GD/8u8Ug==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/rect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.1.tgz", + "integrity": "sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==", + "license": "MIT" + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.27.tgz", + "integrity": "sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.61.1.tgz", + "integrity": "sha512-JnBB8MdXj45cajvTuO5FmPlvFVJRQgvrz1uSEl3NwqFnReAPGwb8EanbGi4z2nRaqLzjJSv5/JmycoTKlRZxHA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.61.1.tgz", + "integrity": "sha512-Jx2g7iSjw4AOT0HDPHM9RV3GNjRXwybWtSFZiZAYUTjUwjVrYIwq3kBf+LnhqJlzXFAqTAh2F7IGI+O568exPw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.61.1.tgz", + "integrity": "sha512-0F1L/Z3Eqv8mT2n3dCpeO8GcTvHvVqkP5/t6DMsn0KzhYVcg+s7Ncl5DS8qjKYEeio6Az0Gt6nyBORay5qIlCA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.61.1.tgz", + "integrity": "sha512-qLttcH871ujY4YcVfUSShhOw+CsoTatYz8gRbHO7Bb92QH059/P0y5do1KMs41fY0BpD2x4AJH/gID0zFiqVKQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.61.1.tgz", + "integrity": "sha512-fUI4RapGE0Oh3mb8mgfvC1O2nU1RpDZUKnDQm3xB1Ipg7C2wTs5Kstz7G2uWK99a8S2yTMq8/P4uycwNa0nJyw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.61.1.tgz", + "integrity": "sha512-H5YrdvJaDtI/U9/emrD4b++xkvp3y/JvOe4rizHbxvkyMfRS/CiRYdji+Pl8D0brEaNFWUh1drQxgAGIl6Xudw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.61.1.tgz", + "integrity": "sha512-Q8CBCCQtDFrYtXoeUXSrnFXKOnyUhx6bz+SkL6A0E7V8kAiCJ5pamq1WtbfpVGhR5TSpXY6ak3avmDc5fHTyJA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.61.1.tgz", + "integrity": "sha512-nwnhk1581l0FBVellGcVCAT0Oi06onEA3WB53sf01VO3I0UPBkMH9sXONYME2K0ovXcNayJfNtHfm6mpJElatQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.61.1.tgz", + "integrity": "sha512-x5Xr49hwt3hdW75UOZm3395YwwzPyauktslv29KpWL/T+vVAzoT3azLcTWv0eMciBNrx+DYjH4paehHoLpPvpg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.61.1.tgz", + "integrity": "sha512-unMS3H73DpaoPyyEVPjGKleM/s0mkmsauTENpw4INQY8y4+IuLNjkueQ5QCtC0D3N38Y38yhAU8OoZ20S2Tm6w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.61.1.tgz", + "integrity": "sha512-zNZzGRnAhwjFEYmvphJRV5XaQGjs62cCmeYYHUT//NbvEnHauw+I85nGG+SiVg5ld4GX8D1IbKIX+ozITQnhMQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.61.1.tgz", + "integrity": "sha512-LdpWGL8X209B2SIvWjqlc8VZgM6PKfontSerGepuldQmHYrAOtnMCXeJkxXGbC+PPZVOuu5czJo7fNV6aeW8rQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.61.1.tgz", + "integrity": "sha512-EC5kTtNaNGOmbMGqar8dvJy6y/hg99GAwjfBz++pxZhQATXGcRjd6c5en5wcbru0vkRmiMGsQKdMJOOf6sza4g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.61.1.tgz", + "integrity": "sha512-8hiwp6D4acEcNK78I4rP0/XtS1sknWIAMJBPdR4l6zUtyTm5KiTDr5bXmWt4foY7nAN7AThDHgkLIEZOWKbzWw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.61.1.tgz", + "integrity": "sha512-10dh/h/BqA7DuMPWSxkR8uks18FRwnwOEqr5zOTEl+NOwP/OMzKX8OFR/Of9xxDA7D5qef1Nzar5WDD2kCCr1g==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.61.1.tgz", + "integrity": "sha512-YKJ5lg35DP17gcAOggnihe+APw9HLyj1Xn7gsmGumBJAUDa6NGXNixJzmkWLhcK9TOuuyQjdamzvJefkO7qHZQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.61.1.tgz", + "integrity": "sha512-Mlil5G2Jj6a7B3LWGctg+XPL9vdXYuzCtNXfxOQ0nPjc2m6ueUktocPGH9bnAM0bNRKb/bAWTujUU7IJQdQA+g==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.61.1.tgz", + "integrity": "sha512-bVWIOIk6pV01p4CdUbPP7CJ/434z+OooYjDuFcR+44N35YvKUC66G8MGnvcWx5mWKW3g61J+t74l3Kj15Kwn2Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.61.1.tgz", + "integrity": "sha512-qy5pBvZbqNFheBz61R1rzsezjm0J7O2oNGoWtGoY89SZYLUfxAJTBAqDChqAIdB4rCiIbi9nF7yZ83GnNiLwSw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.61.1.tgz", + "integrity": "sha512-E83TXjI4zm0+5f2qO+UOudaCYIhYwpJ5jq6YCZNIZ+6CbfhKrkAGezeiASBL9ElxAxFsRS9ZhESv8mfnj6TKeg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.61.1.tgz", + "integrity": "sha512-fbWnKqVkjrJN38vNe3ahkbk6iejS/3b0Nt7EEtPpE6RBacZcGXNKbzfHN3GUUlXOPghUg0j6XUGrtjX9z1sIvA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.61.1.tgz", + "integrity": "sha512-ArMl38iVAbk0New1ogihQNY6iphLi4ZaRsa037gUzv5yeKPY8TD3Dmy4x2RNC1VztU/uqm+G+/RwFrSka3Oy2g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.61.1.tgz", + "integrity": "sha512-0mYtjHS9ucAbcATycCNK9IGBk/cCe/ma7EmSLGZdsxnOA8cjRIyU04wDpVAD9NiOfLUR9KTxdiO53uOkherqjQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.61.1.tgz", + "integrity": "sha512-gK1iCEPfpoSG9wfBihXxvBMi8ZfcWffYkEsC/Eih+iFENTaewvNcrEQ69lIOWYO5pePHKLHHO7nq5AILGO/HQQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.61.1.tgz", + "integrity": "sha512-X+zaP2x+j4RXGfbp/seSoRHWnPxzApilDszisZxbYH5C/jTxFhCtDNdPGZb9lJyYPs24wGxruPF7Y+sIXt9Gzw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@standard-schema/spec": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz", + "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==", + "license": "MIT" + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", + "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.2" + } + }, + "node_modules/@types/estree": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz", + "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "22.19.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.20.tgz", + "integrity": "sha512-6tELRwSDYWW9EdZhbeZmYGZ1/7Djkt+Ah3/ScEYT9cDord7UJzasR/4D3VONg9tQI5CDp+/CZC1AXj2pCFOvpw==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/react": { + "version": "19.2.17", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.17.tgz", + "integrity": "sha512-MXfmqaVPEVgkBT/aY0aGCkRWWtByiYQXo3xdQ8r5RzuFrPiRn8Gar2tQdXSUQ2GKV3bkXckek89V8wQBY2Q/Aw==", + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "csstype": "^3.2.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.2.3", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.3.tgz", + "integrity": "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==", + "license": "MIT", + "optional": true, + "peer": true, + "peerDependencies": { + "@types/react": "^19.2.0" + } + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.7.0.tgz", + "integrity": "sha512-gUu9hwfWvvEDBBmgtAowQCojwZmJ5mcLn3aufeCsitijs3+f2NsrPtlAWIR6OPiqljl96GVCUbLe0HyqIpVaoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.28.0", + "@babel/plugin-transform-react-jsx-self": "^7.27.1", + "@babel/plugin-transform-react-jsx-source": "^7.27.1", + "@rolldown/pluginutils": "1.0.0-beta.27", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.17.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" + } + }, + "node_modules/aria-hidden": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.6.tgz", + "integrity": "sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/assistant-cloud": { + "version": "0.1.31", + "resolved": "https://registry.npmjs.org/assistant-cloud/-/assistant-cloud-0.1.31.tgz", + "integrity": "sha512-YBLc79w2EFD/6YjvcZrperpZ+B3TQ9LZ39AbjfcnbIJiSXYAs8cDH+mgy1GrfJBq47nhGaTVEf7ajv+hk084eA==", + "license": "MIT", + "dependencies": { + "assistant-stream": "^0.3.20" + } + }, + "node_modules/assistant-stream": { + "version": "0.3.20", + "resolved": "https://registry.npmjs.org/assistant-stream/-/assistant-stream-0.3.20.tgz", + "integrity": "sha512-CniC84epmE9JrMSDzlZVWJ13O5rYbjoqEzh0jT+QfsrR07LBls42DMJ60XNxKXm8Hrn6MHSZcxqBUqwXRtoutA==", + "license": "MIT", + "dependencies": { + "@standard-schema/spec": "^1.1.0", + "nanoid": "^5.1.11", + "secure-json-parse": "^4.1.0" + }, + "peerDependencies": { + "ioredis": "^5.10.1", + "redis": "^5.12.1" + }, + "peerDependenciesMeta": { + "ioredis": { + "optional": true + }, + "redis": { + "optional": true + } + } + }, + "node_modules/assistant-stream/node_modules/nanoid": { + "version": "5.1.16", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.16.tgz", + "integrity": "sha512-kVrnsrJqMR8+oLJnGEmSWw9BivK5mt7H3FZatVRjrc5wGqFYuBxX1yG7+A7Gi5AefkX6t/oCkizcQgpu0cY1dQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, + "node_modules/baseline-browser-mapping": { + "version": "2.10.34", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.34.tgz", + "integrity": "sha512-IMDedajPifLnHNY0X9n8hKxRTQ6/eTHwr5bDo04WnuqxyKw6LYtQywCuuqPZwhl3aBXMvQpJov42GLCwRRdQzw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/browserslist": { + "version": "4.28.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.2.tgz", + "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.10.12", + "caniuse-lite": "^1.0.30001782", + "electron-to-chromium": "^1.5.328", + "node-releases": "^2.0.36", + "update-browserslist-db": "^1.2.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001793", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001793.tgz", + "integrity": "sha512-iwSsYWaCOoh26cV8NwNRViHlrfUvYsHDfRVcbtmw0Kg6PJIZZXwMkj1442FYLBGkeUf1juAsU3DTfxW579mrPA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "license": "MIT", + "optional": true, + "peer": true + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/detect-node-es": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", + "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.368", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.368.tgz", + "integrity": "sha512-7RckJJK4uESJF9PxvfMWd3TGqIiieUTG4HxnKaKuIpGbcr+r2ZEB3g2gAhCP3Fqm42vJSzLfgab9eva/C4/XVw==", + "dev": true, + "license": "ISC" + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-nonce": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", + "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/jiti": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.7.0.tgz", + "integrity": "sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/lucide-react": { + "version": "0.468.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.468.0.tgz", + "integrity": "sha512-6koYRhnM2N0GGZIdXzSeiNwguv1gt/FAjZOiPl76roBi3xKEXa4WmfpxgQwTTL4KipXjefrnf3oV4IsYhi4JFA==", + "license": "ISC", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz", + "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/node-releases": { + "version": "2.0.47", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.47.tgz", + "integrity": "sha512-Uzmd6LXpouKo8EUK68IjH4+E01w/hXyV3R3g/geCJo+rXLNfh1xucB+LOzYEOQPSiUK3h/xZf0cQGcSsmyL2Og==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.5.15", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.15.tgz", + "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.12", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/radix-ui": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/radix-ui/-/radix-ui-1.4.3.tgz", + "integrity": "sha512-aWizCQiyeAenIdUbqEpXgRA1ya65P13NKn/W8rWkcN0OPkRDxdBVLWnIEDsS2RpwCK2nobI7oMUSmexzTDyAmA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-accessible-icon": "1.1.7", + "@radix-ui/react-accordion": "1.2.12", + "@radix-ui/react-alert-dialog": "1.1.15", + "@radix-ui/react-arrow": "1.1.7", + "@radix-ui/react-aspect-ratio": "1.1.7", + "@radix-ui/react-avatar": "1.1.10", + "@radix-ui/react-checkbox": "1.3.3", + "@radix-ui/react-collapsible": "1.1.12", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-context-menu": "2.2.16", + "@radix-ui/react-dialog": "1.1.15", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-dropdown-menu": "2.1.16", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-form": "0.1.8", + "@radix-ui/react-hover-card": "1.1.15", + "@radix-ui/react-label": "2.1.7", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-menubar": "1.1.16", + "@radix-ui/react-navigation-menu": "1.2.14", + "@radix-ui/react-one-time-password-field": "0.1.8", + "@radix-ui/react-password-toggle-field": "0.1.3", + "@radix-ui/react-popover": "1.1.15", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-progress": "1.1.7", + "@radix-ui/react-radio-group": "1.3.8", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-scroll-area": "1.2.10", + "@radix-ui/react-select": "2.2.6", + "@radix-ui/react-separator": "1.1.7", + "@radix-ui/react-slider": "1.3.6", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-switch": "1.2.6", + "@radix-ui/react-tabs": "1.1.13", + "@radix-ui/react-toast": "1.2.15", + "@radix-ui/react-toggle": "1.1.10", + "@radix-ui/react-toggle-group": "1.1.11", + "@radix-ui/react-toolbar": "1.1.11", + "@radix-ui/react-tooltip": "1.2.8", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-escape-keydown": "1.1.1", + "@radix-ui/react-use-is-hydrated": "0.1.0", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-size": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/radix-ui/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/radix-ui/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/radix-ui/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react": { + "version": "19.2.7", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.7.tgz", + "integrity": "sha512-HNe9WslTbXmFK8o8cmwgAeJFSBvt1bPdHCVKtaaV+WlAN36mpT4hcRpwbf3fY56ar2oIXzsBpOAiIRHAdY0OlQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "19.2.7", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.7.tgz", + "integrity": "sha512-t0BRVXvbiE/o20Hfw669rLbMCDWtYZLvmJigy2f0MxsXF+71pxhR3xOkspmsO8h3ZlNzyibAmtCa3l4lYKk6gQ==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.27.0" + }, + "peerDependencies": { + "react": "^19.2.7" + } + }, + "node_modules/react-refresh": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz", + "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-remove-scroll": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.7.2.tgz", + "integrity": "sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q==", + "license": "MIT", + "dependencies": { + "react-remove-scroll-bar": "^2.3.7", + "react-style-singleton": "^2.2.3", + "tslib": "^2.1.0", + "use-callback-ref": "^1.3.3", + "use-sidecar": "^1.1.3" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-remove-scroll-bar": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz", + "integrity": "sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==", + "license": "MIT", + "dependencies": { + "react-style-singleton": "^2.2.2", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-style-singleton": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz", + "integrity": "sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==", + "license": "MIT", + "dependencies": { + "get-nonce": "^1.0.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-textarea-autosize": { + "version": "8.5.9", + "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.5.9.tgz", + "integrity": "sha512-U1DGlIQN5AwgjTyOEnI1oCcMuEr1pv1qOtklB2l4nyMGbHzWrI0eFsYK0zos2YWqAolJyG0IWJaqWmWj5ETh0A==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.20.13", + "use-composed-ref": "^1.3.0", + "use-latest": "^1.2.1" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/rollup": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.61.1.tgz", + "integrity": "sha512-I4KW6iuRpuu2uHBLraZ1wNZe0DP7lnRha+VJ9tNaYVaVgKhW0aI3h4RYnoRPeql0flHm/Co55b7snEDcOfOJrA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.9" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.61.1", + "@rollup/rollup-android-arm64": "4.61.1", + "@rollup/rollup-darwin-arm64": "4.61.1", + "@rollup/rollup-darwin-x64": "4.61.1", + "@rollup/rollup-freebsd-arm64": "4.61.1", + "@rollup/rollup-freebsd-x64": "4.61.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.61.1", + "@rollup/rollup-linux-arm-musleabihf": "4.61.1", + "@rollup/rollup-linux-arm64-gnu": "4.61.1", + "@rollup/rollup-linux-arm64-musl": "4.61.1", + "@rollup/rollup-linux-loong64-gnu": "4.61.1", + "@rollup/rollup-linux-loong64-musl": "4.61.1", + "@rollup/rollup-linux-ppc64-gnu": "4.61.1", + "@rollup/rollup-linux-ppc64-musl": "4.61.1", + "@rollup/rollup-linux-riscv64-gnu": "4.61.1", + "@rollup/rollup-linux-riscv64-musl": "4.61.1", + "@rollup/rollup-linux-s390x-gnu": "4.61.1", + "@rollup/rollup-linux-x64-gnu": "4.61.1", + "@rollup/rollup-linux-x64-musl": "4.61.1", + "@rollup/rollup-openbsd-x64": "4.61.1", + "@rollup/rollup-openharmony-arm64": "4.61.1", + "@rollup/rollup-win32-arm64-msvc": "4.61.1", + "@rollup/rollup-win32-ia32-msvc": "4.61.1", + "@rollup/rollup-win32-x64-gnu": "4.61.1", + "@rollup/rollup-win32-x64-msvc": "4.61.1", + "fsevents": "~2.3.2" + } + }, + "node_modules/safe-content-frame": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/safe-content-frame/-/safe-content-frame-0.0.20.tgz", + "integrity": "sha512-saE3fBeGWOsi04PzTUaRi6RsBIjDYrZX4KzgIZUjbq3xQeOKYMcW1DeTb573Zyx1ggCDVJKoD/THchblISwjiQ==", + "license": "MIT" + }, + "node_modules/scheduler": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", + "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==", + "license": "MIT" + }, + "node_modules/secure-json-parse": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-4.1.0.tgz", + "integrity": "sha512-l4KnYfEyqYJxDwlNVyRfO2E4NTHfMKAWdUuA8J0yve2Dz/E/PdBepY03RvyJpssIpRFwJoCD55wA+mEDs6ByWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz", + "integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/tsx": { + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.22.4.tgz", + "integrity": "sha512-X8EX+XV4QR5xCsrgxaED954zTDfY8KqlDtskKEL0cHhyS/P8b4IFOvGDQpsC9Q1XnLq915wEfwwY/zzskCtmhg==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "esbuild": "~0.28.0" + }, + "bin": { + "tsx": "dist/cli.mjs" + }, + "engines": { + "node": ">=18.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + } + }, + "node_modules/tsx/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "peer": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true + }, + "node_modules/update-browserslist-db": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/use-callback-ref": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.3.tgz", + "integrity": "sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-composed-ref": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.4.0.tgz", + "integrity": "sha512-djviaxuOOh7wkj0paeO1Q/4wMZ8Zrnag5H6yBvzN7AKKe8beOaED9SF5/ByLqsku8NP4zQqsvM2u3ew/tJK8/w==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-effect-event": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/use-effect-event/-/use-effect-event-2.0.3.tgz", + "integrity": "sha512-fz1en+z3fYXCXx3nMB8hXDMuygBltifNKZq29zDx+xNJ+1vEs6oJlYd9sK31vxJ0YI534VUsHEBY0k2BATsmBQ==", + "license": "MIT", + "peerDependencies": { + "react": "^18.3 || ^19.0.0-0" + } + }, + "node_modules/use-isomorphic-layout-effect": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.2.1.tgz", + "integrity": "sha512-tpZZ+EX0gaghDAiFR37hj5MgY6ZN55kLiPkJsKxBMZ6GZdOSPJXiOzPM984oPYZ5AnehYx5WQp1+ME8I/P/pRA==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-latest": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.3.0.tgz", + "integrity": "sha512-mhg3xdm9NaM8q+gLT8KryJPnRFOz1/5XPBhmDEVZK1webPzDjrPk7f/mbpeLqTgB9msytYWANxgALOCJKnLvcQ==", + "license": "MIT", + "dependencies": { + "use-isomorphic-layout-effect": "^1.1.1" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sidecar": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.3.tgz", + "integrity": "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==", + "license": "MIT", + "dependencies": { + "detect-node-es": "^1.1.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sync-external-store": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz", + "integrity": "sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/vite": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.4.3.tgz", + "integrity": "sha512-NTKlcQjlAK7MlQoyb6LgaqHc8sso/pVyUJYWMws3jg21uTJw/LddqIFPcPqP6PzpgbIcZyKI85sFE4HBrQDA8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.25.0", + "fdir": "^6.4.4", + "picomatch": "^4.0.2", + "postcss": "^8.5.3", + "rollup": "^4.34.9", + "tinyglobby": "^0.2.13" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "jiti": ">=1.21.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/vite/node_modules/@esbuild/aix-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", + "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", + "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", + "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/android-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", + "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/darwin-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", + "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/darwin-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", + "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", + "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", + "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", + "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", + "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", + "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-loong64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", + "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-mips64el": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", + "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", + "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-riscv64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", + "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-s390x": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", + "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", + "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", + "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/netbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", + "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", + "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", + "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openharmony-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", + "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/sunos-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", + "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", + "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", + "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", + "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/esbuild": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz", + "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.12", + "@esbuild/android-arm": "0.25.12", + "@esbuild/android-arm64": "0.25.12", + "@esbuild/android-x64": "0.25.12", + "@esbuild/darwin-arm64": "0.25.12", + "@esbuild/darwin-x64": "0.25.12", + "@esbuild/freebsd-arm64": "0.25.12", + "@esbuild/freebsd-x64": "0.25.12", + "@esbuild/linux-arm": "0.25.12", + "@esbuild/linux-arm64": "0.25.12", + "@esbuild/linux-ia32": "0.25.12", + "@esbuild/linux-loong64": "0.25.12", + "@esbuild/linux-mips64el": "0.25.12", + "@esbuild/linux-ppc64": "0.25.12", + "@esbuild/linux-riscv64": "0.25.12", + "@esbuild/linux-s390x": "0.25.12", + "@esbuild/linux-x64": "0.25.12", + "@esbuild/netbsd-arm64": "0.25.12", + "@esbuild/netbsd-x64": "0.25.12", + "@esbuild/openbsd-arm64": "0.25.12", + "@esbuild/openbsd-x64": "0.25.12", + "@esbuild/openharmony-arm64": "0.25.12", + "@esbuild/sunos-x64": "0.25.12", + "@esbuild/win32-arm64": "0.25.12", + "@esbuild/win32-ia32": "0.25.12", + "@esbuild/win32-x64": "0.25.12" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/zod": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.3.tgz", + "integrity": "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/zustand": { + "version": "5.0.14", + "resolved": "https://registry.npmjs.org/zustand/-/zustand-5.0.14.tgz", + "integrity": "sha512-/8tAspM5LMPr28b3fwLYrtdj77ECpfZviaP75CMTnwO8ISyaE4GDIG/9rDDYq/cH9D2Xw2A2RXglLInmVBQB/g==", + "license": "MIT", + "engines": { + "node": ">=12.20.0" + }, + "peerDependencies": { + "@types/react": ">=18.0.0", + "immer": ">=9.0.6", + "react": ">=18.0.0", + "use-sync-external-store": ">=1.2.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "immer": { + "optional": true + }, + "react": { + "optional": true + }, + "use-sync-external-store": { + "optional": true + } + } + } + } +} diff --git a/evidence/current-consumer-20260905/operator/diagnose-d3-enlargement-02.mjs.txt b/evidence/current-consumer-20260905/operator/diagnose-d3-enlargement-02.mjs.txt new file mode 100644 index 0000000..c499143 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/diagnose-d3-enlargement-02.mjs.txt @@ -0,0 +1,179 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import { createServer as portProbe } from 'node:net'; +import path from 'node:path'; +import { chromium } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/playwright/index.mjs'; +import { createServer } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/node/index.js'; + +const source = 'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'; +const consumer = path.resolve(process.argv[2] ?? ''); +const output = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide a real installed generated app and NEW output directory'); +await mkdir(output, { recursive: false }); +const sha = bytes => createHash('sha256').update(bytes).digest('hex'); +const sourceFiles = execFileSync('git', ['ls-files', '-z'], { cwd: source, env: { ...process.env, GIT_OPTIONAL_LOCKS: '0' } }).toString().split('\0').filter(f => f && !path.basename(f).startsWith('.env')); +sourceFiles.push('e2e/current-consumer-proof.mjs', 'e2e/current-consumer-recovery-proof.mjs', 'examples/apps/chat-ui/template/package-lock.json'); +const consumerFiles = ['package.json', 'package-lock.json', 'index.html', 'vite.config.mjs', 'src/main.jsx', 'src/styles.css', 'src/nodeagent-chat/NodeAgentChatApp.jsx', 'src/nodeagent-chat/nodeAgentLocalAdapter.js', 'src/nodeagent-chat/toolUIs.jsx']; +const hashFiles = async (root, files) => Object.fromEntries(await Promise.all(files.map(async f => [f, sha(await readFile(path.join(root, f)))]))); +const report = { namedProof: 'NODEAGENT-RESPONSE-RECOVERY-01', startedAt: new Date().toISOString(), sourceBefore: await hashFiles(source, sourceFiles), consumerBefore: await hashFiles(consumer, consumerFiles), passed: false, checks: [], cells: [], captures: [], requests: [], grade: null }; +const check = (value, name) => { report.checks.push({ name, passed: Boolean(value) }); assert.ok(value, name); }; +let browser, server, page; +let kind, tool, bubble, composer; +const surfaces = ['generated']; +async function start(root) { + const probe = portProbe(); await new Promise(resolve => probe.listen(0, '127.0.0.1', resolve)); const port = probe.address().port; await new Promise(resolve => probe.close(resolve)); + server = await createServer({ root, envDir: false, server: { host: '127.0.0.1', port, strictPort: true, open: false } }); await server.listen(); return 'http://127.0.0.1:' + port; +} +async function snapshot(name, target = composer) { + if (target) await page.locator(target).scrollIntoViewIfNeeded(); + let prior = await page.content(); + for (let i = 0; i < 16; i++) { await page.waitForTimeout(200); const current = await page.content(); if (current === prior) break; prior = current; } + await page.evaluate(() => new Promise(resolve => requestAnimationFrame(() => requestAnimationFrame(resolve)))); + const html = await page.content(); + await writeFile(path.join(output, name + '.before.html'), html); + await page.screenshot({ path: path.join(output, name + '.png'), caret: 'initial' }); + const after = await page.content(); await writeFile(path.join(output, name + '.html'), after); + check(after === html, name + ' exact DOM during settled screenshot'); + const state = await page.evaluate(() => ({ layout: [...document.querySelectorAll('.na-recovery,.naRecovery,.na-footer,.naFooter,.na-viewport,.naViewport')].map(e=>({class:e.className,scrollTop:e.scrollTop,scrollHeight:e.scrollHeight,clientHeight:e.clientHeight,box:JSON.parse(JSON.stringify(e.getBoundingClientRect()))})), viewport: { width: innerWidth, height: innerHeight }, scroll: { x: scrollX, y: scrollY }, text: document.body.innerText, overflow: document.documentElement.scrollWidth - innerWidth, focus: { tag: document.activeElement?.tagName, label: document.activeElement?.getAttribute('aria-label') }, buttons: [...document.querySelectorAll('button')].map(b => ({ label: b.getAttribute('aria-label') || b.textContent, disabled: b.disabled })) })); + await writeFile(path.join(output, name + '.json'), JSON.stringify(state, null, 2) + '\n'); + report.captures.push({ name, pngSha256: sha(await readFile(path.join(output, name + '.png'))), state }); return state; +} +async function send(question) { + await page.locator('textarea[name="input"]').fill(question); + await page.getByRole('button', { name: 'Send', exact: true }).waitFor(); + await page.waitForFunction(() => document.querySelector('button[aria-label="Send"]')?.disabled === false); + await page.locator('textarea[name="input"]').press('Enter'); +} +async function idleWithCards(count) { + await page.waitForFunction(({ tool, count }) => document.querySelectorAll(tool).length === count && !document.querySelector('button[aria-label="Stop response"]'), { tool, count }); +} +async function graph() { + if (kind === 'generated') return null; + return page.evaluate(async () => { const m = await import('/src/features/node-agent/graph/agentGraphSession.ts'); return m.graphSession.getSnapshot(); }); +} +async function installPartialFailure() { + await page.evaluate(async ({ modulePath, key }) => { + const module = await import(modulePath), original = module[key].run; + window.proofAttempts = []; + module[key].run = async function* (args) { + if (window.proofAttempts.length >= 64) throw new Error('PROOF FIXTURE: attempt bound exceeded'); + const attempt = { id: args.unstable_assistantMessageId, parentId: args.unstable_parentId, injectedFailure: window.proofAttempts.length < 2 }; + window.proofAttempts.push(attempt); + window.proofCurrentMessage = args.unstable_getMessage; + for await (const frame of original(args)) { + yield frame; + const tools = frame.content.filter(p => p.type === 'tool-call'); + if (attempt.injectedFailure && tools.some(p => p.result) && tools.some(p => !p.result)) throw new Error('PROOF FIXTURE: second tool failed after the first actual result.'); + } + }; + }, { modulePath: kind === 'generated' ? '/src/nodeagent-chat/nodeAgentLocalAdapter.js' : '/src/features/node-agent/runtime/nodeAgentChatAdapter.ts', key: kind === 'generated' ? 'nodeAgentLocalAdapter' : 'nodeAgentChatAdapter' }); +} +try { + browser = await chromium.launch({ headless: true }); report.browser = browser.version(); report.node = process.version; + for (kind of surfaces) { + const base = await start(kind === 'generated' ? consumer : source); + tool = kind === 'generated' ? '.naTool' : '.na-tool'; bubble = kind === 'generated' ? '.naMsgAssistant .naBubble' : '.na-msg-assistant .na-bubble'; composer = kind === 'generated' ? '.naComposer' : '.na-composer'; + for (const width of [390]) { + const ctx = await browser.newContext({ viewport: { width, height: width <= 390 ? 844 : 960 }, colorScheme: 'dark' }); + await ctx.route('**/*', route => { const request = route.request(), url = new URL(request.url()); if (report.requests.length < 2000) report.requests.push({ origin: url.origin, path: url.pathname, method: request.method() }); return url.origin === base || ['fonts.googleapis.com', 'fonts.gstatic.com'].includes(url.hostname) ? route.continue() : route.abort(); }); + page = await ctx.newPage(); page.setDefaultTimeout(16000); + const cell = { kind, width, errors: [], checksStart: report.checks.length, capturesStart: report.captures.length }; report.cells.push(cell); page.on('pageerror', error => cell.errors.push(error.message)); + await page.goto(base, { waitUntil: 'domcontentloaded', timeout: 45000 }); await page.locator('textarea[name="input"]').waitFor(); + const question = kind === 'generated' ? 'Does the local NodeAgent wedge hold for an MVP?' : 'Does our wedge hold versus Acme, and does the runway model survive 18 months?'; + await snapshot(kind + '-empty-' + width); + await send(question); await idleWithCards(4); await page.waitForTimeout(700); + const earlier = await page.locator(bubble).first().innerText(); const graphBefore = await graph(); + await send(question); await page.locator(tool + '[data-running="true"]').first().waitFor(); + const stop = page.getByRole('button', { name: 'Stop response', exact: true }); const began = Date.now(); + if ([390, 1024, 1920].includes(width)) { await stop.focus(); await page.keyboard.press('Enter'); cell.stopInput = 'keyboard'; } else { await stop.click(); cell.stopInput = 'pointer'; } + await page.getByText('Stopped this response. Completed work is kept.', { exact: true }).waitFor(); cell.stopLatencyMs = Date.now() - began; + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('stopped')), kind + ' native incomplete tool shows stopped ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' Stop preserves earlier completed response ' + width); + const stoppedText = await page.locator(bubble).last().innerText(), stoppedGraph = await graph(); + check(!stoppedText.includes('Done.'), kind + ' stopped response has no fake Done ' + width); + await page.waitForTimeout(750); check(await page.locator(bubble).last().innerText() === stoppedText, kind + ' stopped response remains stable ' + width); assert.deepEqual(await graph(), stoppedGraph); assert.deepEqual(stoppedGraph, graphBefore); + await snapshot(kind + '-stopped-' + width); + check(await page.locator('textarea[name="input"]').evaluate(e => e === document.activeElement), kind + ' Stop retains keyboard continuation focus ' + width); + await page.getByRole('button', { name: 'Retry response', exact: true }).click(); await idleWithCards(8); check(await page.locator(bubble).count() === 2, kind + ' stopped Retry replaces only current response ' + width); + await installPartialFailure(); await send(question); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('failed')), kind + ' partial failure names failed tool ' + width); + await page.waitForTimeout(750); check(await page.evaluate(() => window.proofAttempts.length === 1), kind + ' failed response does not retry automatically ' + width); + await snapshot(kind + '-error-' + width); + const retry = page.getByRole('button', { name: 'Retry response', exact: true }); + if ([390, 1024, 1920].includes(width)) { await retry.focus(); await page.keyboard.press('Enter'); } else await retry.dblclick(); + await page.waitForFunction(() => window.proofAttempts.length >= 2 && window.proofCurrentMessage().status?.type === 'incomplete'); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + await page.waitForTimeout(750); + check(await page.evaluate(() => window.proofAttempts.length === 2), kind + ' first explicit Retry fails once with no automatic or duplicate retry ' + width); + await snapshot(kind + '-error-again-' + width); + if (width === 390) { + cell.enlargement = await page.evaluate(() => { + const targets = [...document.querySelectorAll('*')].filter(e => e.matches('textarea,input,button') || [...e.childNodes].some(n => n.nodeType === 3 && n.textContent.trim())); + const originals = targets.map(e => ({ e, style: e.getAttribute('style'), size: parseFloat(getComputedStyle(e).fontSize) })); + window.proofRestoreText = () => originals.forEach(({ e, style }) => style === null ? e.removeAttribute('style') : e.setAttribute('style', style)); + originals.forEach(({ e, size }) => e.style.fontSize = size * 2 + 'px'); + return { method: 'Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.', elements: originals.length }; + }); + await page.locator('textarea[name="input"]').focus(); + await page.keyboard.press('Shift+Tab'); + check(await retry.evaluate(e => e === document.activeElement), kind + ' enlarged Retry reachable from composer by keyboard ' + width); + const enlarged = await snapshot(kind + '-error-text-200-' + width, null); + cell.enlargement.documentOverflow = enlarged.overflow; + const changedBounds = await page.locator('.na-recovery,.naRecovery,' + composer).evaluateAll(es => es.map(e => ({ class: e.className, left: e.getBoundingClientRect().left, right: e.getBoundingClientRect().right, overflow: e.scrollWidth - e.clientWidth }))); + cell.enlargement.changedBounds = changedBounds; + + const guardDOM = await page.content(); + await page.evaluate(() => { + for (const [selector,label] of [['.naRecovery','CHANGE B: recovery'],['.naComposer','CHANGE A: composer']]) { + const r=document.querySelector(selector).getBoundingClientRect(), overlay=document.createElement('div');overlay.setAttribute('data-proof-boundary','true'); + overlay.style.cssText=`position:fixed;pointer-events:none;z-index:999999;box-sizing:border-box;left:${r.left}px;top:${r.top}px;width:${r.width}px;height:${r.height}px;border:3px solid #ff3b30`; + const tag=document.createElement('span');tag.textContent=label;tag.style.cssText='position:absolute;left:0;top:-24px;background:#101418;color:#fff;border:1px solid #ff3b30;font:12px/20px sans-serif;padding:0 3px;white-space:nowrap';overlay.append(tag);document.body.append(overlay); + } + }); + await page.screenshot({path:path.join(output,'change-boundary.png'),caret:'initial'}); + await page.evaluate(()=>document.querySelectorAll('[data-proof-boundary]').forEach(e=>e.remove())); + assert.equal(await page.content(),guardDOM); + const results=[]; + for (const css of ['.naMain { min-width:0 }','.naThread { min-width:0 }']) { + const style=await page.addStyleTag({content:css}); + results.push(await page.evaluate(css=>({css,overflow:document.documentElement.scrollWidth-innerWidth,boxes:[...document.querySelectorAll('.naThread,.naViewport,.naRecovery,.naComposer,.naComposerInput')].map(e=>({class:e.className,width:e.getBoundingClientRect().width,right:e.getBoundingClientRect().right}))}),css)); + await style.evaluate(e=>e.remove()); + } + await writeFile(path.join(output,'intrinsic-width-diagnosis.json'),JSON.stringify(results,null,2)); + throw new Error('DIAGNOSTIC COMPLETE: no source mutation; see intrinsic-width-diagnosis.json'); + check(changedBounds.every(b => b.left >= -1 && b.right <= width + 1 && b.overflow <= 1), kind + ' enlarged recovery and composer fit ' + width); + check(await retry.evaluate(e => { const r = e.getBoundingClientRect(); const hit = document.elementFromPoint(r.x + r.width / 2, r.y + r.height / 2); return r.y >= 0 && r.bottom <= innerHeight && (hit === e || e.contains(hit)); }), kind + ' enlarged Retry paints visibly without overlay obstruction ' + width); + await page.evaluate(() => window.proofRestoreText()); + } + if ([390, 1024, 1920].includes(width)) { await retry.focus(); await page.keyboard.press('Enter'); } else await retry.dblclick(); + await idleWithCards(12); cell.attempts = await page.evaluate(() => window.proofAttempts); + check(cell.attempts.length === 3, kind + ' second explicit Retry recovers once despite repeated activation ' + width); + check(cell.attempts.every(a => typeof a.id === 'string' && a.id.length > 0) && new Set(cell.attempts.map(a => a.id)).size === 3, kind + ' SDK creates a fresh response identity for both retries ' + width); + check(new Set(cell.attempts.map(a => a.parentId)).size === 1, kind + ' retries retain the same user parent ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' recovery retains earlier evidence ' + width); + check(await page.getByRole('alert').count() === 0, kind + ' recovered response removes failure notice ' + width); + await snapshot(kind + '-recovered-' + width); + if (width === 390) { + const begin = Date.now(); for (let i = 0; i < 12; i++) { await send(question); await idleWithCards(4 * (4 + i)); } + cell.accumulation = { additionalTurns: 12, totalResponses: 15, toolCards: 60, elapsedMs: Date.now() - begin }; + await snapshot(kind + '-accumulated-' + width); + } + await page.reload({ waitUntil: 'domcontentloaded' }); await page.locator('textarea[name="input"]').waitFor(); check(await page.locator(tool).count() === 0, kind + ' reload resets browser session honestly ' + width); + await snapshot(kind + '-reloaded-' + width); + check(cell.errors.every(e => e.includes('PROOF FIXTURE: second tool failed')), kind + ' only the intentional adapter fault reaches page errors ' + width); + cell.checksEnd = report.checks.length; cell.capturesEnd = report.captures.length; await ctx.close(); + } + await server.close(); server = null; + } + check(report.requests.every(r => r.method === 'GET'), 'no browser writes or provider requests'); + report.sourceAfter = await hashFiles(source, sourceFiles); report.consumerAfter = await hashFiles(consumer, consumerFiles); assert.deepEqual(report.sourceAfter, report.sourceBefore); assert.deepEqual(report.consumerAfter, report.consumerBefore); + report.passed = true; +} catch (error) { + report.error = String(error.stack ?? error); process.exitCode = 1; + if (page && !page.isClosed()) { await writeFile(path.join(output, 'failure.html'), await page.content()); await page.screenshot({ path: path.join(output, 'failure.png'), caret: 'initial' }).catch(() => {}); } +} finally { + await browser?.close(); await server?.close(); report.finishedAt = new Date().toISOString(); await writeFile(path.join(output, 'report.json'), JSON.stringify(report, null, 2) + '\n'); console.log(JSON.stringify({ output, passed: report.passed, checks: report.checks.length, captures: report.captures.length, error: report.error })); +} diff --git a/evidence/current-consumer-20260905/operator/diagnose-d3-enlargement.mjs.txt b/evidence/current-consumer-20260905/operator/diagnose-d3-enlargement.mjs.txt new file mode 100644 index 0000000..e19fe15 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/diagnose-d3-enlargement.mjs.txt @@ -0,0 +1,179 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import { createServer as portProbe } from 'node:net'; +import path from 'node:path'; +import { chromium } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/playwright/index.mjs'; +import { createServer } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/node/index.js'; + +const source = 'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'; +const consumer = path.resolve(process.argv[2] ?? ''); +const output = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide a real installed generated app and NEW output directory'); +await mkdir(output, { recursive: false }); +const sha = bytes => createHash('sha256').update(bytes).digest('hex'); +const sourceFiles = execFileSync('git', ['ls-files', '-z'], { cwd: source, env: { ...process.env, GIT_OPTIONAL_LOCKS: '0' } }).toString().split('\0').filter(f => f && !path.basename(f).startsWith('.env')); +sourceFiles.push('e2e/current-consumer-proof.mjs', 'e2e/current-consumer-recovery-proof.mjs', 'examples/apps/chat-ui/template/package-lock.json'); +const consumerFiles = ['package.json', 'package-lock.json', 'index.html', 'vite.config.mjs', 'src/main.jsx', 'src/styles.css', 'src/nodeagent-chat/NodeAgentChatApp.jsx', 'src/nodeagent-chat/nodeAgentLocalAdapter.js', 'src/nodeagent-chat/toolUIs.jsx']; +const hashFiles = async (root, files) => Object.fromEntries(await Promise.all(files.map(async f => [f, sha(await readFile(path.join(root, f)))]))); +const report = { namedProof: 'NODEAGENT-RESPONSE-RECOVERY-01', startedAt: new Date().toISOString(), sourceBefore: await hashFiles(source, sourceFiles), consumerBefore: await hashFiles(consumer, consumerFiles), passed: false, checks: [], cells: [], captures: [], requests: [], grade: null }; +const check = (value, name) => { report.checks.push({ name, passed: Boolean(value) }); assert.ok(value, name); }; +let browser, server, page; +let kind, tool, bubble, composer; +const surfaces = ['generated']; +async function start(root) { + const probe = portProbe(); await new Promise(resolve => probe.listen(0, '127.0.0.1', resolve)); const port = probe.address().port; await new Promise(resolve => probe.close(resolve)); + server = await createServer({ root, envDir: false, server: { host: '127.0.0.1', port, strictPort: true, open: false } }); await server.listen(); return 'http://127.0.0.1:' + port; +} +async function snapshot(name, target = composer) { + if (target) await page.locator(target).scrollIntoViewIfNeeded(); + let prior = await page.content(); + for (let i = 0; i < 16; i++) { await page.waitForTimeout(200); const current = await page.content(); if (current === prior) break; prior = current; } + await page.evaluate(() => new Promise(resolve => requestAnimationFrame(() => requestAnimationFrame(resolve)))); + const html = await page.content(); + await writeFile(path.join(output, name + '.before.html'), html); + await page.screenshot({ path: path.join(output, name + '.png'), caret: 'initial' }); + const after = await page.content(); await writeFile(path.join(output, name + '.html'), after); + check(after === html, name + ' exact DOM during settled screenshot'); + const state = await page.evaluate(() => ({ layout: [...document.querySelectorAll('.na-recovery,.naRecovery,.na-footer,.naFooter,.na-viewport,.naViewport')].map(e=>({class:e.className,scrollTop:e.scrollTop,scrollHeight:e.scrollHeight,clientHeight:e.clientHeight,box:JSON.parse(JSON.stringify(e.getBoundingClientRect()))})), viewport: { width: innerWidth, height: innerHeight }, scroll: { x: scrollX, y: scrollY }, text: document.body.innerText, overflow: document.documentElement.scrollWidth - innerWidth, focus: { tag: document.activeElement?.tagName, label: document.activeElement?.getAttribute('aria-label') }, buttons: [...document.querySelectorAll('button')].map(b => ({ label: b.getAttribute('aria-label') || b.textContent, disabled: b.disabled })) })); + await writeFile(path.join(output, name + '.json'), JSON.stringify(state, null, 2) + '\n'); + report.captures.push({ name, pngSha256: sha(await readFile(path.join(output, name + '.png'))), state }); return state; +} +async function send(question) { + await page.locator('textarea[name="input"]').fill(question); + await page.getByRole('button', { name: 'Send', exact: true }).waitFor(); + await page.waitForFunction(() => document.querySelector('button[aria-label="Send"]')?.disabled === false); + await page.locator('textarea[name="input"]').press('Enter'); +} +async function idleWithCards(count) { + await page.waitForFunction(({ tool, count }) => document.querySelectorAll(tool).length === count && !document.querySelector('button[aria-label="Stop response"]'), { tool, count }); +} +async function graph() { + if (kind === 'generated') return null; + return page.evaluate(async () => { const m = await import('/src/features/node-agent/graph/agentGraphSession.ts'); return m.graphSession.getSnapshot(); }); +} +async function installPartialFailure() { + await page.evaluate(async ({ modulePath, key }) => { + const module = await import(modulePath), original = module[key].run; + window.proofAttempts = []; + module[key].run = async function* (args) { + if (window.proofAttempts.length >= 64) throw new Error('PROOF FIXTURE: attempt bound exceeded'); + const attempt = { id: args.unstable_assistantMessageId, parentId: args.unstable_parentId, injectedFailure: window.proofAttempts.length < 2 }; + window.proofAttempts.push(attempt); + window.proofCurrentMessage = args.unstable_getMessage; + for await (const frame of original(args)) { + yield frame; + const tools = frame.content.filter(p => p.type === 'tool-call'); + if (attempt.injectedFailure && tools.some(p => p.result) && tools.some(p => !p.result)) throw new Error('PROOF FIXTURE: second tool failed after the first actual result.'); + } + }; + }, { modulePath: kind === 'generated' ? '/src/nodeagent-chat/nodeAgentLocalAdapter.js' : '/src/features/node-agent/runtime/nodeAgentChatAdapter.ts', key: kind === 'generated' ? 'nodeAgentLocalAdapter' : 'nodeAgentChatAdapter' }); +} +try { + browser = await chromium.launch({ headless: true }); report.browser = browser.version(); report.node = process.version; + for (kind of surfaces) { + const base = await start(kind === 'generated' ? consumer : source); + tool = kind === 'generated' ? '.naTool' : '.na-tool'; bubble = kind === 'generated' ? '.naMsgAssistant .naBubble' : '.na-msg-assistant .na-bubble'; composer = kind === 'generated' ? '.naComposer' : '.na-composer'; + for (const width of [390]) { + const ctx = await browser.newContext({ viewport: { width, height: width <= 390 ? 844 : 960 }, colorScheme: 'dark' }); + await ctx.route('**/*', route => { const request = route.request(), url = new URL(request.url()); if (report.requests.length < 2000) report.requests.push({ origin: url.origin, path: url.pathname, method: request.method() }); return url.origin === base || ['fonts.googleapis.com', 'fonts.gstatic.com'].includes(url.hostname) ? route.continue() : route.abort(); }); + page = await ctx.newPage(); page.setDefaultTimeout(16000); + const cell = { kind, width, errors: [], checksStart: report.checks.length, capturesStart: report.captures.length }; report.cells.push(cell); page.on('pageerror', error => cell.errors.push(error.message)); + await page.goto(base, { waitUntil: 'domcontentloaded', timeout: 45000 }); await page.locator('textarea[name="input"]').waitFor(); + const question = kind === 'generated' ? 'Does the local NodeAgent wedge hold for an MVP?' : 'Does our wedge hold versus Acme, and does the runway model survive 18 months?'; + await snapshot(kind + '-empty-' + width); + await send(question); await idleWithCards(4); await page.waitForTimeout(700); + const earlier = await page.locator(bubble).first().innerText(); const graphBefore = await graph(); + await send(question); await page.locator(tool + '[data-running="true"]').first().waitFor(); + const stop = page.getByRole('button', { name: 'Stop response', exact: true }); const began = Date.now(); + if ([390, 1024, 1920].includes(width)) { await stop.focus(); await page.keyboard.press('Enter'); cell.stopInput = 'keyboard'; } else { await stop.click(); cell.stopInput = 'pointer'; } + await page.getByText('Stopped this response. Completed work is kept.', { exact: true }).waitFor(); cell.stopLatencyMs = Date.now() - began; + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('stopped')), kind + ' native incomplete tool shows stopped ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' Stop preserves earlier completed response ' + width); + const stoppedText = await page.locator(bubble).last().innerText(), stoppedGraph = await graph(); + check(!stoppedText.includes('Done.'), kind + ' stopped response has no fake Done ' + width); + await page.waitForTimeout(750); check(await page.locator(bubble).last().innerText() === stoppedText, kind + ' stopped response remains stable ' + width); assert.deepEqual(await graph(), stoppedGraph); assert.deepEqual(stoppedGraph, graphBefore); + await snapshot(kind + '-stopped-' + width); + check(await page.locator('textarea[name="input"]').evaluate(e => e === document.activeElement), kind + ' Stop retains keyboard continuation focus ' + width); + await page.getByRole('button', { name: 'Retry response', exact: true }).click(); await idleWithCards(8); check(await page.locator(bubble).count() === 2, kind + ' stopped Retry replaces only current response ' + width); + await installPartialFailure(); await send(question); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('failed')), kind + ' partial failure names failed tool ' + width); + await page.waitForTimeout(750); check(await page.evaluate(() => window.proofAttempts.length === 1), kind + ' failed response does not retry automatically ' + width); + await snapshot(kind + '-error-' + width); + const retry = page.getByRole('button', { name: 'Retry response', exact: true }); + if ([390, 1024, 1920].includes(width)) { await retry.focus(); await page.keyboard.press('Enter'); } else await retry.dblclick(); + await page.waitForFunction(() => window.proofAttempts.length >= 2 && window.proofCurrentMessage().status?.type === 'incomplete'); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + await page.waitForTimeout(750); + check(await page.evaluate(() => window.proofAttempts.length === 2), kind + ' first explicit Retry fails once with no automatic or duplicate retry ' + width); + await snapshot(kind + '-error-again-' + width); + if (width === 390) { + cell.enlargement = await page.evaluate(() => { + const targets = [...document.querySelectorAll('*')].filter(e => e.matches('textarea,input,button') || [...e.childNodes].some(n => n.nodeType === 3 && n.textContent.trim())); + const originals = targets.map(e => ({ e, style: e.getAttribute('style'), size: parseFloat(getComputedStyle(e).fontSize) })); + window.proofRestoreText = () => originals.forEach(({ e, style }) => style === null ? e.removeAttribute('style') : e.setAttribute('style', style)); + originals.forEach(({ e, size }) => e.style.fontSize = size * 2 + 'px'); + return { method: 'Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.', elements: originals.length }; + }); + await page.locator('textarea[name="input"]').focus(); + await page.keyboard.press('Shift+Tab'); + check(await retry.evaluate(e => e === document.activeElement), kind + ' enlarged Retry reachable from composer by keyboard ' + width); + const enlarged = await snapshot(kind + '-error-text-200-' + width, null); + cell.enlargement.documentOverflow = enlarged.overflow; + const changedBounds = await page.locator('.na-recovery,.naRecovery,' + composer).evaluateAll(es => es.map(e => ({ class: e.className, left: e.getBoundingClientRect().left, right: e.getBoundingClientRect().right, overflow: e.scrollWidth - e.clientWidth }))); + cell.enlargement.changedBounds = changedBounds; + + const guardDOM = await page.content(); + await page.evaluate(() => { + for (const [selector,label] of [['.naRecovery','CHANGE B: recovery'],['.naComposer','CHANGE A: composer']]) { + const r=document.querySelector(selector).getBoundingClientRect(), overlay=document.createElement('div');overlay.setAttribute('data-proof-boundary','true'); + overlay.style.cssText=`position:fixed;pointer-events:none;z-index:999999;box-sizing:border-box;left:${r.left}px;top:${r.top}px;width:${r.width}px;height:${r.height}px;border:3px solid #ff3b30`; + const tag=document.createElement('span');tag.textContent=label;tag.style.cssText='position:absolute;left:0;top:-24px;background:#101418;color:#fff;border:1px solid #ff3b30;font:12px/20px sans-serif;padding:0 3px;white-space:nowrap';overlay.append(tag);document.body.append(overlay); + } + }); + await page.screenshot({path:path.join(output,'change-boundary.png'),caret:'initial'}); + await page.evaluate(()=>document.querySelectorAll('[data-proof-boundary]').forEach(e=>e.remove())); + assert.equal(await page.content(),guardDOM); + const results=[]; + for (const css of ['.naComposerInput { min-width:0 }','.naMain,.naThread { min-width:0 }','.naMain,.naThread,.naComposerInput { min-width:0 }']) { + const style=await page.addStyleTag({content:css}); + results.push(await page.evaluate(css=>({css,overflow:document.documentElement.scrollWidth-innerWidth,boxes:[...document.querySelectorAll('.naThread,.naViewport,.naRecovery,.naComposer,.naComposerInput')].map(e=>({class:e.className,width:e.getBoundingClientRect().width,right:e.getBoundingClientRect().right}))}),css)); + await style.evaluate(e=>e.remove()); + } + await writeFile(path.join(output,'intrinsic-width-diagnosis.json'),JSON.stringify(results,null,2)); + throw new Error('DIAGNOSTIC COMPLETE: no source mutation; see intrinsic-width-diagnosis.json'); + check(changedBounds.every(b => b.left >= -1 && b.right <= width + 1 && b.overflow <= 1), kind + ' enlarged recovery and composer fit ' + width); + check(await retry.evaluate(e => { const r = e.getBoundingClientRect(); const hit = document.elementFromPoint(r.x + r.width / 2, r.y + r.height / 2); return r.y >= 0 && r.bottom <= innerHeight && (hit === e || e.contains(hit)); }), kind + ' enlarged Retry paints visibly without overlay obstruction ' + width); + await page.evaluate(() => window.proofRestoreText()); + } + if ([390, 1024, 1920].includes(width)) { await retry.focus(); await page.keyboard.press('Enter'); } else await retry.dblclick(); + await idleWithCards(12); cell.attempts = await page.evaluate(() => window.proofAttempts); + check(cell.attempts.length === 3, kind + ' second explicit Retry recovers once despite repeated activation ' + width); + check(cell.attempts.every(a => typeof a.id === 'string' && a.id.length > 0) && new Set(cell.attempts.map(a => a.id)).size === 3, kind + ' SDK creates a fresh response identity for both retries ' + width); + check(new Set(cell.attempts.map(a => a.parentId)).size === 1, kind + ' retries retain the same user parent ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' recovery retains earlier evidence ' + width); + check(await page.getByRole('alert').count() === 0, kind + ' recovered response removes failure notice ' + width); + await snapshot(kind + '-recovered-' + width); + if (width === 390) { + const begin = Date.now(); for (let i = 0; i < 12; i++) { await send(question); await idleWithCards(4 * (4 + i)); } + cell.accumulation = { additionalTurns: 12, totalResponses: 15, toolCards: 60, elapsedMs: Date.now() - begin }; + await snapshot(kind + '-accumulated-' + width); + } + await page.reload({ waitUntil: 'domcontentloaded' }); await page.locator('textarea[name="input"]').waitFor(); check(await page.locator(tool).count() === 0, kind + ' reload resets browser session honestly ' + width); + await snapshot(kind + '-reloaded-' + width); + check(cell.errors.every(e => e.includes('PROOF FIXTURE: second tool failed')), kind + ' only the intentional adapter fault reaches page errors ' + width); + cell.checksEnd = report.checks.length; cell.capturesEnd = report.captures.length; await ctx.close(); + } + await server.close(); server = null; + } + check(report.requests.every(r => r.method === 'GET'), 'no browser writes or provider requests'); + report.sourceAfter = await hashFiles(source, sourceFiles); report.consumerAfter = await hashFiles(consumer, consumerFiles); assert.deepEqual(report.sourceAfter, report.sourceBefore); assert.deepEqual(report.consumerAfter, report.consumerBefore); + report.passed = true; +} catch (error) { + report.error = String(error.stack ?? error); process.exitCode = 1; + if (page && !page.isClosed()) { await writeFile(path.join(output, 'failure.html'), await page.content()); await page.screenshot({ path: path.join(output, 'failure.png'), caret: 'initial' }).catch(() => {}); } +} finally { + await browser?.close(); await server?.close(); report.finishedAt = new Date().toISOString(); await writeFile(path.join(output, 'report.json'), JSON.stringify(report, null, 2) + '\n'); console.log(JSON.stringify({ output, passed: report.passed, checks: report.checks.length, captures: report.captures.length, error: report.error })); +} diff --git a/evidence/current-consumer-20260905/operator/diagnose-d3-keyboard-scroll.mjs.txt b/evidence/current-consumer-20260905/operator/diagnose-d3-keyboard-scroll.mjs.txt new file mode 100644 index 0000000..08a5dec --- /dev/null +++ b/evidence/current-consumer-20260905/operator/diagnose-d3-keyboard-scroll.mjs.txt @@ -0,0 +1,182 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import { createServer as portProbe } from 'node:net'; +import path from 'node:path'; +import { chromium } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/playwright/index.mjs'; +import { createServer } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/node/index.js'; + +const source = 'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'; +const consumer = path.resolve(process.argv[2] ?? ''); +const output = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide a real installed generated app and NEW output directory'); +await mkdir(output, { recursive: false }); +const sha = bytes => createHash('sha256').update(bytes).digest('hex'); +const sourceFiles = execFileSync('git', ['ls-files', '-z'], { cwd: source, env: { ...process.env, GIT_OPTIONAL_LOCKS: '0' } }).toString().split('\0').filter(f => f && !path.basename(f).startsWith('.env')); +sourceFiles.push('e2e/current-consumer-proof.mjs', 'e2e/current-consumer-recovery-proof.mjs', 'examples/apps/chat-ui/template/package-lock.json'); +const consumerFiles = ['package.json', 'package-lock.json', 'index.html', 'vite.config.mjs', 'src/main.jsx', 'src/styles.css', 'src/nodeagent-chat/NodeAgentChatApp.jsx', 'src/nodeagent-chat/nodeAgentLocalAdapter.js', 'src/nodeagent-chat/toolUIs.jsx']; +const hashFiles = async (root, files) => Object.fromEntries(await Promise.all(files.map(async f => [f, sha(await readFile(path.join(root, f)))]))); +const report = { namedProof: 'NODEAGENT-RESPONSE-RECOVERY-01', startedAt: new Date().toISOString(), sourceBefore: await hashFiles(source, sourceFiles), consumerBefore: await hashFiles(consumer, consumerFiles), passed: false, checks: [], cells: [], captures: [], requests: [], grade: null }; +const check = (value, name) => { report.checks.push({ name, passed: Boolean(value) }); assert.ok(value, name); }; +let browser, server, page; +let kind, tool, bubble, composer; +const surfaces = ['source']; +async function start(root) { + const probe = portProbe(); await new Promise(resolve => probe.listen(0, '127.0.0.1', resolve)); const port = probe.address().port; await new Promise(resolve => probe.close(resolve)); + server = await createServer({ root, envDir: false, server: { host: '127.0.0.1', port, strictPort: true, open: false } }); await server.listen(); return 'http://127.0.0.1:' + port; +} +async function snapshot(name, target = composer) { + if (target) await page.locator(target).scrollIntoViewIfNeeded(); + let prior = await page.content(); + for (let i = 0; i < 16; i++) { await page.waitForTimeout(200); const current = await page.content(); if (current === prior) break; prior = current; } + await page.evaluate(() => new Promise(resolve => requestAnimationFrame(() => requestAnimationFrame(resolve)))); + const html = await page.content(); + await writeFile(path.join(output, name + '.before.html'), html); + await page.screenshot({ path: path.join(output, name + '.png'), caret: 'initial' }); + const after = await page.content(); await writeFile(path.join(output, name + '.html'), after); + check(after === html, name + ' exact DOM during settled screenshot'); + const state = await page.evaluate(() => ({ layout: [...document.querySelectorAll('.na-recovery,.naRecovery,.na-footer,.naFooter,.na-viewport,.naViewport')].map(e=>({class:e.className,scrollTop:e.scrollTop,scrollHeight:e.scrollHeight,clientHeight:e.clientHeight,box:JSON.parse(JSON.stringify(e.getBoundingClientRect()))})), viewport: { width: innerWidth, height: innerHeight }, scroll: { x: scrollX, y: scrollY }, text: document.body.innerText, overflow: document.documentElement.scrollWidth - innerWidth, focus: { tag: document.activeElement?.tagName, label: document.activeElement?.getAttribute('aria-label') }, buttons: [...document.querySelectorAll('button')].map(b => ({ label: b.getAttribute('aria-label') || b.textContent, disabled: b.disabled })) })); + await writeFile(path.join(output, name + '.json'), JSON.stringify(state, null, 2) + '\n'); + report.captures.push({ name, pngSha256: sha(await readFile(path.join(output, name + '.png'))), state }); return state; +} +async function send(question) { + await page.locator('textarea[name="input"]').fill(question); + await page.getByRole('button', { name: 'Send', exact: true }).waitFor(); + await page.waitForFunction(() => document.querySelector('button[aria-label="Send"]')?.disabled === false); + await page.locator('textarea[name="input"]').press('Enter'); +} +async function idleWithCards(count) { + await page.waitForFunction(({ tool, count }) => document.querySelectorAll(tool).length === count && !document.querySelector('button[aria-label="Stop response"]'), { tool, count }); +} +async function graph() { + if (kind === 'generated') return null; + return page.evaluate(async () => { const m = await import('/src/features/node-agent/graph/agentGraphSession.ts'); return m.graphSession.getSnapshot(); }); +} +async function installPartialFailure() { + await page.evaluate(async ({ modulePath, key }) => { + const module = await import(modulePath), original = module[key].run; + window.proofAttempts = []; + module[key].run = async function* (args) { + if (window.proofAttempts.length >= 64) throw new Error('PROOF FIXTURE: attempt bound exceeded'); + const attempt = { id: args.unstable_assistantMessageId, parentId: args.unstable_parentId, injectedFailure: window.proofAttempts.length < 2 }; + window.proofAttempts.push(attempt); + window.proofCurrentMessage = args.unstable_getMessage; + for await (const frame of original(args)) { + yield frame; + const tools = frame.content.filter(p => p.type === 'tool-call'); + if (attempt.injectedFailure && tools.some(p => p.result) && tools.some(p => !p.result)) throw new Error('PROOF FIXTURE: second tool failed after the first actual result.'); + } + }; + }, { modulePath: kind === 'generated' ? '/src/nodeagent-chat/nodeAgentLocalAdapter.js' : '/src/features/node-agent/runtime/nodeAgentChatAdapter.ts', key: kind === 'generated' ? 'nodeAgentLocalAdapter' : 'nodeAgentChatAdapter' }); +} +try { + browser = await chromium.launch({ headless: true }); report.browser = browser.version(); report.node = process.version; + for (kind of surfaces) { + const base = await start(kind === 'generated' ? consumer : source); + tool = kind === 'generated' ? '.naTool' : '.na-tool'; bubble = kind === 'generated' ? '.naMsgAssistant .naBubble' : '.na-msg-assistant .na-bubble'; composer = kind === 'generated' ? '.naComposer' : '.na-composer'; + for (const width of [390]) { + const ctx = await browser.newContext({ viewport: { width, height: width <= 390 ? 844 : 960 }, colorScheme: 'dark' }); + await ctx.route('**/*', route => { const request = route.request(), url = new URL(request.url()); if (report.requests.length < 2000) report.requests.push({ origin: url.origin, path: url.pathname, method: request.method() }); return url.origin === base || ['fonts.googleapis.com', 'fonts.gstatic.com'].includes(url.hostname) ? route.continue() : route.abort(); }); + page = await ctx.newPage(); page.setDefaultTimeout(16000); + const cell = { kind, width, errors: [], checksStart: report.checks.length, capturesStart: report.captures.length }; report.cells.push(cell); page.on('pageerror', error => cell.errors.push(error.message)); + await page.goto(base, { waitUntil: 'domcontentloaded', timeout: 45000 }); await page.locator('textarea[name="input"]').waitFor(); + const question = kind === 'generated' ? 'Does the local NodeAgent wedge hold for an MVP?' : 'Does our wedge hold versus Acme, and does the runway model survive 18 months?'; + await snapshot(kind + '-empty-' + width); + await send(question); await idleWithCards(4); await page.waitForTimeout(700); + const earlier = await page.locator(bubble).first().innerText(); const graphBefore = await graph(); + await send(question); await page.locator(tool + '[data-running="true"]').first().waitFor(); + const stop = page.getByRole('button', { name: 'Stop response', exact: true }); const began = Date.now(); + if ([390, 1024, 1920].includes(width)) { await stop.focus(); await page.keyboard.press('Enter'); cell.stopInput = 'keyboard'; } else { await stop.click(); cell.stopInput = 'pointer'; } + await page.getByText('Stopped this response. Completed work is kept.', { exact: true }).waitFor(); cell.stopLatencyMs = Date.now() - began; + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('stopped')), kind + ' native incomplete tool shows stopped ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' Stop preserves earlier completed response ' + width); + const stoppedText = await page.locator(bubble).last().innerText(), stoppedGraph = await graph(); + check(!stoppedText.includes('Done.'), kind + ' stopped response has no fake Done ' + width); + await page.waitForTimeout(750); check(await page.locator(bubble).last().innerText() === stoppedText, kind + ' stopped response remains stable ' + width); assert.deepEqual(await graph(), stoppedGraph); assert.deepEqual(stoppedGraph, graphBefore); + await snapshot(kind + '-stopped-' + width); + check(await page.locator('textarea[name="input"]').evaluate(e => e === document.activeElement), kind + ' Stop retains keyboard continuation focus ' + width); + await page.getByRole('button', { name: 'Retry response', exact: true }).click(); await idleWithCards(8); check(await page.locator(bubble).count() === 2, kind + ' stopped Retry replaces only current response ' + width); + await installPartialFailure(); await send(question); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + check(await page.locator(tool + '[data-interrupted="true"]').last().innerText().then(t => t.includes('failed')), kind + ' partial failure names failed tool ' + width); + await page.waitForTimeout(750); check(await page.evaluate(() => window.proofAttempts.length === 1), kind + ' failed response does not retry automatically ' + width); + await snapshot(kind + '-error-' + width); + const retry = page.getByRole('button', { name: 'Retry response', exact: true }); + if ([390, 1024, 1920].includes(width)) { await retry.focus(); await page.keyboard.press('Enter'); } else await retry.dblclick(); + await page.waitForFunction(() => window.proofAttempts.length >= 2 && window.proofCurrentMessage().status?.type === 'incomplete'); + await page.getByRole('alert').filter({ hasText: 'This response failed.' }).waitFor(); + await page.waitForTimeout(750); + check(await page.evaluate(() => window.proofAttempts.length === 2), kind + ' first explicit Retry fails once with no automatic or duplicate retry ' + width); + await snapshot(kind + '-error-again-' + width); + if (width === 390) { + cell.enlargement = await page.evaluate(() => { + const targets = [...document.querySelectorAll('*')].filter(e => e.matches('textarea,input,button') || [...e.childNodes].some(n => n.nodeType === 3 && n.textContent.trim())); + const originals = targets.map(e => ({ e, style: e.getAttribute('style'), size: parseFloat(getComputedStyle(e).fontSize) })); + window.proofRestoreText = () => originals.forEach(({ e, style }) => style === null ? e.removeAttribute('style') : e.setAttribute('style', style)); + originals.forEach(({ e, size }) => e.style.fontSize = size * 2 + 'px'); + return { method: 'Test-only original computed text sizes sampled before any mutation, then doubled; not operating-system zoom.', elements: originals.length }; + }); + await page.locator('textarea[name="input"]').focus(); + await page.keyboard.press('Shift+Tab'); + check(await retry.evaluate(e => e === document.activeElement), kind + ' enlarged Retry reachable from composer by keyboard ' + width); + const enlarged = await snapshot(kind + '-error-text-200-' + width, null); + cell.enlargement.documentOverflow = enlarged.overflow; + const changedBounds = await page.locator('.na-recovery,.naRecovery,' + composer).evaluateAll(es => es.map(e => ({ class: e.className, left: e.getBoundingClientRect().left, right: e.getBoundingClientRect().right, overflow: e.scrollWidth - e.clientWidth }))); + cell.enlargement.changedBounds = changedBounds; + + const guardDOM = await page.content(); + await page.evaluate(() => { + for (const [selector,label] of [['.na-recovery','CHANGE B: recovery'],['.na-composer','CHANGE A: composer']]) { + const r=document.querySelector(selector).getBoundingClientRect(), overlay=document.createElement('div');overlay.setAttribute('data-proof-boundary','true'); + overlay.style.cssText=`position:fixed;pointer-events:none;z-index:999999;box-sizing:border-box;left:${r.left}px;top:${r.top}px;width:${r.width}px;height:${r.height}px;border:3px solid #ff3b30`; + const tag=document.createElement('span');tag.textContent=label;tag.style.cssText='position:absolute;left:0;top:-24px;background:#101418;color:#fff;border:1px solid #ff3b30;font:12px/20px sans-serif;padding:0 3px;white-space:nowrap';overlay.append(tag);document.body.append(overlay); + } + }); + await page.screenshot({path:path.join(output,'change-boundary.png'),caret:'initial'}); + await page.evaluate(()=>document.querySelectorAll('[data-proof-boundary]').forEach(e=>e.remove())); + assert.equal(await page.content(),guardDOM); + + await page.evaluate(() => { + document.querySelector('.na-recovery button').addEventListener('focus',event=>{ + if(event.currentTarget.matches(':focus-visible')) event.currentTarget.parentElement.scrollIntoView({block:'start'}); + }); + }); + await page.locator('textarea[name="input"]').focus(); await page.keyboard.press('Shift+Tab'); + const adjusted=await snapshot('diagnostic-keyboard-recovery-region',null); + const hit=await retry.evaluate(e=>{const r=e.getBoundingClientRect(),hit=document.elementFromPoint(r.x+r.width/2,r.y+r.height/2);return {visible:hit===e||e.contains(hit),top:r.top,bottom:r.bottom,focused:e===document.activeElement,focusVisible:e.matches(':focus-visible')};}); + await writeFile(path.join(output,'keyboard-scroll-diagnosis.json'),JSON.stringify({hit,layout:adjusted.layout,sourceChange:false},null,2)); + throw new Error('DIAGNOSTIC COMPLETE: keyboard recovery-region scroll only; source untouched'); + check(changedBounds.every(b => b.left >= -1 && b.right <= width + 1 && b.overflow <= 1), kind + ' enlarged recovery and composer fit ' + width); + check(await retry.evaluate(e => { const r = e.getBoundingClientRect(); const hit = document.elementFromPoint(r.x + r.width / 2, r.y + r.height / 2); return r.y >= 0 && r.bottom <= innerHeight && (hit === e || e.contains(hit)); }), kind + ' enlarged Retry paints visibly without overlay obstruction ' + width); + await page.evaluate(() => window.proofRestoreText()); + } + if ([390, 1024, 1920].includes(width)) { await retry.focus(); await page.keyboard.press('Enter'); } else await retry.dblclick(); + await idleWithCards(12); cell.attempts = await page.evaluate(() => window.proofAttempts); + check(cell.attempts.length === 3, kind + ' second explicit Retry recovers once despite repeated activation ' + width); + check(cell.attempts.every(a => typeof a.id === 'string' && a.id.length > 0) && new Set(cell.attempts.map(a => a.id)).size === 3, kind + ' SDK creates a fresh response identity for both retries ' + width); + check(new Set(cell.attempts.map(a => a.parentId)).size === 1, kind + ' retries retain the same user parent ' + width); + check(await page.locator(bubble).first().innerText() === earlier, kind + ' recovery retains earlier evidence ' + width); + check(await page.getByRole('alert').count() === 0, kind + ' recovered response removes failure notice ' + width); + await snapshot(kind + '-recovered-' + width); + if (width === 390) { + const begin = Date.now(); for (let i = 0; i < 12; i++) { await send(question); await idleWithCards(4 * (4 + i)); } + cell.accumulation = { additionalTurns: 12, totalResponses: 15, toolCards: 60, elapsedMs: Date.now() - begin }; + await snapshot(kind + '-accumulated-' + width); + } + await page.reload({ waitUntil: 'domcontentloaded' }); await page.locator('textarea[name="input"]').waitFor(); check(await page.locator(tool).count() === 0, kind + ' reload resets browser session honestly ' + width); + await snapshot(kind + '-reloaded-' + width); + check(cell.errors.every(e => e.includes('PROOF FIXTURE: second tool failed')), kind + ' only the intentional adapter fault reaches page errors ' + width); + cell.checksEnd = report.checks.length; cell.capturesEnd = report.captures.length; await ctx.close(); + } + await server.close(); server = null; + } + check(report.requests.every(r => r.method === 'GET'), 'no browser writes or provider requests'); + report.sourceAfter = await hashFiles(source, sourceFiles); report.consumerAfter = await hashFiles(consumer, consumerFiles); assert.deepEqual(report.sourceAfter, report.sourceBefore); assert.deepEqual(report.consumerAfter, report.consumerBefore); + report.passed = true; +} catch (error) { + report.error = String(error.stack ?? error); process.exitCode = 1; + if (page && !page.isClosed()) { await writeFile(path.join(output, 'failure.html'), await page.content()); await page.screenshot({ path: path.join(output, 'failure.png'), caret: 'initial' }).catch(() => {}); } +} finally { + await browser?.close(); await server?.close(); report.finishedAt = new Date().toISOString(); await writeFile(path.join(output, 'report.json'), JSON.stringify(report, null, 2) + '\n'); console.log(JSON.stringify({ output, passed: report.passed, checks: report.checks.length, captures: report.captures.length, error: report.error })); +} diff --git a/evidence/current-consumer-20260905/operator/diagnose-dependency-comparison.mjs.txt b/evidence/current-consumer-20260905/operator/diagnose-dependency-comparison.mjs.txt new file mode 100644 index 0000000..54007e5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/diagnose-dependency-comparison.mjs.txt @@ -0,0 +1,19 @@ +import { createServer } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/node/index.js'; +import { chromium } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/playwright/index.mjs'; +import { createServer as portServer } from 'node:net'; +import { mkdir,readFile,writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import assert from 'node:assert/strict'; +const out=path.join(import.meta.dirname,'first-submit-dependency-comparison-01'); await mkdir(out); const sha=b=>createHash('sha256').update(b).digest('hex'); +const roots={generated:'D:/ProjectRecovery/NodeAgent current consumer 20260905/Generated Chat app',source:'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'}; +const files=execFileSync('git',['ls-files','-z'],{cwd:roots.source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(p=>p&&!path.basename(p).startsWith('.env')); +const hashes=async()=>Object.fromEntries(await Promise.all(files.map(async p=>[p,sha(await readFile(path.join(roots.source,p)))]))); +const report={causalOnly:true,dependencyOverride:'Canonical installed assistant-ui/react 0.14.14 + React 19.2.7 via diagnostic Vite aliases; generated files and installed package remain unchanged. This is not a repaired installed consumer.',startedAt:new Date().toISOString(),sourceBefore:await hashes(),cells:[],requests:[],grade:null};let browser,app; +async function shot(page,name){await page.evaluate(()=>new Promise(r=>requestAnimationFrame(()=>requestAnimationFrame(r))));const html=await page.content();await page.screenshot({path:path.join(out,name+'.png'),caret:'initial'});assert.equal(await page.content(),html);await writeFile(path.join(out,name+'.html'),html);return {name,pngSha256:sha(await readFile(path.join(out,name+'.png'))),state:await page.evaluate(()=>({text:document.body.innerText,scrollWidth:document.documentElement.scrollWidth,width:innerWidth,buttons:[...document.querySelectorAll('button')].map(b=>({label:b.getAttribute('aria-label')||b.textContent,disabled:b.disabled}))}))};} +async function boundary(page,name,selectors){const html=await page.content();const boxes=await page.evaluate(selectors=>selectors.map((s,i)=>{const el=document.querySelector(s.selector); if(!el)throw new Error('Missing '+s.selector);const b=el.getBoundingClientRect();const box=document.createElement('div');box.dataset.boundaryProof='true';Object.assign(box.style,{position:'fixed',left:b.left+'px',top:b.top+'px',width:b.width+'px',height:b.height+'px',boxSizing:'border-box',border:'3px solid #d31372',zIndex:2147483646,pointerEvents:'none'});const label=document.createElement('span');label.textContent='CHANGE '+String.fromCharCode(65+i)+' / '+s.title;Object.assign(label.style,{position:'absolute',left:'0',bottom:'100%',font:'bold 12px sans-serif',padding:'4px',background:'#971352',color:'white',whiteSpace:'nowrap'});if(b.top<32){label.style.bottom='auto';label.style.top='0';}box.append(label);document.body.append(box);return {selector:s.selector,x:b.x,y:b.y,width:b.width,height:b.height};}),selectors);await page.screenshot({path:path.join(out,name+'-change-boundary.png'),caret:'initial'});await page.evaluate(()=>document.querySelectorAll('[data-boundary-proof]').forEach(x=>x.remove()));assert.equal(await page.content(),html);await writeFile(path.join(out,name+'-change-boundary.md'),`# Actual before boundary\n\nRoute: ${page.url()}\nViewport: ${JSON.stringify(page.viewportSize())}\nTheme: light; anonymous local generated/current source.\nTrigger: ${name}\n\n${JSON.stringify(boxes,null,2)}\n\nFirst submission must preserve the shell, show inspectable progress and yield four scripted tool cards. Current dependency-selected generated app throws before its first tool card. Subsequent D3 Stop/error/retry inspection is blocked on that app. The current source comparison uses the actual locked source without modification. Protected neighbors: branding, no-key disclosure, tool facts, graph ownership, prior messages and separate SQLite durable proof. No provider request or credential is used.\n`);return {name,boxes,pngSha256:sha(await readFile(path.join(out,name+'-change-boundary.png')))};} +try{browser=await chromium.launch({headless:true});for(const [kind,root] of Object.entries(roots).filter(([kind])=>kind==='generated')){const probe=portServer();await new Promise(r=>probe.listen(0,'127.0.0.1',r));const port=probe.address().port;await new Promise(r=>probe.close(r));app=await createServer({root,envDir:false,resolve:{alias:[['@assistant-ui/react','@assistant-ui/react/dist/index.js'],['react','react/index.js'],['react/jsx-runtime','react/jsx-runtime.js'],['react/jsx-dev-runtime','react/jsx-dev-runtime.js'],['react-dom','react-dom/index.js'],['react-dom/client','react-dom/client.js']].map(([find,file])=>({find:new RegExp('^'+find+'$'),replacement:roots.source+'/node_modules/'+file}))},server:{host:'127.0.0.1',port,strictPort:true,open:false}});await app.listen();const base='http://127.0.0.1:'+port; +for(const width of [390,1440]){const ctx=await browser.newContext({viewport:{width,height:960}});await ctx.route('**/*',route=>{const r=route.request();if(report.requests.length<300)report.requests.push({url:r.url().split('?')[0],method:r.method()});return new URL(r.url()).origin===base?route.continue():route.abort();});const page=await ctx.newPage();page.setDefaultTimeout(15000);const cell={kind,width,errors:[],captures:[]};report.cells.push(cell);page.on('pageerror',e=>cell.errors.push({message:e.message,stack:e.stack}));await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor();cell.captures.push(await shot(page,kind+'-empty-'+width));cell.captures.push(await boundary(page,kind+'-empty-'+width,[{selector:kind==='generated'?'.naComposer':'.na-composer',title:'Run controls'}]));await page.locator('textarea[name="input"]').fill('Does the local no-key MVP path work?');await page.locator('textarea[name="input"]').press('Enter');await page.waitForTimeout(3500);cell.captures.push(await shot(page,kind+'-first-submit-'+width));cell.captures.push(await boundary(page,kind+'-first-submit-'+width,[{selector:kind==='generated'?'body':'.na-composer',title:kind==='generated'?'Failed chat surface':'Run controls'}]));await ctx.close();}await app.close();app=null;} +report.sourceAfter=await hashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);report.completed=true; +}catch(error){report.error=error.stack;process.exitCode=1;}finally{await app?.close();await browser?.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(out,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({completed:report.completed,error:report.error,cells:report.cells.map(c=>({kind:c.kind,width:c.width,errors:c.errors.map(e=>e.message)}))}));} diff --git a/evidence/current-consumer-20260905/operator/diagnose-first-submit.mjs.txt b/evidence/current-consumer-20260905/operator/diagnose-first-submit.mjs.txt new file mode 100644 index 0000000..6a763dd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/diagnose-first-submit.mjs.txt @@ -0,0 +1,19 @@ +import { createServer } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/node/index.js'; +import { chromium } from 'file:///D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/playwright/index.mjs'; +import { createServer as portServer } from 'node:net'; +import { mkdir,readFile,writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import assert from 'node:assert/strict'; +const out=path.join(import.meta.dirname,'first-submit-diagnosis-01'); await mkdir(out); const sha=b=>createHash('sha256').update(b).digest('hex'); +const roots={generated:'D:/ProjectRecovery/NodeAgent current consumer 20260905/Generated Chat app',source:'D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905'}; +const files=execFileSync('git',['ls-files','-z'],{cwd:roots.source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(p=>p&&!path.basename(p).startsWith('.env')); +const hashes=async()=>Object.fromEntries(await Promise.all(files.map(async p=>[p,sha(await readFile(path.join(roots.source,p)))]))); +const report={startedAt:new Date().toISOString(),sourceBefore:await hashes(),cells:[],requests:[],grade:null};let browser,app; +async function shot(page,name){await page.evaluate(()=>new Promise(r=>requestAnimationFrame(()=>requestAnimationFrame(r))));const html=await page.content();await page.screenshot({path:path.join(out,name+'.png'),caret:'initial'});assert.equal(await page.content(),html);await writeFile(path.join(out,name+'.html'),html);return {name,pngSha256:sha(await readFile(path.join(out,name+'.png'))),state:await page.evaluate(()=>({text:document.body.innerText,scrollWidth:document.documentElement.scrollWidth,width:innerWidth,buttons:[...document.querySelectorAll('button')].map(b=>({label:b.getAttribute('aria-label')||b.textContent,disabled:b.disabled}))}))};} +async function boundary(page,name,selectors){const html=await page.content();const boxes=await page.evaluate(selectors=>selectors.map((s,i)=>{const el=document.querySelector(s.selector); if(!el)throw new Error('Missing '+s.selector);const b=el.getBoundingClientRect();const box=document.createElement('div');box.dataset.boundaryProof='true';Object.assign(box.style,{position:'fixed',left:b.left+'px',top:b.top+'px',width:b.width+'px',height:b.height+'px',boxSizing:'border-box',border:'3px solid #d31372',zIndex:2147483646,pointerEvents:'none'});const label=document.createElement('span');label.textContent='CHANGE '+String.fromCharCode(65+i)+' / '+s.title;Object.assign(label.style,{position:'absolute',left:'0',bottom:'100%',font:'bold 12px sans-serif',padding:'4px',background:'#971352',color:'white',whiteSpace:'nowrap'});if(b.top<32){label.style.bottom='auto';label.style.top='0';}box.append(label);document.body.append(box);return {selector:s.selector,x:b.x,y:b.y,width:b.width,height:b.height};}),selectors);await page.screenshot({path:path.join(out,name+'-change-boundary.png'),caret:'initial'});await page.evaluate(()=>document.querySelectorAll('[data-boundary-proof]').forEach(x=>x.remove()));assert.equal(await page.content(),html);await writeFile(path.join(out,name+'-change-boundary.md'),`# Actual before boundary\n\nRoute: ${page.url()}\nViewport: ${JSON.stringify(page.viewportSize())}\nTheme: light; anonymous local generated/current source.\nTrigger: ${name}\n\n${JSON.stringify(boxes,null,2)}\n\nFirst submission must preserve the shell, show inspectable progress and yield four scripted tool cards. Current dependency-selected generated app throws before its first tool card. Subsequent D3 Stop/error/retry inspection is blocked on that app. The current source comparison uses the actual locked source without modification. Protected neighbors: branding, no-key disclosure, tool facts, graph ownership, prior messages and separate SQLite durable proof. No provider request or credential is used.\n`);return {name,boxes,pngSha256:sha(await readFile(path.join(out,name+'-change-boundary.png')))};} +try{browser=await chromium.launch({headless:true});for(const [kind,root] of Object.entries(roots)){const probe=portServer();await new Promise(r=>probe.listen(0,'127.0.0.1',r));const port=probe.address().port;await new Promise(r=>probe.close(r));app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}});await app.listen();const base='http://127.0.0.1:'+port; +for(const width of [390,1440]){const ctx=await browser.newContext({viewport:{width,height:960}});await ctx.route('**/*',route=>{const r=route.request();if(report.requests.length<300)report.requests.push({url:r.url().split('?')[0],method:r.method()});return new URL(r.url()).origin===base?route.continue():route.abort();});const page=await ctx.newPage();page.setDefaultTimeout(15000);const cell={kind,width,errors:[],captures:[]};report.cells.push(cell);page.on('pageerror',e=>cell.errors.push({message:e.message,stack:e.stack}));await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor();cell.captures.push(await shot(page,kind+'-empty-'+width));cell.captures.push(await boundary(page,kind+'-empty-'+width,[{selector:kind==='generated'?'.naComposer':'.na-composer',title:'Run controls'}]));await page.locator('textarea[name="input"]').fill('Does the local no-key MVP path work?');await page.locator('textarea[name="input"]').press('Enter');await page.waitForTimeout(3500);cell.captures.push(await shot(page,kind+'-first-submit-'+width));cell.captures.push(await boundary(page,kind+'-first-submit-'+width,[{selector:kind==='generated'?'body':'.na-composer',title:kind==='generated'?'Failed chat surface':'Run controls'}]));await ctx.close();}await app.close();app=null;} +report.sourceAfter=await hashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);report.completed=true; +}catch(error){report.error=error.stack;process.exitCode=1;}finally{await app?.close();await browser?.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(out,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({completed:report.completed,error:report.error,cells:report.cells.map(c=>({kind:c.kind,width:c.width,errors:c.errors.map(e=>e.message)}))}));} diff --git a/evidence/current-consumer-20260905/operator/durable.json b/evidence/current-consumer-20260905/operator/durable.json new file mode 100644 index 0000000..0e59030 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/durable.json @@ -0,0 +1,36 @@ +{ + "ok": true, + "jobId": "job_nodeagent_demo_wedge_runway", + "frameId": "rf_nodeagent_demo_wedge_runway", + "first": { + "status": "completed", + "jobStatus": "completed", + "receiptStatus": "completed" + }, + "replay": { + "status": "replayed", + "replayed": true, + "sameFrameId": true + }, + "journal": { + "entryCount": 1, + "keys": [ + "job_nodeagent_demo_wedge_runway:rf_nodeagent_demo_wedge_runway:runReasoningFrame" + ] + }, + "lease": { + "blockedWhileActive": true, + "reclaimedAfterExpiry": true, + "fencingAdvanced": true + }, + "runwayMonths": 18, + "verification": { + "status": "completed", + "reason": "Frame completed.", + "evidenceState": { + "confidence": "high", + "citationCount": 3, + "winnerSourceId": "src_bench" + } + } +} diff --git a/evidence/current-consumer-20260905/operator/durable.stderr b/evidence/current-consumer-20260905/operator/durable.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/durable.stdout b/evidence/current-consumer-20260905/operator/durable.stdout new file mode 100644 index 0000000..56d94bb --- /dev/null +++ b/evidence/current-consumer-20260905/operator/durable.stdout @@ -0,0 +1 @@ +nodeagent durable smoke: PASS frame=rf_nodeagent_demo_wedge_runway job=job_nodeagent_demo_wedge_runway replay=replayed diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.html b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.html new file mode 100644 index 0000000..d5b08d0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.png new file mode 100644 index 0000000..61c2c42 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/before.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.md.txt b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.md.txt new file mode 100644 index 0000000..eaa6b58 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.md.txt @@ -0,0 +1,15 @@ +# UI change boundary + +Route: installed generated Chat app with the tested template lock, original loopback URL in report.json. +Viewport: 1440 x 960. +Theme: actual product dark theme; anonymous local session. +Trigger: error. +Fixture: Does the local NodeAgent wedge hold for an MVP? followed by the explicit PROOF FIXTURE failure question from the raw report. The running capture pauses the actual adapter iterator after its actual first tool-call yield; it changes no source or payload and exists only to settle text animation. The error capture uses an explicitly labelled in-memory adapter throw, not an external provider failure. + +CHANGE A / Run controls: .naComposer. Current composer disables Send while running and has no Stop. Expected: show supported Stop while running; stopping presentation must never imply undoing already-computed local work or prior writes. Empty/populated keep ordinary keyboard submission and existing no-key disclosure. + +CHANGE B / Current run response: last matching .naMsgAssistant .naBubble. Current failed turn leaves its last partial text visible without a visible error or Retry; earlier four cards remain. Expected: explicit failed/stopped status and a supported retry action, preserving previous turns and avoiding fake success. Error text is a safe constant; exact raw exception remains in the raw fixture proof. Long messages/statuses wrap at named widths and enlarged text. + +Protected neighbors: brand/header, suggestions, prior messages and four tool facts, existing graph traversal/assertion semantics, immutable source fixture results, no-key policy and separate SQLite persistence. These regions are not a license to change provider ownership or implement Pi. Browser reload resets the conversation; durable/frame proof belongs to a separate library path. Grades stay null. + +Before source SHA bindings: d3-generated-boundary-02/report.json. Exact screenshot bytes are copied, not re-rendered. D3 implementation requires separate root review after the installed-consumer dependency repair passes. The historical generated error boundary outside the viewport is retained under d3-generated-boundary-01; final captures scroll the existing composer into view before capture. The final settled capture preserves exact DOM before/after overlays. diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.png new file mode 100644 index 0000000..3a9fb85 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-1440/change-boundary.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.html b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.html new file mode 100644 index 0000000..777feb5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.png new file mode 100644 index 0000000..71d50d2 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/before.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.md.txt b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.md.txt new file mode 100644 index 0000000..31583da --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.md.txt @@ -0,0 +1,15 @@ +# UI change boundary + +Route: installed generated Chat app with the tested template lock, original loopback URL in report.json. +Viewport: 390 x 960. +Theme: actual product dark theme; anonymous local session. +Trigger: error. +Fixture: Does the local NodeAgent wedge hold for an MVP? followed by the explicit PROOF FIXTURE failure question from the raw report. The running capture pauses the actual adapter iterator after its actual first tool-call yield; it changes no source or payload and exists only to settle text animation. The error capture uses an explicitly labelled in-memory adapter throw, not an external provider failure. + +CHANGE A / Run controls: .naComposer. Current composer disables Send while running and has no Stop. Expected: show supported Stop while running; stopping presentation must never imply undoing already-computed local work or prior writes. Empty/populated keep ordinary keyboard submission and existing no-key disclosure. + +CHANGE B / Current run response: last matching .naMsgAssistant .naBubble. Current failed turn leaves its last partial text visible without a visible error or Retry; earlier four cards remain. Expected: explicit failed/stopped status and a supported retry action, preserving previous turns and avoiding fake success. Error text is a safe constant; exact raw exception remains in the raw fixture proof. Long messages/statuses wrap at named widths and enlarged text. + +Protected neighbors: brand/header, suggestions, prior messages and four tool facts, existing graph traversal/assertion semantics, immutable source fixture results, no-key policy and separate SQLite persistence. These regions are not a license to change provider ownership or implement Pi. Browser reload resets the conversation; durable/frame proof belongs to a separate library path. Grades stay null. + +Before source SHA bindings: d3-generated-boundary-02/report.json. Exact screenshot bytes are copied, not re-rendered. D3 implementation requires separate root review after the installed-consumer dependency repair passes. The historical generated error boundary outside the viewport is retained under d3-generated-boundary-01; final captures scroll the existing composer into view before capture. The final settled capture preserves exact DOM before/after overlays. diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.png new file mode 100644 index 0000000..d2c17a2 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-error-390/change-boundary.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.html b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.html new file mode 100644 index 0000000..4fd951b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.png new file mode 100644 index 0000000..b10bac5 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/before.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.md.txt b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.md.txt new file mode 100644 index 0000000..e1ae532 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.md.txt @@ -0,0 +1,15 @@ +# UI change boundary + +Route: installed generated Chat app with the tested template lock, original loopback URL in report.json. +Viewport: 1440 x 960. +Theme: actual product dark theme; anonymous local session. +Trigger: running. +Fixture: Does the local NodeAgent wedge hold for an MVP? followed by the explicit PROOF FIXTURE failure question from the raw report. The running capture pauses the actual adapter iterator after its actual first tool-call yield; it changes no source or payload and exists only to settle text animation. The error capture uses an explicitly labelled in-memory adapter throw, not an external provider failure. + +CHANGE A / Run controls: .naComposer. Current composer disables Send while running and has no Stop. Expected: show supported Stop while running; stopping presentation must never imply undoing already-computed local work or prior writes. Empty/populated keep ordinary keyboard submission and existing no-key disclosure. + +CHANGE B / Current run response: last matching .naMsgAssistant .naBubble. Current failed turn leaves its last partial text visible without a visible error or Retry; earlier four cards remain. Expected: explicit failed/stopped status and a supported retry action, preserving previous turns and avoiding fake success. Error text is a safe constant; exact raw exception remains in the raw fixture proof. Long messages/statuses wrap at named widths and enlarged text. + +Protected neighbors: brand/header, suggestions, prior messages and four tool facts, existing graph traversal/assertion semantics, immutable source fixture results, no-key policy and separate SQLite persistence. These regions are not a license to change provider ownership or implement Pi. Browser reload resets the conversation; durable/frame proof belongs to a separate library path. Grades stay null. + +Before source SHA bindings: d3-generated-boundary-02/report.json. Exact screenshot bytes are copied, not re-rendered. D3 implementation requires separate root review after the installed-consumer dependency repair passes. The historical generated error boundary outside the viewport is retained under d3-generated-boundary-01; final captures scroll the existing composer into view before capture. The final settled capture preserves exact DOM before/after overlays. diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.png new file mode 100644 index 0000000..c0f153c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-1440/change-boundary.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.html b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.html new file mode 100644 index 0000000..8fcd258 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.png new file mode 100644 index 0000000..ce1abb0 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/before.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.md.txt b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.md.txt new file mode 100644 index 0000000..152d3bf --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.md.txt @@ -0,0 +1,15 @@ +# UI change boundary + +Route: installed generated Chat app with the tested template lock, original loopback URL in report.json. +Viewport: 390 x 960. +Theme: actual product dark theme; anonymous local session. +Trigger: running. +Fixture: Does the local NodeAgent wedge hold for an MVP? followed by the explicit PROOF FIXTURE failure question from the raw report. The running capture pauses the actual adapter iterator after its actual first tool-call yield; it changes no source or payload and exists only to settle text animation. The error capture uses an explicitly labelled in-memory adapter throw, not an external provider failure. + +CHANGE A / Run controls: .naComposer. Current composer disables Send while running and has no Stop. Expected: show supported Stop while running; stopping presentation must never imply undoing already-computed local work or prior writes. Empty/populated keep ordinary keyboard submission and existing no-key disclosure. + +CHANGE B / Current run response: last matching .naMsgAssistant .naBubble. Current failed turn leaves its last partial text visible without a visible error or Retry; earlier four cards remain. Expected: explicit failed/stopped status and a supported retry action, preserving previous turns and avoiding fake success. Error text is a safe constant; exact raw exception remains in the raw fixture proof. Long messages/statuses wrap at named widths and enlarged text. + +Protected neighbors: brand/header, suggestions, prior messages and four tool facts, existing graph traversal/assertion semantics, immutable source fixture results, no-key policy and separate SQLite persistence. These regions are not a license to change provider ownership or implement Pi. Browser reload resets the conversation; durable/frame proof belongs to a separate library path. Grades stay null. + +Before source SHA bindings: d3-generated-boundary-02/report.json. Exact screenshot bytes are copied, not re-rendered. D3 implementation requires separate root review after the installed-consumer dependency repair passes. The historical generated error boundary outside the viewport is retained under d3-generated-boundary-01; final captures scroll the existing composer into view before capture. The final settled capture preserves exact DOM before/after overlays. diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.png new file mode 100644 index 0000000..7480555 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-generated-before/generated-running-390/change-boundary.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.html b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.html new file mode 100644 index 0000000..73a5766 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.html @@ -0,0 +1,262 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.png new file mode 100644 index 0000000..ea39543 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/before.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.md.txt b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.md.txt new file mode 100644 index 0000000..1500418 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.md.txt @@ -0,0 +1,15 @@ +# UI change boundary + +Route: source canonical React demo, original loopback URL in report.json. +Viewport: 1440 x 960. +Theme: actual product dark theme; anonymous local session. +Trigger: error. +Fixture: Does our wedge hold versus Acme, and does the runway model survive 18 months? followed by the explicit PROOF FIXTURE failure question from the raw report. The running capture pauses the actual adapter iterator after its actual first tool-call yield; it changes no source or payload and exists only to settle text animation. The error capture uses an explicitly labelled in-memory adapter throw, not an external provider failure. + +CHANGE A / Run controls: .na-composer. Current composer disables Send while running and has no Stop. Expected: show supported Stop while running; stopping presentation must never imply undoing already-computed local work or prior writes. Empty/populated keep ordinary keyboard submission and existing no-key disclosure. + +CHANGE B / Current run response: last matching .na-msg-assistant .na-bubble. Current failed turn leaves its last partial text visible without a visible error or Retry; earlier four cards remain. Expected: explicit failed/stopped status and a supported retry action, preserving previous turns and avoiding fake success. Error text is a safe constant; exact raw exception remains in the raw fixture proof. Long messages/statuses wrap at named widths and enlarged text. + +Protected neighbors: brand/header, suggestions, prior messages and four tool facts, existing graph traversal/assertion semantics, immutable source fixture results, no-key policy and separate SQLite persistence. These regions are not a license to change provider ownership or implement Pi. Browser reload resets the conversation; durable/frame proof belongs to a separate library path. Grades stay null. + +Before source SHA bindings: d3-source-boundary-03/report.json. Exact screenshot bytes are copied, not re-rendered. D3 implementation requires separate root review after the installed-consumer dependency repair passes. Historical snapshot/selector harness failures remain under d3-source-boundary-01/02. The final settled capture preserves exact DOM before/after overlays. diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.png new file mode 100644 index 0000000..c141303 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-1440/change-boundary.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.html b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.html new file mode 100644 index 0000000..8a0bf72 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.html @@ -0,0 +1,262 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

Done. The wedge holds on high-confidence grounding (3/4), the model now clears 18 months, and the cited memo is ready.

Gather room context3 items · 2 active
0.20documentI pushed the retrieval-latency benchmark doc to the room earlier.
0.19messageAcme just dropped a competing teardown of our wedge. Investor call is in 40.
0.03messageFinance flagged burn crept to 420k/mo after the two senior hires.
Search & synthesizehigh · grounded 3/4
RAG[1] room://benchmark — wedge holds vs Acme on latency0.44
DOC[2] finance://burn — runway model0.56
DOC[3] diligence://wedge — competitive note0.44
WEB[4] Acme teardown blog — Why context rooms lose0.11
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.
Update modelv2 · 2 cells
Net burn / mo ($k)420
Cash on hand ($k)7560
Runway (months)18
↳ Correct base burn to the finance-audited 420k (was stress figure 510k).
Write memo5 blocks

Acme — diligence memo

The room asked: "Does our wedge hold versus Acme, and does the runway model survive 18 months?"

◆ Claim · grounded 3/4
Best-grounded source [1] (RAG): Defends the wedge: NodeAgent retrieval latency p95 211ms versus Acme 540ms on the shared eval set; grounded answer rate 0.93 across 103 queries. Corroborated by [2] finance://burn — runway model; [3] diligence://wedge — competitive note.

⌗ room://benchmark — wedge holds vs Acme on latency

Model updated to v2 (2 cells).

PROOF FIXTURE: inspect failure recovery without losing the earlier four results.

PROOF FIXTURE: checking the previous local result.

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.png new file mode 100644 index 0000000..40e5eb1 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/before.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.md.txt b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.md.txt new file mode 100644 index 0000000..dc0dfd1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.md.txt @@ -0,0 +1,15 @@ +# UI change boundary + +Route: source canonical React demo, original loopback URL in report.json. +Viewport: 390 x 960. +Theme: actual product dark theme; anonymous local session. +Trigger: error. +Fixture: Does our wedge hold versus Acme, and does the runway model survive 18 months? followed by the explicit PROOF FIXTURE failure question from the raw report. The running capture pauses the actual adapter iterator after its actual first tool-call yield; it changes no source or payload and exists only to settle text animation. The error capture uses an explicitly labelled in-memory adapter throw, not an external provider failure. + +CHANGE A / Run controls: .na-composer. Current composer disables Send while running and has no Stop. Expected: show supported Stop while running; stopping presentation must never imply undoing already-computed local work or prior writes. Empty/populated keep ordinary keyboard submission and existing no-key disclosure. + +CHANGE B / Current run response: last matching .na-msg-assistant .na-bubble. Current failed turn leaves its last partial text visible without a visible error or Retry; earlier four cards remain. Expected: explicit failed/stopped status and a supported retry action, preserving previous turns and avoiding fake success. Error text is a safe constant; exact raw exception remains in the raw fixture proof. Long messages/statuses wrap at named widths and enlarged text. + +Protected neighbors: brand/header, suggestions, prior messages and four tool facts, existing graph traversal/assertion semantics, immutable source fixture results, no-key policy and separate SQLite persistence. These regions are not a license to change provider ownership or implement Pi. Browser reload resets the conversation; durable/frame proof belongs to a separate library path. Grades stay null. + +Before source SHA bindings: d3-source-boundary-03/report.json. Exact screenshot bytes are copied, not re-rendered. D3 implementation requires separate root review after the installed-consumer dependency repair passes. Historical snapshot/selector harness failures remain under d3-source-boundary-01/02. The final settled capture preserves exact DOM before/after overlays. diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.png new file mode 100644 index 0000000..2b14b04 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-error-390/change-boundary.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.html b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.html new file mode 100644 index 0000000..dd00bd3 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.html @@ -0,0 +1,262 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.png new file mode 100644 index 0000000..2a689a0 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/before.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.md.txt b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.md.txt new file mode 100644 index 0000000..3c04b7d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.md.txt @@ -0,0 +1,15 @@ +# UI change boundary + +Route: source canonical React demo, original loopback URL in report.json. +Viewport: 1440 x 960. +Theme: actual product dark theme; anonymous local session. +Trigger: running. +Fixture: Does our wedge hold versus Acme, and does the runway model survive 18 months? followed by the explicit PROOF FIXTURE failure question from the raw report. The running capture pauses the actual adapter iterator after its actual first tool-call yield; it changes no source or payload and exists only to settle text animation. The error capture uses an explicitly labelled in-memory adapter throw, not an external provider failure. + +CHANGE A / Run controls: .na-composer. Current composer disables Send while running and has no Stop. Expected: show supported Stop while running; stopping presentation must never imply undoing already-computed local work or prior writes. Empty/populated keep ordinary keyboard submission and existing no-key disclosure. + +CHANGE B / Current run response: last matching .na-msg-assistant .na-bubble. Current failed turn leaves its last partial text visible without a visible error or Retry; earlier four cards remain. Expected: explicit failed/stopped status and a supported retry action, preserving previous turns and avoiding fake success. Error text is a safe constant; exact raw exception remains in the raw fixture proof. Long messages/statuses wrap at named widths and enlarged text. + +Protected neighbors: brand/header, suggestions, prior messages and four tool facts, existing graph traversal/assertion semantics, immutable source fixture results, no-key policy and separate SQLite persistence. These regions are not a license to change provider ownership or implement Pi. Browser reload resets the conversation; durable/frame proof belongs to a separate library path. Grades stay null. + +Before source SHA bindings: d3-source-boundary-03/report.json. Exact screenshot bytes are copied, not re-rendered. D3 implementation requires separate root review after the installed-consumer dependency repair passes. Historical snapshot/selector harness failures remain under d3-source-boundary-01/02. The final settled capture preserves exact DOM before/after overlays. diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.png new file mode 100644 index 0000000..67cbe8c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-1440/change-boundary.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.html b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.html new file mode 100644 index 0000000..7ede8cd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.html @@ -0,0 +1,262 @@ + + + + + + + + + + NodeAgent — React demo + + + + + + + +

NodeAgenton assistant-ui

Prototype ↗GitHub ↗

Does our wedge hold versus Acme, and does the runway model survive 18 months?

On it — pulling the room context, then searching, updating the model, and writing the memo.

Gather room context working…

+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.png new file mode 100644 index 0000000..bddd5f7 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/before.png differ diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.md.txt b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.md.txt new file mode 100644 index 0000000..13bc99f --- /dev/null +++ b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.md.txt @@ -0,0 +1,15 @@ +# UI change boundary + +Route: source canonical React demo, original loopback URL in report.json. +Viewport: 390 x 960. +Theme: actual product dark theme; anonymous local session. +Trigger: running. +Fixture: Does our wedge hold versus Acme, and does the runway model survive 18 months? followed by the explicit PROOF FIXTURE failure question from the raw report. The running capture pauses the actual adapter iterator after its actual first tool-call yield; it changes no source or payload and exists only to settle text animation. The error capture uses an explicitly labelled in-memory adapter throw, not an external provider failure. + +CHANGE A / Run controls: .na-composer. Current composer disables Send while running and has no Stop. Expected: show supported Stop while running; stopping presentation must never imply undoing already-computed local work or prior writes. Empty/populated keep ordinary keyboard submission and existing no-key disclosure. + +CHANGE B / Current run response: last matching .na-msg-assistant .na-bubble. Current failed turn leaves its last partial text visible without a visible error or Retry; earlier four cards remain. Expected: explicit failed/stopped status and a supported retry action, preserving previous turns and avoiding fake success. Error text is a safe constant; exact raw exception remains in the raw fixture proof. Long messages/statuses wrap at named widths and enlarged text. + +Protected neighbors: brand/header, suggestions, prior messages and four tool facts, existing graph traversal/assertion semantics, immutable source fixture results, no-key policy and separate SQLite persistence. These regions are not a license to change provider ownership or implement Pi. Browser reload resets the conversation; durable/frame proof belongs to a separate library path. Grades stay null. + +Before source SHA bindings: d3-source-boundary-03/report.json. Exact screenshot bytes are copied, not re-rendered. D3 implementation requires separate root review after the installed-consumer dependency repair passes. Historical snapshot/selector harness failures remain under d3-source-boundary-01/02. The final settled capture preserves exact DOM before/after overlays. diff --git a/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.png b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.png new file mode 100644 index 0000000..d0150ba Binary files /dev/null and b/evidence/current-consumer-20260905/operator/evidence/nodeagent-d3-source-before/source-running-390/change-boundary.png differ diff --git a/evidence/current-consumer-20260905/operator/existing-target-refusal.stderr b/evidence/current-consumer-20260905/operator/existing-target-refusal.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/existing-target-refusal.stdout b/evidence/current-consumer-20260905/operator/existing-target-refusal.stdout new file mode 100644 index 0000000..1d1eeb1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/existing-target-refusal.stdout @@ -0,0 +1,12 @@ +T NodeAgent App Scaffold: chat-ui +| +x Target already exists: D:\ProjectRecovery\NodeAgent current consumer 20260905\Generated Chat app +| +o Existing directory ----------------------------------------+ +| | +| Re-run with --force to overwrite matching template files. | +| | ++-------------------------------------------------------------+ +| +— App scaffold stopped before writing files. + diff --git a/evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.command.json b/evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.command.json new file mode 100644 index 0000000..214334a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.command.json @@ -0,0 +1,4 @@ +{ + "exit": 0, + "elapsed": 10.550841569900513 +} diff --git a/evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.stderr b/evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.stdout b/evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.stdout new file mode 100644 index 0000000..ba176fb --- /dev/null +++ b/evidence/current-consumer-20260905/operator/first-submit-dependency-comparison-01.stdout @@ -0,0 +1,2 @@ +12:32:30 AM [vite] (client) Re-optimizing dependencies because vite config has changed +{"completed":true,"cells":[{"kind":"generated","width":390,"errors":[]},{"kind":"generated","width":1440,"errors":[]}]} diff --git a/evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.command.json b/evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.command.json new file mode 100644 index 0000000..2c2f5d4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.command.json @@ -0,0 +1,4 @@ +{ + "exit": 0, + "elapsed": 24.993504285812378 +} diff --git a/evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stderr b/evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stderr new file mode 100644 index 0000000..dd29720 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stderr @@ -0,0 +1,5 @@ +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/react.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/index.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/session.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/NodeGraph.js" points to missing source files +Sourcemap for "D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/vendor/nodegraph-live/graph-model.js" points to missing source files diff --git a/evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stdout b/evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stdout new file mode 100644 index 0000000..7d854e1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/first-submit-diagnosis-01.stdout @@ -0,0 +1 @@ +{"completed":true,"cells":[{"kind":"generated","width":390,"errors":["Maximum update depth exceeded. The result of getSnapshot should be cached to avoid an infinite loop.","Maximum update depth exceeded. This can happen when a resource repeatedly calls setState inside useEffect."]},{"kind":"generated","width":1440,"errors":["Maximum update depth exceeded. The result of getSnapshot should be cached to avoid an infinite loop.","Maximum update depth exceeded. This can happen when a resource repeatedly calls setState inside useEffect."]},{"kind":"source","width":390,"errors":[]},{"kind":"source","width":1440,"errors":[]}]} diff --git a/evidence/current-consumer-20260905/operator/frame.json b/evidence/current-consumer-20260905/operator/frame.json new file mode 100644 index 0000000..f0c54ba --- /dev/null +++ b/evidence/current-consumer-20260905/operator/frame.json @@ -0,0 +1,24 @@ +{ + "ok": true, + "frameId": "rf_nodeagent_demo_wedge_runway", + "status": "completed", + "runtimeStatus": "ok", + "stateDelta": { + "contextItemCount": 3, + "activeParticipants": 2, + "groundedCount": 3, + "modelChanged": true, + "memoBlockCount": 5 + }, + "verification": { + "status": "completed", + "reason": "Frame completed.", + "evidenceState": { + "confidence": "high", + "citationCount": 3, + "winnerSourceId": "src_bench" + } + }, + "runwayMonths": 18, + "memoBlocks": 5 +} diff --git a/evidence/current-consumer-20260905/operator/frame.stderr b/evidence/current-consumer-20260905/operator/frame.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/frame.stdout b/evidence/current-consumer-20260905/operator/frame.stdout new file mode 100644 index 0000000..0a41df5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/frame.stdout @@ -0,0 +1 @@ +nodeagent frame smoke: PASS frame=rf_nodeagent_demo_wedge_runway status=completed runway=18 diff --git a/evidence/current-consumer-20260905/operator/host-install.stderr b/evidence/current-consumer-20260905/operator/host-install.stderr new file mode 100644 index 0000000..5b68026 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/host-install.stderr @@ -0,0 +1 @@ +npm warn deprecated prebuild-install@7.1.3: No longer maintained. Please contact the author of the relevant native addon; alternatives are available. diff --git a/evidence/current-consumer-20260905/operator/host-install.stdout b/evidence/current-consumer-20260905/operator/host-install.stdout new file mode 100644 index 0000000..704f169 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/host-install.stdout @@ -0,0 +1,7 @@ + +added 153 packages, and audited 154 packages in 17s + +13 packages are looking for funding + run `npm fund` for details + +found 0 vulnerabilities diff --git a/evidence/current-consumer-20260905/operator/install-consumer-commands.json b/evidence/current-consumer-20260905/operator/install-consumer-commands.json new file mode 100644 index 0000000..73c5678 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/install-consumer-commands.json @@ -0,0 +1,106 @@ +[ + { + "name": "source-audit", + "argv": [ + "npm.cmd", + "audit", + "--json" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exitCode": 1, + "seconds": 1.25, + "stdoutSha256": "0507abc50afeaaf68af460c5d475d106c4749a1fdda75812c327823c36cf59ab", + "stderrSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "name": "source-pack", + "argv": [ + "npm.cmd", + "pack", + "--json", + "--pack-destination", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exitCode": 0, + "seconds": 2.25, + "stdoutSha256": "d2d9f05091633befdb449cb5d572c882d710855117ce7acd3045c33b0dda2a59", + "stderrSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "name": "host-install", + "argv": [ + "npm.cmd", + "install", + "--save-exact", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\nodeagent-0.1.0.tgz" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Installed host", + "exitCode": 0, + "seconds": 17.24, + "stdoutSha256": "9c0a23925ed0f61c116e515f3ac86f72484b07c39ca88f666e1308367904c430", + "stderrSha256": "fe49a93af7f6a5072c3a3ef65019009ce521808d6b5a32810ad9a6a433f4524d" + }, + { + "name": "installed-doctor", + "argv": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Installed host\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "doctor" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Installed host", + "exitCode": 0, + "seconds": 0.84, + "stdoutSha256": "c1c258c059eecb124bff61dbb226e41918e33b071584bb25f23fc080febe7dbb", + "stderrSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "name": "installed-apps", + "argv": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Installed host\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "apps", + "list" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Installed host", + "exitCode": 0, + "seconds": 0.08, + "stdoutSha256": "8e1a0749d92500e1c135eca70a6d0de1d72cfa69a1bbb2616c7d156a9fb9f7dd", + "stderrSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "name": "installed-scaffold", + "argv": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Installed host\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "apps", + "scaffold", + "chat-ui", + "--dir", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Generated Chat app", + "--auto" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Installed host", + "exitCode": 0, + "seconds": 38.5, + "stdoutSha256": "fa6d77785236eab1b2afc92aa364673c47c9ca6c8f3d80790e50016f2b48ac24", + "stderrSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "name": "existing-target-refusal", + "argv": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Installed host\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "apps", + "scaffold", + "chat-ui", + "--dir", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Generated Chat app" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Installed host", + "exitCode": 1, + "seconds": 0.08, + "stdoutSha256": "c86fbc0b75aaf748e98f15c1d9164a987178241b6305db389b148321d418c998", + "stderrSha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } +] diff --git a/evidence/current-consumer-20260905/operator/installed-apps.stderr b/evidence/current-consumer-20260905/operator/installed-apps.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/installed-apps.stdout b/evidence/current-consumer-20260905/operator/installed-apps.stdout new file mode 100644 index 0000000..ca97311 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/installed-apps.stdout @@ -0,0 +1,8 @@ +T NodeAgent Apps +| +• local-dashboard nodeagent-local-dashboard credentials: none VisualLabs/NodeRoom-style dashboard with SQLite and Trace Lens tabs. +| +• chat-ui nodeagent-chat-ui credentials: none assistant-ui chat scaffold with a no-key local adapter and inline tool cards. +| +— Use `nodeagent apps scaffold chat-ui --dir nodeagent-chat-ui --auto` for the no-key chat, or `local-dashboard` for the dashboard shell. + diff --git a/evidence/current-consumer-20260905/operator/installed-consumer.json b/evidence/current-consumer-20260905/operator/installed-consumer.json new file mode 100644 index 0000000..35f8502 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/installed-consumer.json @@ -0,0 +1,12 @@ +{ + "source": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "host": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Installed host", + "consumer": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Generated Chat app", + "tarball": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\nodeagent-0.1.0.tgz", + "tarballSha256": "8e6c91ebde1abe8e9b2dd613a5c4c1184710ed29e73cf4352735282398bb3fce", + "packageFileCount": 238, + "templateFileCount": 14, + "allRequiredCommandsPassed": true, + "existingTargetRefused": true, + "providerVariablesPassed": false +} diff --git a/evidence/current-consumer-20260905/operator/installed-doctor.stderr b/evidence/current-consumer-20260905/operator/installed-doctor.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/installed-doctor.stdout b/evidence/current-consumer-20260905/operator/installed-doctor.stdout new file mode 100644 index 0000000..6a51c3c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/installed-doctor.stdout @@ -0,0 +1,23 @@ +T NodeAgent Doctor +| +* found examples/apps/chat-ui/template/package.json +| +* found examples/apps/local-dashboard/template/package.json +| +* found examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx +| +* found examples/apps/local-dashboard/template/src/main.jsx +| +o Next -----------------------------------------------------------------------+ +| | +| No-key chat UI scaffold: | +| nodeagent apps scaffold chat-ui --dir nodeagent-chat-ui --auto | +| | +| No-key dashboard scaffold: | +| nodeagent apps scaffold local-dashboard --dir nodeagent-local-dashboard | +| --auto | +| | ++------------------------------------------------------------------------------+ +| +— Doctor passed. + diff --git a/evidence/current-consumer-20260905/operator/installed-scaffold.stderr b/evidence/current-consumer-20260905/operator/installed-scaffold.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/installed-scaffold.stdout b/evidence/current-consumer-20260905/operator/installed-scaffold.stdout new file mode 100644 index 0000000..4e60ac1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/installed-scaffold.stdout @@ -0,0 +1,44 @@ +T NodeAgent App Scaffold: chat-ui +| +* created D:\ProjectRecovery\NodeAgent current consumer 20260905\Generated Chat app (14 files) +[?25l| +o npm install +[?25h| +* install 13.63s +[?25l| +o npm run agent:demo +[?25h| +* agent demo 428ms +[?25l| +o npm run smoke +[?25h| +* smoke 594ms +[?25l| +o npm run build +[?25h| +* build 23.76s +| +* wrote D:\ProjectRecovery\NodeAgent current consumer 20260905\Generated Chat app\.nodeagent\setup-receipt.json +| +o Chat UI --------------------------------------------------------------------+ +| | +| No API keys are required for the first run. | +| The chat uses assistant-ui, a scripted local adapter, and inline NodeAgent | +| tool cards; replace the adapter with a server route when credentials | +| exist. | +| | +| Auto mode already ran install, agent demo, smoke, and build. | +| | +| | +| Run: | +| cd D:\ProjectRecovery\NodeAgent current consumer 20260905\Generated Chat | +| app | +| npm run dev | +| | +| Optional verification: | +| npm run smoke | +| | ++------------------------------------------------------------------------------+ +| +— Chat UI scaffold is ready. + diff --git a/evidence/current-consumer-20260905/operator/locked-browser-01-harness.mjs.txt b/evidence/current-consumer-20260905/operator/locked-browser-01-harness.mjs.txt new file mode 100644 index 0000000..2f74569 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-01-harness.mjs.txt @@ -0,0 +1,76 @@ +import assert from 'node:assert/strict'; +import { mkdir, readFile, writeFile } from 'node:fs/promises'; +import { createHash } from 'node:crypto'; +import { execFileSync } from 'node:child_process'; +import path from 'node:path'; +import { createServer as createPortProbe } from 'node:net'; +import { chromium } from 'playwright'; +import { createServer } from 'vite'; + +// The supplied app must be the retained output of the installed package CLI. +// Source/consumer adapters are changed only in browser memory for a labelled error knockout. +const source = path.resolve(import.meta.dirname, '..'); +const consumer = path.resolve(process.argv[2] ?? ''); +const evidence = path.resolve(process.argv[3] ?? ''); +assert.ok(process.argv[2] && process.argv[3], 'Provide generated consumer path and NEW evidence directory'); +await mkdir(evidence, { recursive:false }); +const sha = value => createHash('sha256').update(value).digest('hex'); +const tracked = execFileSync('git',['ls-files','-z'],{cwd:source,env:{...process.env,GIT_OPTIONAL_LOCKS:'0'}}).toString().split('\0').filter(Boolean).filter(file=>!path.basename(file).startsWith('.env')); +tracked.push('e2e/current-consumer-proof.mjs'); +const sourceHashes = async () => Object.fromEntries(await Promise.all(tracked.map(async file=>[file,sha(await readFile(path.join(source,file)))]))); +const consumerFiles=['package.json','package-lock.json','index.html','vite.config.mjs','src/main.jsx','src/styles.css','src/nodeagent-chat/NodeAgentChatApp.jsx','src/nodeagent-chat/nodeAgentLocalAdapter.js','src/nodeagent-chat/toolUIs.jsx']; +const consumerHashes = async () => Object.fromEntries(await Promise.all(consumerFiles.map(async file=>[file,sha(await readFile(path.join(consumer,file)))]))); +const report={namedProof:'NODEAGENT-CURRENT-CONSUMER-01',passed:false,startedAt:new Date().toISOString(),sourceBefore:await sourceHashes(),consumerBefore:await consumerHashes(),checks:[],captures:[],observations:[],console:[],requests:[],providerCalls:0,grade:null}; +const check=(value,name)=>{report.checks.push({name,passed:Boolean(value)});assert.ok(value,name);}; +let browser,page;const servers=[]; +async function server(root){ + const probe=createPortProbe(); await new Promise(resolve=>probe.listen(0,'127.0.0.1',resolve)); const port=probe.address().port; await new Promise(resolve=>probe.close(resolve)); + const app=await createServer({root,envDir:false,server:{host:'127.0.0.1',port,strictPort:true,open:false}}); await app.listen(); servers.push(app); + return 'http://127.0.0.1:'+port; +} +async function context(base,width){ + const ctx=await browser.newContext({viewport:{width,height:width<=390?844:960},colorScheme:'light'}); + await ctx.route('**/*',route=>{const request=route.request(),url=new URL(request.url());if(report.requests.length<500)report.requests.push({origin:url.origin,path:url.pathname,method:request.method()});if(url.origin!==base&&!['fonts.googleapis.com','fonts.gstatic.com'].includes(url.hostname))return route.abort();return route.continue();}); + page=await ctx.newPage();page.setDefaultTimeout(12000);page.on('pageerror',error=>report.console.push({type:'pageerror',message:error.message}));page.on('console',message=>{if(message.type()==='error'&&report.console.length<100)report.console.push({type:'console',message:message.text()});});await page.goto(base,{waitUntil:'domcontentloaded',timeout:45000});await page.locator('textarea[name="input"]').waitFor();await page.evaluate(()=>Promise.race([document.fonts.ready,new Promise(resolve=>setTimeout(resolve,3000))]));return ctx; +} +async function capture(name){ + await page.evaluate(()=>new Promise(resolve=>requestAnimationFrame(()=>requestAnimationFrame(resolve)))); + let prior=await page.content();for(let i=0;i<8;i++){await page.waitForTimeout(250);const now=await page.content();if(now===prior)break;prior=now;}const html=await page.content();const state=await page.evaluate(()=>({url:location.href,viewport:{width:innerWidth,height:innerHeight},focused:document.activeElement?.tagName,overflow:document.documentElement.scrollWidth-innerWidth,buttons:[...document.querySelectorAll('button')].map(e=>({label:e.getAttribute('aria-label')??e.textContent,disabled:e.disabled})),bodyText:document.body.innerText.slice(-6000)})); + await page.screenshot({path:path.join(evidence,name+'.png'),caret:'initial'});check(await page.content()===html,name+' screenshot restores exact DOM');await writeFile(path.join(evidence,name+'.html'),html);await writeFile(path.join(evidence,name+'.json'),JSON.stringify(state,null,2)+'\n');report.captures.push({name,state,pngSha256:sha(await readFile(path.join(evidence,name+'.png')))});return state; +} +async function boundary(name,selectors){ + const html=await page.content(); + await page.evaluate(items=>{for(const [index,item]of items.entries()){const target=document.querySelector(item.selector),b=target.getBoundingClientRect();const box=document.createElement('div');box.dataset.boundaryProof='true';Object.assign(box.style,{position:'fixed',left:b.left+'px',top:b.top+'px',width:b.width+'px',height:b.height+'px',border:'3px solid #d31372',boxSizing:'border-box',zIndex:'2147483646',pointerEvents:'none'});const label=document.createElement('div');label.textContent=`CHANGE ${String.fromCharCode(65+index)} / ${item.title}`;Object.assign(label.style,{position:'absolute',bottom:'100%',left:'0',background:'#971352',color:'white',padding:'3px 6px',font:'bold 12px sans-serif',whiteSpace:'nowrap'});if(b.top<35){label.style.bottom='auto';label.style.top='100%';}box.append(label);document.body.append(box);}},selectors); + await page.screenshot({path:path.join(evidence,name+'-change-boundary.png'),caret:'initial'}); + await page.evaluate(()=>document.querySelectorAll('[data-boundary-proof]').forEach(e=>e.remove()));check(await page.content()===html,name+' boundary restores exact original DOM'); + const viewport=page.viewportSize();await writeFile(path.join(evidence,name+'-change-boundary.md'),`# UI change boundary\n\nRoute: ${page.url()}\nViewport: ${viewport.width}x${viewport.height}\nTheme: light\nSession: anonymous no-key local browser\nTrigger: ${name}\nFixture: explicit local product question; error state uses a labelled in-memory adapter throw, not a provider call.\n\n${selectors.map((item,index)=>`CHANGE ${String.fromCharCode(65+index)} / ${item.title}: ${item.selector}`).join('\n\n')}\n\nCurrent: composer sends work but offers no Stop/Cancel; assistant output has no designed failure/retry surface.\nExpected next slice (requires root review): honest current run status, supported cancellation and explicit retry preserve earlier messages. Cancel must not claim to undo prior computed work or durable writes.\n\nStates: empty remains no-key; loading keeps an inspectable current step and supported Stop; error names failed run and recovery without fake completion; populated keeps four tool results; long text wraps; controls remain usable at320/390/768/1024/1440/1920 and enlarged text.\n\nProtected neighbors: branding/navigation, prior conversation/tool results, graph facts, provider/model policy, durable state and all external systems. The browser session still resets on reload until a separate persistence contract exists. No graph assertion receipt is invented.\n`); + report.observations.push({name,kind:'labelled-3px-before',selectors}); +} +async function holdActualRunningFrame(base){ + await page.evaluate(async()=>{const module=await import('/src/nodeagent-chat/nodeAgentLocalAdapter.js'),original=module.nodeAgentLocalAdapter.run;module.nodeAgentLocalAdapter.run=async function*(args){module.nodeAgentLocalAdapter.run=original;let held=false;for await(const frame of original(args)){yield frame;if(!held&&frame.content.some(p=>p.type==='tool-call'&&!p.result)){held=true;window.proofHeldText=frame.content.find(p=>p.type==='text').text;await new Promise(resolve=>window.proofRelease=resolve);}}};}); + report.observations.push({name:'actual-running-frame-hold',purpose:'The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution.'}); +} +async function send(text){await page.locator('textarea[name="input"]').fill(text);await page.locator('textarea[name="input"]').press('Enter');} +async function complete(generated,count=1){await page.waitForFunction(({generated,count})=>{const cards=document.querySelectorAll(generated?'.naTool':'.na-tool');return cards.length===4*count&&[...cards].every(e=>e.getAttribute('data-running')!=='true')&&document.body.innerText.includes('Done.');},{generated,count});} +async function throwOnNext(base,generated){await page.evaluate(async({modulePath,key})=>{const module=await import(modulePath);module[key].run=async function*(){yield{content:[{type:'text',text:'PROOF FIXTURE: checking the saved local result.'}]};throw new Error('PROOF FIXTURE: adapter failed before the next result.');};},{modulePath:base+(generated?'/src/nodeagent-chat/nodeAgentLocalAdapter.js':'/src/features/node-agent/runtime/nodeAgentChatAdapter.ts'),key:generated?'nodeAgentLocalAdapter':'nodeAgentChatAdapter'});} +try { + const generatedBase=await server(consumer); let sourceBase;browser=await chromium.launch({headless:true});report.browser=browser.version();report.node=process.version; + for(const width of [320,390,768,1024,1440,1920]){ + const ctx=await context(generatedBase,width);check(await page.locator('[data-nodeagent-chat="empty"]').isVisible(),'generated empty state '+width);await capture('generated-empty-'+width); + await holdActualRunningFrame(generatedBase);await page.locator('textarea[name="input"]').fill('PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.');if([320,768,1440].includes(width))await page.getByRole('button',{name:'Send',exact:true}).click();else await page.locator('textarea[name="input"]').press('Enter');await page.locator('.naTool[data-running="true"]').first().waitFor(); + await page.waitForFunction(()=>typeof window.proofRelease==='function'&&document.body.innerText.includes(window.proofHeldText));const running=await capture('generated-running-'+width);check(running.overflow<=1,'generated running reflows '+width);report.observations.push({name:'generated-D3-'+width,hasStop:running.buttons.some(b=>/stop|cancel/i.test(b.label??'')),sendDisabled:running.buttons.find(b=>b.label==='Send')?.disabled}); + // A second immediate Enter cannot add a concurrent model/fixture run. + await page.locator('textarea[name="input"]').press('Enter');await page.evaluate(()=>window.proofRelease());await complete(true);check(await page.locator('.naTool').count()===4,'burst Enter retains one four-card run '+width);await capture('generated-populated-'+width); + await page.reload({waitUntil:'domcontentloaded'});await page.locator('textarea[name="input"]').waitFor();check(await page.locator('.naTool').count()===0&&await page.locator('[data-nodeagent-chat="empty"]').isVisible(),'reload resets only browser session '+width);await capture('generated-reloaded-'+width);await ctx.close(); + } + const sustained=await context(generatedBase,390),began=Date.now();for(let i=0;i<8;i++){await send('PROOF FIXTURE repeat '+(i+1)+': inspect the same local adoption evidence.');await complete(true,i+1);check(await page.locator('.naTool').count()===4*(i+1),'sustained accumulated four-card run '+(i+1));}report.sustained={turns:8,toolCards:32,elapsedMs:Date.now()-began};await capture('generated-sustained-390');await sustained.close(); + if(process.argv[4]!=='--consumer-only')for(const generated of [true,false])for(const width of [390,1440]){ + if(!generated&&!sourceBase) sourceBase=await server(source); + const base=generated?generatedBase:sourceBase,kind=generated?'generated':'source';const ctx=await context(base,width);await send('PROOF FIXTURE: inspect the current no-key agent handoff.');await page.locator(generated?'.naTool[data-running="true"]':'.na-tool').first().waitFor(); + const selectors=[{selector:generated?'.naComposer':'.na-composer',title:'Run controls'},{selector:generated?'.naMsgAssistant:last-of-type .naBubble':'.na-msg-assistant:last-of-type .na-bubble',title:'Current run response'}]; + await capture(kind+'-D3-running-'+width);await boundary(kind+'-D3-running-'+width,selectors);await complete(generated);await throwOnNext(base,generated);await send('PROOF FIXTURE: reproduce adapter failure while retaining the previous complete turn.');await page.waitForFunction(()=>document.body.innerText.includes('PROOF FIXTURE: checking the saved local result.'));await page.waitForTimeout(300); + const state=await capture(kind+'-D3-error-'+width);report.observations.push({name:kind+'-D3-error-'+width,hasVisibleError:/adapter failed before the next result/.test(state.bodyText),hasRetry:state.buttons.some(b=>/retry|try again/i.test(b.label??'')),retainedToolCards:await page.locator(generated?'.naTool':'.na-tool').count()});await boundary(kind+'-D3-error-'+width,selectors);await ctx.close(); + } + check(report.requests.every(r=>r.method==='GET'),'browser made no writes or provider requests');report.sourceAfter=await sourceHashes();report.consumerAfter=await consumerHashes();assert.deepEqual(report.sourceAfter,report.sourceBefore);assert.deepEqual(report.consumerAfter,report.consumerBefore);check(true,'source and installed generated input bytes unchanged');report.passed=true; +}catch(error){report.error=String(error.stack??error);process.exitCode=1;if(page&&!page.isClosed()){await writeFile(path.join(evidence,'failure.html'),await page.content());await page.screenshot({path:path.join(evidence,'failure.png'),caret:'initial'}).catch(()=>{});} +}finally{await browser?.close();for(const app of servers)await app.close();report.finishedAt=new Date().toISOString();await writeFile(path.join(evidence,'report.json'),JSON.stringify(report,null,2)+'\n');console.log(JSON.stringify({evidence,passed:report.passed,checks:report.checks.length,captures:report.captures.length,error:report.error}));} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-01.command.json b/evidence/current-consumer-20260905/operator/locked-browser-01.command.json new file mode 100644 index 0000000..ce54794 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-01.command.json @@ -0,0 +1,11 @@ +{ + "command": [ + "node", + "e2e/current-consumer-proof.mjs", + "D:/ProjectRecovery/NodeAgent current consumer 20260905/Locked Chat app", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01", + "--consumer-only" + ], + "exit": 1, + "seconds": 52.101502656936646 +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-01.stderr b/evidence/current-consumer-20260905/operator/locked-browser-01.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/locked-browser-01.stdout b/evidence/current-consumer-20260905/operator/locked-browser-01.stdout new file mode 100644 index 0000000..978eb2a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-01.stdout @@ -0,0 +1 @@ +{"evidence":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-01","passed":false,"checks":49,"captures":24,"error":"page.waitForFunction: Timeout 12000ms exceeded.\n at complete (D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905\\e2e\\current-consumer-proof.mjs:54:55)\n at D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905\\e2e\\current-consumer-proof.mjs:66:184"} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02.command.json b/evidence/current-consumer-20260905/operator/locked-browser-02.command.json new file mode 100644 index 0000000..b264399 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02.command.json @@ -0,0 +1,10 @@ +{ + "command": [ + "node", + "e2e/current-consumer-proof.mjs", + "D:/ProjectRecovery/NodeAgent current consumer 20260905/Locked Chat app", + "C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02" + ], + "exit": 0, + "seconds": 39.30557942390442 +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02.stderr b/evidence/current-consumer-20260905/operator/locked-browser-02.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02.stdout b/evidence/current-consumer-20260905/operator/locked-browser-02.stdout new file mode 100644 index 0000000..c1824e5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02.stdout @@ -0,0 +1 @@ +{"evidence":"C:\\Users\\hshum\\.codex\\worktrees\\5dba\\nodebench-ai\\docs\\plans\\portfolio-recovery-20260904\\E6e-nodeagent-current-consumer\\locked-browser-02","passed":true,"checks":59,"captures":25} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.html new file mode 100644 index 0000000..d8417dd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.json new file mode 100644 index 0000000..af3b0ff --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.png new file mode 100644 index 0000000..3ad4c4f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.html new file mode 100644 index 0000000..d8417dd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.json new file mode 100644 index 0000000..8e64e66 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.png new file mode 100644 index 0000000..ec06403 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.html new file mode 100644 index 0000000..d8417dd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.json new file mode 100644 index 0000000..071b1ea --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.png new file mode 100644 index 0000000..678f31a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.html new file mode 100644 index 0000000..cd3738a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.json new file mode 100644 index 0000000..971d07f --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.png new file mode 100644 index 0000000..5ec89ef Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-320.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.html new file mode 100644 index 0000000..a34aa50 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.json new file mode 100644 index 0000000..6cbe720 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.png new file mode 100644 index 0000000..3c0088c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-390.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.html new file mode 100644 index 0000000..5d4c71d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.json new file mode 100644 index 0000000..9d3ad95 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.png new file mode 100644 index 0000000..e3b655b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-empty-768.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.html new file mode 100644 index 0000000..94eac36 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.html @@ -0,0 +1,458 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.json new file mode 100644 index 0000000..dd57cb5 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.png new file mode 100644 index 0000000..f75fd91 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.html new file mode 100644 index 0000000..11911a3 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.html @@ -0,0 +1,458 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.json new file mode 100644 index 0000000..b170ae2 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.png new file mode 100644 index 0000000..6219e2c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.html new file mode 100644 index 0000000..afee831 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.html @@ -0,0 +1,458 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.json new file mode 100644 index 0000000..8f4727b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.png new file mode 100644 index 0000000..d6f66e0 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.html new file mode 100644 index 0000000..a84df06 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.html @@ -0,0 +1,458 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.json new file mode 100644 index 0000000..dfa48fc --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.png new file mode 100644 index 0000000..eea7c38 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-320.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.html new file mode 100644 index 0000000..ece83cb --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.html @@ -0,0 +1,458 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.json new file mode 100644 index 0000000..1371636 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.png new file mode 100644 index 0000000..39ec85a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-390.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.html new file mode 100644 index 0000000..f7e02c6 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.html @@ -0,0 +1,458 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.json new file mode 100644 index 0000000..d0585a3 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.png new file mode 100644 index 0000000..f633fd3 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-populated-768.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.html new file mode 100644 index 0000000..d8417dd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.json new file mode 100644 index 0000000..af3b0ff --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.png new file mode 100644 index 0000000..3ad4c4f Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.html new file mode 100644 index 0000000..d8417dd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.json new file mode 100644 index 0000000..8e64e66 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.png new file mode 100644 index 0000000..ec06403 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.html new file mode 100644 index 0000000..d8417dd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.json new file mode 100644 index 0000000..071b1ea --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.png new file mode 100644 index 0000000..678f31a Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.html new file mode 100644 index 0000000..cd3738a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.json new file mode 100644 index 0000000..971d07f --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.png new file mode 100644 index 0000000..5ec89ef Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-320.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.html new file mode 100644 index 0000000..a34aa50 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.json new file mode 100644 index 0000000..6cbe720 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.png new file mode 100644 index 0000000..3c0088c Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-390.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.html new file mode 100644 index 0000000..5d4c71d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.json new file mode 100644 index 0000000..9d3ad95 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.json @@ -0,0 +1,24 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.png new file mode 100644 index 0000000..e3b655b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-reloaded-768.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.html new file mode 100644 index 0000000..c57138c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.json new file mode 100644 index 0000000..f918d81 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.png new file mode 100644 index 0000000..ed414b8 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1024.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.html new file mode 100644 index 0000000..f71d98e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.json new file mode 100644 index 0000000..6607bff --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.png new file mode 100644 index 0000000..02701be Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1440.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.html new file mode 100644 index 0000000..26895dd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.json new file mode 100644 index 0000000..51ea9a0 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.png new file mode 100644 index 0000000..2e27a5b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-1920.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.html new file mode 100644 index 0000000..585e673 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.json new file mode 100644 index 0000000..35f1fbb --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.png new file mode 100644 index 0000000..37005cf Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-320.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.html new file mode 100644 index 0000000..dac5d4a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.json new file mode 100644 index 0000000..d9019c7 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.png new file mode 100644 index 0000000..f839f4b Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-390.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.html new file mode 100644 index 0000000..7b6fd35 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.json new file mode 100644 index 0000000..b258747 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.png new file mode 100644 index 0000000..e39a9f6 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-running-768.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.html b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.html new file mode 100644 index 0000000..411483c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.html @@ -0,0 +1,457 @@ + + + + + + + + NodeAgent Chat UI + + +
NodeAgentportable chat UI
no keys
+ + + + \ No newline at end of file diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.json b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.json new file mode 100644 index 0000000..07c4351 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.json @@ -0,0 +1,16 @@ +{ + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": " API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 5: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 6: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 7: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 8: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." +} diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.png b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.png new file mode 100644 index 0000000..582fc3e Binary files /dev/null and b/evidence/current-consumer-20260905/operator/locked-browser-02/generated-sustained-390.png differ diff --git a/evidence/current-consumer-20260905/operator/locked-browser-02/report.json b/evidence/current-consumer-20260905/operator/locked-browser-02/report.json new file mode 100644 index 0000000..4efa395 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-browser-02/report.json @@ -0,0 +1,2507 @@ +{ + "namedProof": "NODEAGENT-CURRENT-CONSUMER-01", + "passed": true, + "startedAt": "2026-09-05T07:47:16.176Z", + "sourceBefore": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "examples/apps/chat-ui/template/src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "src/features/node-agent/components/toolUIs.tsx": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerBefore": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + }, + "checks": [ + { + "name": "generated empty state 320", + "passed": true + }, + { + "name": "generated-empty-320 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-320 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 320", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 320", + "passed": true + }, + { + "name": "generated-populated-320 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 320", + "passed": true + }, + { + "name": "generated-reloaded-320 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 390", + "passed": true + }, + { + "name": "generated-empty-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 390", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 390", + "passed": true + }, + { + "name": "generated-populated-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 390", + "passed": true + }, + { + "name": "generated-reloaded-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 768", + "passed": true + }, + { + "name": "generated-empty-768 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-768 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 768", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 768", + "passed": true + }, + { + "name": "generated-populated-768 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 768", + "passed": true + }, + { + "name": "generated-reloaded-768 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 1024", + "passed": true + }, + { + "name": "generated-empty-1024 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-1024 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 1024", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 1024", + "passed": true + }, + { + "name": "generated-populated-1024 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 1024", + "passed": true + }, + { + "name": "generated-reloaded-1024 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 1440", + "passed": true + }, + { + "name": "generated-empty-1440 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-1440 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 1440", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 1440", + "passed": true + }, + { + "name": "generated-populated-1440 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 1440", + "passed": true + }, + { + "name": "generated-reloaded-1440 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated empty state 1920", + "passed": true + }, + { + "name": "generated-empty-1920 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated-running-1920 screenshot restores exact DOM", + "passed": true + }, + { + "name": "generated running reflows 1920", + "passed": true + }, + { + "name": "burst Enter retains one four-card run 1920", + "passed": true + }, + { + "name": "generated-populated-1920 screenshot restores exact DOM", + "passed": true + }, + { + "name": "reload resets only browser session 1920", + "passed": true + }, + { + "name": "generated-reloaded-1920 screenshot restores exact DOM", + "passed": true + }, + { + "name": "sustained accumulated four-card run 1", + "passed": true + }, + { + "name": "sustained accumulated four-card run 2", + "passed": true + }, + { + "name": "sustained accumulated four-card run 3", + "passed": true + }, + { + "name": "sustained accumulated four-card run 4", + "passed": true + }, + { + "name": "sustained accumulated four-card run 5", + "passed": true + }, + { + "name": "sustained accumulated four-card run 6", + "passed": true + }, + { + "name": "sustained accumulated four-card run 7", + "passed": true + }, + { + "name": "sustained accumulated four-card run 8", + "passed": true + }, + { + "name": "generated-sustained-390 screenshot restores exact DOM", + "passed": true + }, + { + "name": "browser made no writes or provider requests", + "passed": true + }, + { + "name": "source and installed generated input bytes unchanged", + "passed": true + } + ], + "captures": [ + { + "name": "generated-empty-320", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad" + }, + { + "name": "generated-running-320", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "df3e7ffedf6384aa56ca2e0fbabd285f2210fcbb98f3a0832038cd8cfb946abe" + }, + { + "name": "generated-populated-320", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "62b1ec0fc69fb0c4b1c4caf0c3705c8d6f552402e50c611a8625aed21690b64c" + }, + { + "name": "generated-reloaded-320", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 320, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "68ac1b663ee560a920bc2f3333b665c279579f504719d0f5ebc49c93620753ad" + }, + { + "name": "generated-empty-390", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734" + }, + { + "name": "generated-running-390", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "fe40295325c3942cd1bfcf179d9fd626f7699c7dc65c84da7c4ad5a2a8f38e01" + }, + { + "name": "generated-populated-390", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "382ec6f9a7846cc694a7ffb848dccb1ded561a8d64e2c2ff5c5e7834d499cc6f" + }, + { + "name": "generated-reloaded-390", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "1864778420b40947f69cc4fab4ad77cf1d29866b13ba2571b4ef52e6bed1b734" + }, + { + "name": "generated-empty-768", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445" + }, + { + "name": "generated-running-768", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "582683ea8ece2702fb4a096498cc00861998dcbc02f2a77a7f81523d397eb17a" + }, + { + "name": "generated-populated-768", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "8f39389bb97178ffa7148afde59ec70d87173744f8188295f37726a0250d7ee0" + }, + { + "name": "generated-reloaded-768", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 768, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "410273c1fdfa7e7319648c133db857377bc836a5786e85fc25d766a8badc8445" + }, + { + "name": "generated-empty-1024", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9" + }, + { + "name": "generated-running-1024", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "062ef6da15f30947243870a7bffe86fe8ecb4db036898c06ff489858bbb5f129" + }, + { + "name": "generated-populated-1024", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "db5b14a2d4e77e3545d129ee6413f70874b349de7c7d67fe60ff75b23e824174" + }, + { + "name": "generated-reloaded-1024", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1024, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "79e3e3dbd60c5eac7890bd007e5cba706aa23ea3052a1f6a8ba749796d1169b9" + }, + { + "name": "generated-empty-1440", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795" + }, + { + "name": "generated-running-1440", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "94f72a9e74a6f3d21a53afa9bafabd4880c43eb995a6808dd7a2256b37b4abba" + }, + { + "name": "generated-populated-1440", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "0bc2f3246755af576a03fd013a3f79acb377261ab1b0b7a2ae0be65d99110ffb" + }, + { + "name": "generated-reloaded-1440", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1440, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "85dce0fe6e63ede6beee28059b9b45945d59784881ed8f40ac8f442d62351795" + }, + { + "name": "generated-empty-1920", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b" + }, + { + "name": "generated-running-1920", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nRunning local NodeAgent for: PROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nGather context\nworking\n\n●\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "9026f07501136fdfe942540c9dd4fed895f234a2c4ed0bc9ab9c2850663a68ca" + }, + { + "name": "generated-populated-1920", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nPROOF FIXTURE: Does the local no-key MVP path work? Preserve unknown provider capability.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "f35bc072e2f56b00950ad4a12abd14df26e1562deb707c54e460123d022714bc" + }, + { + "name": "generated-reloaded-1920", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 1920, + "height": 960 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Run the MVP proof", + "disabled": false + }, + { + "label": "Find the next check", + "disabled": false + }, + { + "label": "Send", + "disabled": true + } + ], + "bodyText": "NA\nNodeAgent\nportable chat UI\nno keys\n\nNO-KEY LOCAL AGENT\n\nAsk the room. Watch the work.\n\nNodeAgent gathers context, checks sources, applies a model delta, and writes the memo as inline tool cards. The default adapter is scripted so the first run needs no API keys.\n\nRun the MVP proof\nFind the next check\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "60dc03327323c6731ed8ebbbc1dd45c874bb89208f022bccf5dcf721e65d6f1b" + }, + { + "name": "generated-sustained-390", + "state": { + "url": "http://127.0.0.1:53414/", + "viewport": { + "width": 390, + "height": 844 + }, + "focused": "TEXTAREA", + "overflow": 0, + "buttons": [ + { + "label": "Send", + "disabled": true + } + ], + "bodyText": " API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 5: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 6: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 7: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nPROOF FIXTURE repeat 8: inspect the same local adoption evidence.\n\nNA\n\nDone. The chat UI is running locally with no provider credentials; swap the adapter when the live route exists.\n\nGather context\n3 items\n\n0.94\nroom\nUser wants a portable agent chat that works before API keys exist.\n\n0.88\nruntime\nThe local adapter must be replaceable by a server route or worker.\n\n0.82\nproof\nSmoke and build should pass in the generated target app.\n\nSearch and synthesize\nhigh confidence\nREADME\n[A] No-key local adapter requirement\n0.94\nSMOKE\n[B] Generated app smoke and build\n0.87\nRUNTIME\n[C] Server route upgrade seam\n0.81\n\nYes. The generated chat starts with a scripted adapter and assistant-ui thread, then upgrades by replacing the adapter with a server route.\n\nApply model delta\nv2\nFirst run\tno keys\nAdapter\tlocal\nUpgrade\tserver route\n\nKeep the first demo runnable before credentials are available.\n\nWrite memo\n5 blocks\nPortable NodeAgent chat proof\nClaim 0.93\nThe scaffold can be dropped into another React app and run without model keys.\n\nReplace the local adapter only after the server-side provider path exists.\n\nDone. The chat UI is running locally with no provider credentials.\n\nSources: local README, smoke receipt, runtime adapter seam.\n\nScripted local adapter. Replace it with a server route when credentials exist." + }, + "pngSha256": "9edf791fc10d37996214708c197022e52134cae4af28e9b7b4d2d404946a763e" + } + ], + "observations": [ + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-320", + "hasStop": false, + "sendDisabled": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-390", + "hasStop": false, + "sendDisabled": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-768", + "hasStop": false, + "sendDisabled": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-1024", + "hasStop": false, + "sendDisabled": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-1440", + "hasStop": false, + "sendDisabled": true + }, + { + "name": "actual-running-frame-hold", + "purpose": "The actual adapter iterator waits after its first actual running tool frame solely to settle the screenshot; no DOM/result/source substitution." + }, + { + "name": "generated-D3-1920", + "hasStop": false, + "sendDisabled": true + } + ], + "console": [], + "requests": [ + { + "origin": "http://127.0.0.1:53414", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@vite/client", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/main.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@react-refresh", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react_jsx-dev-runtime.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/react-dom_client.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/NodeAgentChatApp.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/styles.css", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/@fs/D:/VSCode%20Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905/node_modules/vite/dist/client/env.mjs", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-NU37SNVE.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/@assistant-ui_react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/lucide-react.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/src/nodeagent-chat/toolUIs.jsx", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-AFTQJLUM.js", + "method": "GET" + }, + { + "origin": "http://127.0.0.1:53414", + "path": "/node_modules/.vite/deps/chunk-OBHMC6X4.js", + "method": "GET" + } + ], + "providerCalls": 0, + "grade": null, + "browser": "151.0.7922.34", + "node": "v22.22.2", + "sustained": { + "turns": 8, + "toolCards": 32, + "elapsedMs": 13941 + }, + "sourceAfter": { + ".gitattributes": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + ".github/workflows/ci.yml": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + ".github/workflows/node-platform-conformance.yml": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + ".gitignore": "350b0dc83efaee7060b28176fe4823f5ad363f5925c13508f4c5374229693bfb", + ".tours/01-primary-user-flow.tour": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + ".tours/02-agent-execution.tour": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + ".tours/03-debug-and-recovery.tour": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "NODE-LOOPS.md": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "README.md": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "convex/schema.ts": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "demo/runNodeAgentDemo.ts": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "docs/ARCHITECTURE.md": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "docs/CHAT_UI_ADOPTION.md": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "docs/DEMO_SCRIPT.md": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "docs/DURABLE_RUNTIME.md": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "docs/FEATURE_PROOF_STORYBOARD.md": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "docs/GRAPH_INTEGRATION.md": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "docs/LOCAL_DASHBOARD_WALKTHROUGH.md": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "docs/MIGRATION_MAP.md": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "docs/OMNIGENT_INTEGRATION.md": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "docs/PUSH_TO_GITHUB.md": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "docs/SIMPLIFICATION_REPORT.md": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "docs/START_HERE.md": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "docs/TECH_RETRO.md": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "docs/codebase/ARCHITECTURE.md": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "docs/codebase/CONCERNS.md": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "docs/codebase/CONVENTIONS.md": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "docs/codebase/INTEGRATIONS.md": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "docs/codebase/STACK.md": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "docs/codebase/STRUCTURE.md": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "docs/codebase/TESTING.md": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "docs/eval/nodeagent-chat-ui-scaffold-smoke.json": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "docs/eval/nodeagent-convex-smoke.json": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "docs/eval/nodeagent-durable-smoke.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "docs/eval/nodeagent-frame-smoke.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "docs/eval/nodeagent-happy-path-speed.json": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "docs/eval/nodeagent-live-provider-smoke.json": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "docs/eval/nodeagent-sqlite-smoke.json": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "docs/eval/omnigent-nodeagent-smoke.json": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "docs/eval/omnigent-official-cli-probe.json": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "docs/media/live-graph-rail.gif": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "docs/media/live-graph-rail.mp4": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "docs/media/live-graph-rail.png": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "docs/screenshots/chat-desktop-empty.png": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "docs/screenshots/chat-desktop-run.png": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "docs/screenshots/chat-mobile-empty.png": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "docs/screenshots/chat-mobile-run.png": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "docs/screenshots/local-dashboard-builder-locked.png": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "docs/screenshots/local-dashboard-overview.png": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "docs/screenshots/proto-desktop-empty.png": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "docs/screenshots/proto-desktop-run.png": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "docs/screenshots/proto-mobile-empty.png": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "docs/screenshots/proto-mobile-run.png": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "e2e/audit-web-quality.mjs": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "e2e/capture-journey-at-width.mjs": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "e2e/capture-live-graph-rail.mjs": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "e2e/record-live-graph-rail.mjs": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "e2e/wig-review.mjs": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "examples/adapters/AGENTS.md": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "examples/adapters/README.md": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "examples/adapters/aws-dynamodb/README.md": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "examples/adapters/aws-dynamodb/iam-policy.template.json": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "examples/adapters/cloudflare/README.md": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "examples/adapters/cloudflare/wrangler.example.jsonc": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "examples/adapters/convex/README.md": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "examples/adapters/postgres/README.md": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "examples/adapters/postgres/schema.sql": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "examples/adapters/sqlite-local/README.md": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "examples/adapters/sqlite-local/schema.sql": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "examples/adapters/sqlite-local/sqliteDurableRuntime.ts": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "examples/apps/README.md": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "examples/apps/aws-hackathon-visual-labs/README.md": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "examples/apps/chat-ui/README.md": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "examples/apps/chat-ui/template/AGENTS.md": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "examples/apps/chat-ui/template/README.md": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "examples/apps/chat-ui/template/index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/public/nodeagent-chat-state.json": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "examples/apps/chat-ui/template/src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "examples/apps/chat-ui/template/src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "examples/apps/chat-ui/template/vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "examples/apps/local-dashboard/README.md": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "examples/apps/local-dashboard/template/AGENTS.md": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "examples/apps/local-dashboard/template/README.md": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "examples/apps/local-dashboard/template/docs/eval/.gitkeep": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "examples/apps/local-dashboard/template/index.html": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "examples/apps/local-dashboard/template/package.json": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "examples/apps/local-dashboard/template/public/nodeagent-state.json": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "examples/apps/local-dashboard/template/src/main.jsx": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "examples/apps/local-dashboard/template/src/styles.css": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "examples/apps/local-dashboard/template/vite.config.mjs": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "examples/apps/local-design-dashboard/README.md": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "examples/apps/minimal-portable-agent/AGENTS.md": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "examples/apps/minimal-portable-agent/README.md": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "examples/apps/video-agent-pipeline/README.md": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "examples/omnigent/nodeagent-reviewer.yaml": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "examples/omnigent/nodeagent-worker.yaml": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "index.html": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "knip.json": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "nodeagent-v1.html": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "nodekit.yaml": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "promotion/PRODUCT_GOAL.md": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "promotion/PRODUCT_JOURNEYS.md": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "promotion/PROMOTION_LOG.md": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "promotion/SKILLS.md": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "promotion/WIG_REVIEW.md": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "promotion/evidence/axe-initial-prefix.json": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "promotion/evidence/axe-initial.json": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "promotion/evidence/axe-populated-axe-1440.json": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "promotion/evidence/axe-populated-keyboard-375.json": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "promotion/evidence/axe-populated-prefix-keyboard-375.json": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "promotion/evidence/baseline-observations.json": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "promotion/evidence/desktop-1440-agent-running.png": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "promotion/evidence/desktop-1440-empty.png": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "promotion/evidence/desktop-1440-keyboard-run.png": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "promotion/evidence/desktop-1440-run.png": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "promotion/evidence/desktop-1440-second-turn.png": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "promotion/evidence/journey-1440-observations.json": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "promotion/evidence/journey-1440-run.png": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "promotion/evidence/journey-375-observations.json": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "promotion/evidence/journey-375-run.png": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "promotion/evidence/journey-375-steering-observations.json": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "promotion/evidence/journey-375-steering-run.png": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "promotion/evidence/journey-768-observations.json": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "promotion/evidence/journey-768-run.png": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "promotion/evidence/journey-960-observations.json": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "promotion/evidence/journey-960-run.png": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "promotion/evidence/journey-axe-1440-observations.json": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "promotion/evidence/journey-axe-1440-run.png": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "promotion/evidence/journey-keyboard-375-observations.json": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "promotion/evidence/journey-keyboard-375-run.png": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "promotion/evidence/journey-prefix-375-observations.json": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "promotion/evidence/journey-prefix-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/journey-prefix-keyboard-375-observations.json": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "promotion/evidence/journey-prefix-keyboard-375-run.png": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "promotion/evidence/journey-wave3-1440-observations.json": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "promotion/evidence/journey-wave3-1440-run.png": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "promotion/evidence/journey-wave3-375-observations.json": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "promotion/evidence/journey-wave3-375-run.png": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "promotion/evidence/lighthouse-desktop.json": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "promotion/evidence/lighthouse-mobile.json": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "promotion/evidence/mobile-375-empty.png": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "promotion/evidence/mobile-375-run.png": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "promotion/evidence/proto-1440-load.png": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "promotion/evidence/proto-375-load.png": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "promotion/evidence/proto-375-run.png": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "promotion/evidence/web-quality-audit-prefix.json": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "promotion/evidence/web-quality-audit.json": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "promotion/evidence/wig-desktop-1440.png": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "promotion/evidence/wig-mobile-375.png": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "promotion/evidence/wig-prefix-desktop-1440.png": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "promotion/evidence/wig-prefix-mobile-375.png": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "promotion/evidence/wig-review-prefix.json": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "promotion/evidence/wig-review.json": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "scripts/build-tours.mjs": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "scripts/example-guidance-smoke.ts": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "scripts/nodeagent-chat-ui-scaffold-smoke.ts": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "scripts/nodeagent-cli.ts": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "scripts/nodeagent-convex-smoke.ts": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "scripts/nodeagent-durable-smoke.ts": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "scripts/nodeagent-frame-smoke.ts": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "scripts/nodeagent-live-provider-smoke.ts": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "scripts/nodeagent-local-dashboard-scaffold-smoke.ts": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "scripts/nodeagent-sqlite-smoke.ts": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "scripts/omnigent-nodeagent-smoke.ts": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "scripts/omnigent-official-probe.mjs": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "scripts/render-walkthrough-media.mjs": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "scripts/secret-scan.mjs": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "scripts/validate-tours.mjs": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "src/app/main.tsx": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "src/app/styles.css": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "src/features/chat/contextCollector.ts": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "src/features/node-agent/components/GraphRailPanel.tsx": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "src/features/node-agent/components/NodeAgentDemoApp.tsx": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "src/features/node-agent/components/NodeAgentThread.tsx": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "src/features/node-agent/components/toolUIs.tsx": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "src/features/node-agent/demoScenario.ts": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "src/features/node-agent/graph/agentGraphSession.ts": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "src/features/node-agent/runtime/durableRuntime.ts": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "src/features/node-agent/runtime/nodeAgentChatAdapter.ts": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "src/features/node-agent/runtime/nodeAgentRuntime.ts": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "src/features/node-agent/runtime/omnigentAdapter.ts": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "src/features/node-agent/runtime/reasoningFrameRunner.ts": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "src/features/node-agent/types/nodeAgentTypes.ts": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "src/features/notebook/notebookEditor.ts": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "src/features/search/searchAndSynthesize.ts": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "src/features/spreadsheet/applySpreadsheetDelta.ts": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "src/features/spreadsheet/versionedSpreadsheetSync.ts": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "tests/durableRuntime.test.ts": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "tests/nodeAgentRuntime.test.ts": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "tests/omnigentAdapter.test.ts": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "tests/reasoningFrameRunner.test.ts": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "tests/searchSynthesize.test.ts": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "tests/spreadsheetDelta.test.ts": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "tests/sqliteDurableRuntime.test.ts": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "tsconfig.json": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "vendor/nodegraph-live/NodeGraph.d.ts": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "vendor/nodegraph-live/NodeGraph.d.ts.map": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "vendor/nodegraph-live/NodeGraph.js": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "vendor/nodegraph-live/NodeGraph.js.map": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "vendor/nodegraph-live/README.md": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "vendor/nodegraph-live/graph-model.d.ts": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "vendor/nodegraph-live/graph-model.d.ts.map": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "vendor/nodegraph-live/graph-model.js": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "vendor/nodegraph-live/graph-model.js.map": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "vendor/nodegraph-live/index.d.ts": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "vendor/nodegraph-live/index.d.ts.map": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "vendor/nodegraph-live/index.js": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "vendor/nodegraph-live/index.js.map": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "vendor/nodegraph-live/react.d.ts": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "vendor/nodegraph-live/react.d.ts.map": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "vendor/nodegraph-live/react.js": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "vendor/nodegraph-live/react.js.map": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "vendor/nodegraph-live/session.d.ts": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "vendor/nodegraph-live/session.d.ts.map": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "vendor/nodegraph-live/session.js": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "vendor/nodegraph-live/session.js.map": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "vite.config.ts": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "vitest.config.ts": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + "consumerAfter": { + "package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "index.html": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "vite.config.mjs": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "src/main.jsx": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + }, + "finishedAt": "2026-09-05T07:47:54.909Z" +} diff --git a/evidence/current-consumer-20260905/operator/locked-consumer-commands.json b/evidence/current-consumer-20260905/operator/locked-consumer-commands.json new file mode 100644 index 0000000..58373f4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-consumer-commands.json @@ -0,0 +1,69 @@ +[ + { + "name": "locked-source-pack", + "command": [ + "npm.cmd", + "pack", + "--json", + "--pack-destination", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked package 01" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 1.8401267528533936 + }, + { + "name": "locked-host-install", + "command": [ + "npm.cmd", + "install", + "--save-exact", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked package 01\\nodeagent-0.1.0.tgz" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host", + "exit": 0, + "seconds": 18.053833484649658 + }, + { + "name": "locked-installed-doctor", + "command": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "doctor" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host", + "exit": 0, + "seconds": 0.7991647720336914 + }, + { + "name": "locked-installed-scaffold", + "command": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "apps", + "scaffold", + "chat-ui", + "--dir", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked Chat app", + "--auto" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host", + "exit": 0, + "seconds": 29.339585065841675 + }, + { + "name": "locked-existing-target-refusal", + "command": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "apps", + "scaffold", + "chat-ui", + "--dir", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked Chat app" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host", + "exit": 1, + "seconds": 0.08051729202270508 + } +] diff --git a/evidence/current-consumer-20260905/operator/locked-existing-target-refusal.stderr b/evidence/current-consumer-20260905/operator/locked-existing-target-refusal.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/locked-existing-target-refusal.stdout b/evidence/current-consumer-20260905/operator/locked-existing-target-refusal.stdout new file mode 100644 index 0000000..27d7957 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-existing-target-refusal.stdout @@ -0,0 +1,12 @@ +T NodeAgent App Scaffold: chat-ui +| +x Target already exists: D:\ProjectRecovery\NodeAgent current consumer 20260905\Locked Chat app +| +o Existing directory ----------------------------------------+ +| | +| Re-run with --force to overwrite matching template files. | +| | ++-------------------------------------------------------------+ +| +— App scaffold stopped before writing files. + diff --git a/evidence/current-consumer-20260905/operator/locked-final-checks.json b/evidence/current-consumer-20260905/operator/locked-final-checks.json new file mode 100644 index 0000000..b8993f3 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-final-checks.json @@ -0,0 +1,35 @@ +[ + { + "name": "locked-source-test", + "command": [ + "npm.cmd", + "test" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 1.9538378715515137 + }, + { + "name": "locked-generated-audit", + "command": [ + "npm.cmd", + "audit", + "--json" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked Chat app", + "exit": 1, + "seconds": 1.4180843830108643 + }, + { + "name": "locked-generated-production-audit", + "command": [ + "npm.cmd", + "audit", + "--omit=dev", + "--json" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked Chat app", + "exit": 0, + "seconds": 1.0734152793884277 + } +] diff --git a/evidence/current-consumer-20260905/operator/locked-generated-audit.stderr b/evidence/current-consumer-20260905/operator/locked-generated-audit.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/locked-generated-audit.stdout b/evidence/current-consumer-20260905/operator/locked-generated-audit.stdout new file mode 100644 index 0000000..93f4554 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-generated-audit.stdout @@ -0,0 +1,189 @@ +{ + "auditReportVersion": 2, + "vulnerabilities": { + "browserslist": { + "name": "browserslist", + "severity": "high", + "isDirect": false, + "via": [ + { + "source": 1153171, + "name": "browserslist", + "dependency": "browserslist", + "title": "Browserslist: Unbounded memory growth (no cache eviction) via distinct query results, leading to eventual OOM", + "url": "https://github.com/advisories/GHSA-c83g-rgw3-j3cx", + "severity": "high", + "cwe": [ + "CWE-770" + ], + "cvss": { + "score": 7.5, + "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H" + }, + "range": "<=4.28.6" + }, + { + "source": 1153172, + "name": "browserslist", + "dependency": "browserslist", + "title": "Browserslist: Uncaught crash / prototype write via untrusted browserslist-stats.json custom stats (normalizeStats)", + "url": "https://github.com/advisories/GHSA-73wf-gq98-2v4g", + "severity": "high", + "cwe": [ + "CWE-248", + "CWE-1321" + ], + "cvss": { + "score": 7.5, + "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H" + }, + "range": "<=4.28.6" + } + ], + "effects": [], + "range": "<=4.28.6", + "nodes": [ + "node_modules/browserslist" + ], + "fixAvailable": true + }, + "esbuild": { + "name": "esbuild", + "severity": "low", + "isDirect": false, + "via": [ + { + "source": 1120680, + "name": "esbuild", + "dependency": "esbuild", + "title": "esbuild allows arbitrary file read when running the development server on Windows", + "url": "https://github.com/advisories/GHSA-g7r4-m6w7-qqqr", + "severity": "low", + "cwe": [ + "CWE-22" + ], + "cvss": { + "score": 2.5, + "vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N" + }, + "range": ">=0.27.3 <0.28.1" + } + ], + "effects": [], + "range": "0.27.3 - 0.28.0", + "nodes": [ + "node_modules/tsx/node_modules/esbuild" + ], + "fixAvailable": true + }, + "nanoid": { + "name": "nanoid", + "severity": "high", + "isDirect": false, + "via": [ + { + "source": 1138811, + "name": "nanoid", + "dependency": "nanoid", + "title": "nanoid: non-secure generators can loop indefinitely with negative size", + "url": "https://github.com/advisories/GHSA-28wg-ghj8-5hjv", + "severity": "high", + "cwe": [ + "CWE-835" + ], + "cvss": { + "score": 5.9, + "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H" + }, + "range": "<3.3.16" + }, + { + "source": 1139427, + "name": "nanoid", + "dependency": "nanoid", + "title": "nanoid: custom generators can loop indefinitely when size is zero", + "url": "https://github.com/advisories/GHSA-2v37-7h3g-55p8", + "severity": "high", + "cwe": [ + "CWE-835" + ], + "cvss": { + "score": 5.9, + "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H" + }, + "range": "<3.3.18" + } + ], + "effects": [], + "range": "<=3.3.17", + "nodes": [ + "node_modules/nanoid" + ], + "fixAvailable": true + }, + "postcss": { + "name": "postcss", + "severity": "high", + "isDirect": false, + "via": [ + { + "source": 1130709, + "name": "postcss", + "dependency": "postcss", + "title": "PostCSS: incomplete fix of GHSA-6g55-p6wh-862q — attacker-controlled sourceMappingURL reads arbitrary .map files when `from` is unset", + "url": "https://github.com/advisories/GHSA-fxqj-rqcc-2cmp", + "severity": "moderate", + "cwe": [ + "CWE-22", + "CWE-200" + ], + "cvss": { + "score": 0, + "vectorString": null + }, + "range": "<=8.5.22" + }, + { + "source": 1139510, + "name": "postcss", + "dependency": "postcss", + "title": "PostCSS: Path Traversal in Previous Source Map Auto-Loading (sourceMappingURL) leads to Arbitrary .map File Disclosure", + "url": "https://github.com/advisories/GHSA-r28c-9q8g-f849", + "severity": "high", + "cwe": [ + "CWE-22" + ], + "cvss": { + "score": 7.5, + "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N" + }, + "range": "<=8.5.17" + } + ], + "effects": [], + "range": "<=8.5.22", + "nodes": [ + "node_modules/postcss" + ], + "fixAvailable": true + } + }, + "metadata": { + "vulnerabilities": { + "info": 0, + "low": 1, + "moderate": 0, + "high": 3, + "critical": 0, + "total": 4 + }, + "dependencies": { + "prod": 211, + "dev": 142, + "optional": 86, + "peer": 34, + "peerOptional": 0, + "total": 355 + } + } +} diff --git a/evidence/current-consumer-20260905/operator/locked-generated-production-audit.stderr b/evidence/current-consumer-20260905/operator/locked-generated-production-audit.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/locked-generated-production-audit.stdout b/evidence/current-consumer-20260905/operator/locked-generated-production-audit.stdout new file mode 100644 index 0000000..0bc1eea --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-generated-production-audit.stdout @@ -0,0 +1,22 @@ +{ + "auditReportVersion": 2, + "vulnerabilities": {}, + "metadata": { + "vulnerabilities": { + "info": 0, + "low": 0, + "moderate": 0, + "high": 0, + "critical": 0, + "total": 0 + }, + "dependencies": { + "prod": 211, + "dev": 142, + "optional": 86, + "peer": 34, + "peerOptional": 0, + "total": 355 + } + } +} diff --git a/evidence/current-consumer-20260905/operator/locked-host-install.stderr b/evidence/current-consumer-20260905/operator/locked-host-install.stderr new file mode 100644 index 0000000..5b68026 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-host-install.stderr @@ -0,0 +1 @@ +npm warn deprecated prebuild-install@7.1.3: No longer maintained. Please contact the author of the relevant native addon; alternatives are available. diff --git a/evidence/current-consumer-20260905/operator/locked-host-install.stdout b/evidence/current-consumer-20260905/operator/locked-host-install.stdout new file mode 100644 index 0000000..aa9df11 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-host-install.stdout @@ -0,0 +1,7 @@ + +added 153 packages, and audited 154 packages in 18s + +13 packages are looking for funding + run `npm fund` for details + +found 0 vulnerabilities diff --git a/evidence/current-consumer-20260905/operator/locked-installed-consumer.json b/evidence/current-consumer-20260905/operator/locked-installed-consumer.json new file mode 100644 index 0000000..f9fc417 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-installed-consumer.json @@ -0,0 +1,1040 @@ +{ + "tarball": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked package 01\\nodeagent-0.1.0.tgz", + "tarballSha256": "e57bd0b04c81bda8dd766ef49f0d877de63c882efe40ee982f2e373c05021040", + "sourceHead": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "authoredDelta": "examples/apps/chat-ui/template/package-lock.json", + "sourceTarInstalledBindings": [ + { + "path": ".gitattributes", + "sha256": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5" + }, + { + "path": "examples/apps/local-dashboard/template/docs/eval/.gitkeep", + "sha256": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b" + }, + { + "path": "examples/apps/chat-ui/template/src/styles.css", + "sha256": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e" + }, + { + "path": "examples/apps/local-dashboard/template/src/styles.css", + "sha256": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a" + }, + { + "path": "src/app/styles.css", + "sha256": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5" + }, + { + "path": ".env.example", + "sha256": "cbe8a0df460b2a420d9ce3f2fc88261999f432374839ffe95d1ca5e8b116902e" + }, + { + "path": "examples/adapters/aws-dynamodb/.env.example", + "sha256": "43675a1deb0b3f9fb82256f19a497147a68809cbc6e5fca467b5679acf71d8f7" + }, + { + "path": "examples/adapters/cloudflare/.env.example", + "sha256": "bf4bb1cfe83fc48e895a23f1c8bd1c2f6b2730eab6864dde60df3475cffb68e1" + }, + { + "path": "examples/adapters/convex/.env.example", + "sha256": "ecbc47b8fba9ce00ec57f3506bd7519ef1d0c5af5de3e04eb652a7189ccff960" + }, + { + "path": "examples/adapters/postgres/.env.example", + "sha256": "eded16363fb6a59b73111ad262699ee33ab47d20abde1bf02ba5cecfc5d60e9f" + }, + { + "path": "examples/adapters/sqlite-local/.env.example", + "sha256": "1ee0e3f9ff3184fe6c4188238324ac81eb25bd099f66740063bdd0657c2f1a8e" + }, + { + "path": "examples/apps/chat-ui/template/.env.example", + "sha256": "87c08c127a703d1a0c959d1ecd6f7896f580f7cad7f0225d467d470acddb97a4" + }, + { + "path": "examples/apps/local-dashboard/template/.env.example", + "sha256": "8c474b226d4a2b29970f0ef817ff6b3c8a3e1b8706a850307d099d2c19d55863" + }, + { + "path": "examples/apps/minimal-portable-agent/.env.example", + "sha256": "c2e1fd0344b9bb9d776c7a14b9a0d1b700bf921d5c75643a7c61548e65ea8c9c" + }, + { + "path": "docs/media/live-graph-rail.gif", + "sha256": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e" + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif", + "sha256": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf" + }, + { + "path": "examples/apps/chat-ui/template/index.html", + "sha256": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50" + }, + { + "path": "examples/apps/local-dashboard/template/index.html", + "sha256": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0" + }, + { + "path": "index.html", + "sha256": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d" + }, + { + "path": "nodeagent-v1.html", + "sha256": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883" + }, + { + "path": "vendor/nodegraph-live/graph-model.js", + "sha256": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b" + }, + { + "path": "vendor/nodegraph-live/index.js", + "sha256": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969" + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "sha256": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js", + "sha256": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df" + }, + { + "path": "vendor/nodegraph-live/react.js", + "sha256": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff" + }, + { + "path": "vendor/nodegraph-live/session.js", + "sha256": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282" + }, + { + "path": "promotion/evidence/axe-initial-prefix.json", + "sha256": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644" + }, + { + "path": "promotion/evidence/axe-initial.json", + "sha256": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1" + }, + { + "path": "promotion/evidence/axe-populated-axe-1440.json", + "sha256": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1" + }, + { + "path": "promotion/evidence/axe-populated-keyboard-375.json", + "sha256": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064" + }, + { + "path": "promotion/evidence/axe-populated-prefix-keyboard-375.json", + "sha256": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2" + }, + { + "path": "promotion/evidence/baseline-observations.json", + "sha256": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63" + }, + { + "path": "examples/adapters/aws-dynamodb/iam-policy.template.json", + "sha256": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7" + }, + { + "path": "promotion/evidence/journey-1440-observations.json", + "sha256": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113" + }, + { + "path": "promotion/evidence/journey-375-observations.json", + "sha256": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab" + }, + { + "path": "promotion/evidence/journey-375-steering-observations.json", + "sha256": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335" + }, + { + "path": "promotion/evidence/journey-768-observations.json", + "sha256": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce" + }, + { + "path": "promotion/evidence/journey-960-observations.json", + "sha256": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c" + }, + { + "path": "promotion/evidence/journey-axe-1440-observations.json", + "sha256": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb" + }, + { + "path": "promotion/evidence/journey-keyboard-375-observations.json", + "sha256": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92" + }, + { + "path": "promotion/evidence/journey-prefix-375-observations.json", + "sha256": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f" + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-observations.json", + "sha256": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc" + }, + { + "path": "promotion/evidence/journey-wave3-1440-observations.json", + "sha256": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b" + }, + { + "path": "promotion/evidence/journey-wave3-375-observations.json", + "sha256": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468" + }, + { + "path": "knip.json", + "sha256": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500" + }, + { + "path": "promotion/evidence/lighthouse-desktop.json", + "sha256": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d" + }, + { + "path": "promotion/evidence/lighthouse-mobile.json", + "sha256": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1" + }, + { + "path": "examples/apps/chat-ui/template/public/nodeagent-chat-state.json", + "sha256": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda" + }, + { + "path": "docs/eval/nodeagent-chat-ui-scaffold-smoke.json", + "sha256": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd" + }, + { + "path": "docs/eval/nodeagent-convex-smoke.json", + "sha256": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26" + }, + { + "path": "docs/eval/nodeagent-durable-smoke.json", + "sha256": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272" + }, + { + "path": "docs/eval/nodeagent-frame-smoke.json", + "sha256": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79" + }, + { + "path": "docs/eval/nodeagent-happy-path-speed.json", + "sha256": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40" + }, + { + "path": "docs/eval/nodeagent-live-provider-smoke.json", + "sha256": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf" + }, + { + "path": "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json", + "sha256": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d" + }, + { + "path": "docs/eval/nodeagent-sqlite-smoke.json", + "sha256": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb" + }, + { + "path": "examples/apps/local-dashboard/template/public/nodeagent-state.json", + "sha256": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb" + }, + { + "path": "docs/eval/omnigent-nodeagent-smoke.json", + "sha256": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef" + }, + { + "path": "docs/eval/omnigent-official-cli-probe.json", + "sha256": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c" + }, + { + "path": "examples/apps/chat-ui/template/package-lock.json", + "sha256": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6" + }, + { + "path": "examples/apps/chat-ui/template/package.json", + "sha256": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9" + }, + { + "path": "examples/apps/local-dashboard/template/package.json", + "sha256": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633" + }, + { + "path": "package.json", + "sha256": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e" + }, + { + "path": "tsconfig.json", + "sha256": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b" + }, + { + "path": "promotion/evidence/web-quality-audit-prefix.json", + "sha256": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc" + }, + { + "path": "promotion/evidence/web-quality-audit.json", + "sha256": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542" + }, + { + "path": "promotion/evidence/wig-review-prefix.json", + "sha256": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02" + }, + { + "path": "promotion/evidence/wig-review.json", + "sha256": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539" + }, + { + "path": "examples/adapters/cloudflare/wrangler.example.jsonc", + "sha256": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20" + }, + { + "path": "examples/apps/chat-ui/template/src/main.jsx", + "sha256": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f" + }, + { + "path": "examples/apps/local-dashboard/template/src/main.jsx", + "sha256": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f" + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "sha256": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15" + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "sha256": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216" + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts.map", + "sha256": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2" + }, + { + "path": "vendor/nodegraph-live/graph-model.js.map", + "sha256": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db" + }, + { + "path": "vendor/nodegraph-live/index.d.ts.map", + "sha256": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a" + }, + { + "path": "vendor/nodegraph-live/index.js.map", + "sha256": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts.map", + "sha256": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js.map", + "sha256": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776" + }, + { + "path": "vendor/nodegraph-live/react.d.ts.map", + "sha256": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab" + }, + { + "path": "vendor/nodegraph-live/react.js.map", + "sha256": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575" + }, + { + "path": "vendor/nodegraph-live/session.d.ts.map", + "sha256": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f" + }, + { + "path": "vendor/nodegraph-live/session.js.map", + "sha256": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881" + }, + { + "path": "examples/adapters/AGENTS.md", + "sha256": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9" + }, + { + "path": "examples/apps/chat-ui/template/AGENTS.md", + "sha256": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7" + }, + { + "path": "examples/apps/local-dashboard/template/AGENTS.md", + "sha256": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0" + }, + { + "path": "examples/apps/minimal-portable-agent/AGENTS.md", + "sha256": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df" + }, + { + "path": "docs/ARCHITECTURE.md", + "sha256": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055" + }, + { + "path": "docs/codebase/ARCHITECTURE.md", + "sha256": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99" + }, + { + "path": "docs/CHAT_UI_ADOPTION.md", + "sha256": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7" + }, + { + "path": "docs/codebase/CONCERNS.md", + "sha256": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb" + }, + { + "path": "docs/codebase/CONVENTIONS.md", + "sha256": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8" + }, + { + "path": "docs/DEMO_SCRIPT.md", + "sha256": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2" + }, + { + "path": "docs/DURABLE_RUNTIME.md", + "sha256": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76" + }, + { + "path": "docs/FEATURE_PROOF_STORYBOARD.md", + "sha256": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6" + }, + { + "path": "docs/GRAPH_INTEGRATION.md", + "sha256": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1" + }, + { + "path": "docs/codebase/INTEGRATIONS.md", + "sha256": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06" + }, + { + "path": "docs/LOCAL_DASHBOARD_WALKTHROUGH.md", + "sha256": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847" + }, + { + "path": "docs/MIGRATION_MAP.md", + "sha256": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a" + }, + { + "path": "NODE-LOOPS.md", + "sha256": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80" + }, + { + "path": "docs/OMNIGENT_INTEGRATION.md", + "sha256": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0" + }, + { + "path": "promotion/PRODUCT_GOAL.md", + "sha256": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812" + }, + { + "path": "promotion/PRODUCT_JOURNEYS.md", + "sha256": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9" + }, + { + "path": "promotion/PROMOTION_LOG.md", + "sha256": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f" + }, + { + "path": "docs/PUSH_TO_GITHUB.md", + "sha256": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2" + }, + { + "path": "examples/adapters/aws-dynamodb/README.md", + "sha256": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4" + }, + { + "path": "examples/adapters/cloudflare/README.md", + "sha256": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e" + }, + { + "path": "examples/adapters/convex/README.md", + "sha256": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b" + }, + { + "path": "examples/adapters/postgres/README.md", + "sha256": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434" + }, + { + "path": "examples/adapters/README.md", + "sha256": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2" + }, + { + "path": "examples/adapters/sqlite-local/README.md", + "sha256": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02" + }, + { + "path": "examples/apps/aws-hackathon-visual-labs/README.md", + "sha256": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df" + }, + { + "path": "examples/apps/chat-ui/README.md", + "sha256": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9" + }, + { + "path": "examples/apps/chat-ui/template/README.md", + "sha256": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b" + }, + { + "path": "examples/apps/local-dashboard/README.md", + "sha256": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1" + }, + { + "path": "examples/apps/local-dashboard/template/README.md", + "sha256": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761" + }, + { + "path": "examples/apps/local-design-dashboard/README.md", + "sha256": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc" + }, + { + "path": "examples/apps/minimal-portable-agent/README.md", + "sha256": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7" + }, + { + "path": "examples/apps/README.md", + "sha256": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94" + }, + { + "path": "examples/apps/video-agent-pipeline/README.md", + "sha256": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92" + }, + { + "path": "README.md", + "sha256": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140" + }, + { + "path": "vendor/nodegraph-live/README.md", + "sha256": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241" + }, + { + "path": "docs/SIMPLIFICATION_REPORT.md", + "sha256": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf" + }, + { + "path": "promotion/SKILLS.md", + "sha256": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797" + }, + { + "path": "docs/codebase/STACK.md", + "sha256": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef" + }, + { + "path": "docs/START_HERE.md", + "sha256": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54" + }, + { + "path": "docs/codebase/STRUCTURE.md", + "sha256": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511" + }, + { + "path": "docs/TECH_RETRO.md", + "sha256": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f" + }, + { + "path": "docs/codebase/TESTING.md", + "sha256": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0" + }, + { + "path": "promotion/WIG_REVIEW.md", + "sha256": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d" + }, + { + "path": "e2e/audit-web-quality.mjs", + "sha256": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf" + }, + { + "path": "scripts/build-tours.mjs", + "sha256": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db" + }, + { + "path": "e2e/capture-journey-at-width.mjs", + "sha256": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68" + }, + { + "path": "e2e/capture-live-graph-rail.mjs", + "sha256": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002" + }, + { + "path": "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs", + "sha256": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28" + }, + { + "path": "e2e/current-consumer-proof.mjs", + "sha256": "1f74cbdf16dd807444c0986cc65063732b273c49eb48c260dabedbaa4d6e0c4d" + }, + { + "path": "bin/nodeagent.mjs", + "sha256": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d" + }, + { + "path": "scripts/omnigent-official-probe.mjs", + "sha256": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924" + }, + { + "path": "e2e/record-live-graph-rail.mjs", + "sha256": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9" + }, + { + "path": "scripts/render-walkthrough-media.mjs", + "sha256": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7" + }, + { + "path": "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs", + "sha256": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f" + }, + { + "path": "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs", + "sha256": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50" + }, + { + "path": "scripts/secret-scan.mjs", + "sha256": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea" + }, + { + "path": "scripts/validate-tours.mjs", + "sha256": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46" + }, + { + "path": "examples/apps/chat-ui/template/vite.config.mjs", + "sha256": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a" + }, + { + "path": "examples/apps/local-dashboard/template/vite.config.mjs", + "sha256": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984" + }, + { + "path": "e2e/wig-review.mjs", + "sha256": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155" + }, + { + "path": "docs/media/live-graph-rail.mp4", + "sha256": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c" + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4", + "sha256": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5" + }, + { + "path": "docs/screenshots/chat-desktop-empty.png", + "sha256": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a" + }, + { + "path": "docs/screenshots/chat-desktop-run.png", + "sha256": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e" + }, + { + "path": "docs/screenshots/chat-mobile-empty.png", + "sha256": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be" + }, + { + "path": "docs/screenshots/chat-mobile-run.png", + "sha256": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2" + }, + { + "path": "promotion/evidence/desktop-1440-agent-running.png", + "sha256": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535" + }, + { + "path": "promotion/evidence/desktop-1440-empty.png", + "sha256": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b" + }, + { + "path": "promotion/evidence/desktop-1440-keyboard-run.png", + "sha256": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7" + }, + { + "path": "promotion/evidence/desktop-1440-run.png", + "sha256": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35" + }, + { + "path": "promotion/evidence/desktop-1440-second-turn.png", + "sha256": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72" + }, + { + "path": "promotion/evidence/journey-1440-run.png", + "sha256": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3" + }, + { + "path": "promotion/evidence/journey-375-run.png", + "sha256": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b" + }, + { + "path": "promotion/evidence/journey-375-steering-run.png", + "sha256": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f" + }, + { + "path": "promotion/evidence/journey-768-run.png", + "sha256": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce" + }, + { + "path": "promotion/evidence/journey-960-run.png", + "sha256": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b" + }, + { + "path": "promotion/evidence/journey-axe-1440-run.png", + "sha256": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1" + }, + { + "path": "promotion/evidence/journey-keyboard-375-run.png", + "sha256": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148" + }, + { + "path": "promotion/evidence/journey-prefix-375-run.png", + "sha256": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510" + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-run.png", + "sha256": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b" + }, + { + "path": "promotion/evidence/journey-wave3-1440-run.png", + "sha256": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e" + }, + { + "path": "promotion/evidence/journey-wave3-375-run.png", + "sha256": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca" + }, + { + "path": "docs/media/live-graph-rail.png", + "sha256": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d" + }, + { + "path": "docs/screenshots/local-dashboard-builder-locked.png", + "sha256": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85" + }, + { + "path": "docs/screenshots/local-dashboard-overview.png", + "sha256": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248" + }, + { + "path": "promotion/evidence/mobile-375-empty.png", + "sha256": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820" + }, + { + "path": "promotion/evidence/mobile-375-run.png", + "sha256": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510" + }, + { + "path": "promotion/evidence/proto-1440-load.png", + "sha256": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7" + }, + { + "path": "promotion/evidence/proto-375-load.png", + "sha256": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80" + }, + { + "path": "promotion/evidence/proto-375-run.png", + "sha256": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d" + }, + { + "path": "docs/screenshots/proto-desktop-empty.png", + "sha256": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482" + }, + { + "path": "docs/screenshots/proto-desktop-run.png", + "sha256": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9" + }, + { + "path": "docs/screenshots/proto-mobile-empty.png", + "sha256": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0" + }, + { + "path": "docs/screenshots/proto-mobile-run.png", + "sha256": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da" + }, + { + "path": "promotion/evidence/wig-desktop-1440.png", + "sha256": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782" + }, + { + "path": "promotion/evidence/wig-mobile-375.png", + "sha256": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b" + }, + { + "path": "promotion/evidence/wig-prefix-desktop-1440.png", + "sha256": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e" + }, + { + "path": "promotion/evidence/wig-prefix-mobile-375.png", + "sha256": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf" + }, + { + "path": "examples/adapters/postgres/schema.sql", + "sha256": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0" + }, + { + "path": "examples/adapters/sqlite-local/schema.sql", + "sha256": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c" + }, + { + "path": ".tours/01-primary-user-flow.tour", + "sha256": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae" + }, + { + "path": ".tours/02-agent-execution.tour", + "sha256": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37" + }, + { + "path": ".tours/03-debug-and-recovery.tour", + "sha256": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94" + }, + { + "path": "src/features/node-agent/graph/agentGraphSession.ts", + "sha256": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389" + }, + { + "path": "src/features/spreadsheet/applySpreadsheetDelta.ts", + "sha256": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9" + }, + { + "path": "src/features/chat/contextCollector.ts", + "sha256": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94" + }, + { + "path": "src/features/node-agent/demoScenario.ts", + "sha256": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d" + }, + { + "path": "tests/durableRuntime.test.ts", + "sha256": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873" + }, + { + "path": "src/features/node-agent/runtime/durableRuntime.ts", + "sha256": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c" + }, + { + "path": "scripts/example-guidance-smoke.ts", + "sha256": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53" + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts", + "sha256": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c" + }, + { + "path": "vendor/nodegraph-live/index.d.ts", + "sha256": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47" + }, + { + "path": "scripts/nodeagent-chat-ui-scaffold-smoke.ts", + "sha256": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0" + }, + { + "path": "scripts/nodeagent-cli.ts", + "sha256": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6" + }, + { + "path": "scripts/nodeagent-convex-smoke.ts", + "sha256": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039" + }, + { + "path": "scripts/nodeagent-durable-smoke.ts", + "sha256": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21" + }, + { + "path": "scripts/nodeagent-frame-smoke.ts", + "sha256": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3" + }, + { + "path": "scripts/nodeagent-live-provider-smoke.ts", + "sha256": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282" + }, + { + "path": "scripts/nodeagent-local-dashboard-scaffold-smoke.ts", + "sha256": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f" + }, + { + "path": "scripts/nodeagent-sqlite-smoke.ts", + "sha256": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf" + }, + { + "path": "src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "sha256": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9" + }, + { + "path": "tests/nodeAgentRuntime.test.ts", + "sha256": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725" + }, + { + "path": "src/features/node-agent/runtime/nodeAgentRuntime.ts", + "sha256": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf" + }, + { + "path": "src/features/node-agent/types/nodeAgentTypes.ts", + "sha256": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69" + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts", + "sha256": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141" + }, + { + "path": "src/features/notebook/notebookEditor.ts", + "sha256": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456" + }, + { + "path": "scripts/omnigent-nodeagent-smoke.ts", + "sha256": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34" + }, + { + "path": "tests/omnigentAdapter.test.ts", + "sha256": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99" + }, + { + "path": "src/features/node-agent/runtime/omnigentAdapter.ts", + "sha256": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d" + }, + { + "path": "vendor/nodegraph-live/react.d.ts", + "sha256": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd" + }, + { + "path": "tests/reasoningFrameRunner.test.ts", + "sha256": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54" + }, + { + "path": "src/features/node-agent/runtime/reasoningFrameRunner.ts", + "sha256": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12" + }, + { + "path": "demo/runNodeAgentDemo.ts", + "sha256": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952" + }, + { + "path": "convex/schema.ts", + "sha256": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b" + }, + { + "path": "src/features/search/searchAndSynthesize.ts", + "sha256": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c" + }, + { + "path": "tests/searchSynthesize.test.ts", + "sha256": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3" + }, + { + "path": "vendor/nodegraph-live/session.d.ts", + "sha256": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a" + }, + { + "path": "tests/spreadsheetDelta.test.ts", + "sha256": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87" + }, + { + "path": "tests/sqliteDurableRuntime.test.ts", + "sha256": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a" + }, + { + "path": "examples/adapters/sqlite-local/sqliteDurableRuntime.ts", + "sha256": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269" + }, + { + "path": "src/features/spreadsheet/versionedSpreadsheetSync.ts", + "sha256": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95" + }, + { + "path": "vite.config.ts", + "sha256": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202" + }, + { + "path": "vitest.config.ts", + "sha256": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc" + }, + { + "path": "src/features/node-agent/components/GraphRailPanel.tsx", + "sha256": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32" + }, + { + "path": "src/app/main.tsx", + "sha256": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d" + }, + { + "path": "src/features/node-agent/components/NodeAgentDemoApp.tsx", + "sha256": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8" + }, + { + "path": "src/features/node-agent/components/NodeAgentThread.tsx", + "sha256": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936" + }, + { + "path": "src/features/node-agent/components/toolUIs.tsx", + "sha256": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc" + }, + { + "path": "examples/omnigent/nodeagent-reviewer.yaml", + "sha256": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90" + }, + { + "path": "examples/omnigent/nodeagent-worker.yaml", + "sha256": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d" + }, + { + "path": "nodekit.yaml", + "sha256": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841" + }, + { + "path": ".github/workflows/ci.yml", + "sha256": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425" + }, + { + "path": ".github/workflows/node-platform-conformance.yml", + "sha256": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1" + } + ], + "consumer": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked Chat app", + "generatedLockExact": true, + "templateFiles": 15, + "commands": [ + { + "name": "locked-source-pack", + "command": [ + "npm.cmd", + "pack", + "--json", + "--pack-destination", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked package 01" + ], + "cwd": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "exit": 0, + "seconds": 1.8401267528533936 + }, + { + "name": "locked-host-install", + "command": [ + "npm.cmd", + "install", + "--save-exact", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked package 01\\nodeagent-0.1.0.tgz" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host", + "exit": 0, + "seconds": 18.053833484649658 + }, + { + "name": "locked-installed-doctor", + "command": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "doctor" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host", + "exit": 0, + "seconds": 0.7991647720336914 + }, + { + "name": "locked-installed-scaffold", + "command": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "apps", + "scaffold", + "chat-ui", + "--dir", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked Chat app", + "--auto" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host", + "exit": 0, + "seconds": 29.339585065841675 + }, + { + "name": "locked-existing-target-refusal", + "command": [ + "node", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host\\node_modules\\nodeagent\\bin\\nodeagent.mjs", + "apps", + "scaffold", + "chat-ui", + "--dir", + "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked Chat app" + ], + "cwd": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked installed host", + "exit": 1, + "seconds": 0.08051729202270508 + } + ] +} diff --git a/evidence/current-consumer-20260905/operator/locked-installed-doctor.stderr b/evidence/current-consumer-20260905/operator/locked-installed-doctor.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/locked-installed-doctor.stdout b/evidence/current-consumer-20260905/operator/locked-installed-doctor.stdout new file mode 100644 index 0000000..6a51c3c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-installed-doctor.stdout @@ -0,0 +1,23 @@ +T NodeAgent Doctor +| +* found examples/apps/chat-ui/template/package.json +| +* found examples/apps/local-dashboard/template/package.json +| +* found examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx +| +* found examples/apps/local-dashboard/template/src/main.jsx +| +o Next -----------------------------------------------------------------------+ +| | +| No-key chat UI scaffold: | +| nodeagent apps scaffold chat-ui --dir nodeagent-chat-ui --auto | +| | +| No-key dashboard scaffold: | +| nodeagent apps scaffold local-dashboard --dir nodeagent-local-dashboard | +| --auto | +| | ++------------------------------------------------------------------------------+ +| +— Doctor passed. + diff --git a/evidence/current-consumer-20260905/operator/locked-installed-scaffold.stderr b/evidence/current-consumer-20260905/operator/locked-installed-scaffold.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/locked-installed-scaffold.stdout b/evidence/current-consumer-20260905/operator/locked-installed-scaffold.stdout new file mode 100644 index 0000000..0508406 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-installed-scaffold.stdout @@ -0,0 +1,44 @@ +T NodeAgent App Scaffold: chat-ui +| +* created D:\ProjectRecovery\NodeAgent current consumer 20260905\Locked Chat app (15 files) +[?25l| +o npm install +[?25h| +* install 6.52s +[?25l| +o npm run agent:demo +[?25h| +* agent demo 591ms +[?25l| +o npm run smoke +[?25h| +* smoke 430ms +[?25l| +o npm run build +[?25h| +* build 21.71s +| +* wrote D:\ProjectRecovery\NodeAgent current consumer 20260905\Locked Chat app\.nodeagent\setup-receipt.json +| +o Chat UI --------------------------------------------------------------------+ +| | +| No API keys are required for the first run. | +| The chat uses assistant-ui, a scripted local adapter, and inline NodeAgent | +| tool cards; replace the adapter with a server route when credentials | +| exist. | +| | +| Auto mode already ran install, agent demo, smoke, and build. | +| | +| | +| Run: | +| cd D:\ProjectRecovery\NodeAgent current consumer 20260905\Locked Chat | +| app | +| npm run dev | +| | +| Optional verification: | +| npm run smoke | +| | ++------------------------------------------------------------------------------+ +| +— Chat UI scaffold is ready. + diff --git a/evidence/current-consumer-20260905/operator/locked-source-pack.stderr b/evidence/current-consumer-20260905/operator/locked-source-pack.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/locked-source-pack.stdout b/evidence/current-consumer-20260905/operator/locked-source-pack.stdout new file mode 100644 index 0000000..6ed22fe --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-source-pack.stdout @@ -0,0 +1,1216 @@ +[ + { + "id": "nodeagent@0.1.0", + "name": "nodeagent", + "version": "0.1.0", + "size": 8710525, + "unpackedSize": 10869593, + "shasum": "93de2b057c64e6ea61f0efd30e77c4cc99283342", + "integrity": "sha512-/SlIt6U1y3T6Kk1m/+/VhrkeIA1vZpIIKV7iITBzVSWr/1Jtt34/6XFh1XBU7gMDTih+yPKlVCaqy2ul4EyyUQ==", + "filename": "nodeagent-0.1.0.tgz", + "files": [ + { + "path": ".env.example", + "size": 2059, + "mode": 420 + }, + { + "path": ".gitattributes", + "size": 230, + "mode": 420 + }, + { + "path": ".github/workflows/ci.yml", + "size": 1007, + "mode": 420 + }, + { + "path": ".github/workflows/node-platform-conformance.yml", + "size": 245, + "mode": 420 + }, + { + "path": ".tours/01-primary-user-flow.tour", + "size": 4743, + "mode": 420 + }, + { + "path": ".tours/02-agent-execution.tour", + "size": 4419, + "mode": 420 + }, + { + "path": ".tours/03-debug-and-recovery.tour", + "size": 4149, + "mode": 420 + }, + { + "path": "NODE-LOOPS.md", + "size": 18453, + "mode": 420 + }, + { + "path": "README.md", + "size": 24923, + "mode": 420 + }, + { + "path": "bin/nodeagent.mjs", + "size": 9925, + "mode": 420 + }, + { + "path": "convex/schema.ts", + "size": 6450, + "mode": 420 + }, + { + "path": "demo/runNodeAgentDemo.ts", + "size": 3047, + "mode": 420 + }, + { + "path": "docs/ARCHITECTURE.md", + "size": 23278, + "mode": 420 + }, + { + "path": "docs/CHAT_UI_ADOPTION.md", + "size": 2472, + "mode": 420 + }, + { + "path": "docs/codebase/ARCHITECTURE.md", + "size": 6793, + "mode": 420 + }, + { + "path": "docs/codebase/CONCERNS.md", + "size": 7265, + "mode": 420 + }, + { + "path": "docs/codebase/CONVENTIONS.md", + "size": 4354, + "mode": 420 + }, + { + "path": "docs/codebase/INTEGRATIONS.md", + "size": 4605, + "mode": 420 + }, + { + "path": "docs/codebase/STACK.md", + "size": 3543, + "mode": 420 + }, + { + "path": "docs/codebase/STRUCTURE.md", + "size": 4452, + "mode": 420 + }, + { + "path": "docs/codebase/TESTING.md", + "size": 5470, + "mode": 420 + }, + { + "path": "docs/DEMO_SCRIPT.md", + "size": 13073, + "mode": 420 + }, + { + "path": "docs/DURABLE_RUNTIME.md", + "size": 4339, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-chat-ui-scaffold-smoke.json", + "size": 940, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-convex-smoke.json", + "size": 292, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-durable-smoke.json", + "size": 798, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-frame-smoke.json", + "size": 513, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-happy-path-speed.json", + "size": 1389, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-live-provider-smoke.json", + "size": 375, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json", + "size": 796, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-sqlite-smoke.json", + "size": 915, + "mode": 420 + }, + { + "path": "docs/eval/omnigent-nodeagent-smoke.json", + "size": 4911, + "mode": 420 + }, + { + "path": "docs/eval/omnigent-official-cli-probe.json", + "size": 3882, + "mode": 420 + }, + { + "path": "docs/FEATURE_PROOF_STORYBOARD.md", + "size": 2524, + "mode": 420 + }, + { + "path": "docs/GRAPH_INTEGRATION.md", + "size": 11246, + "mode": 420 + }, + { + "path": "docs/LOCAL_DASHBOARD_WALKTHROUGH.md", + "size": 3009, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.gif", + "size": 3752304, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.mp4", + "size": 752930, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.png", + "size": 153152, + "mode": 420 + }, + { + "path": "docs/MIGRATION_MAP.md", + "size": 6228, + "mode": 420 + }, + { + "path": "docs/OMNIGENT_INTEGRATION.md", + "size": 3501, + "mode": 420 + }, + { + "path": "docs/PUSH_TO_GITHUB.md", + "size": 3458, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-desktop-empty.png", + "size": 73151, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-desktop-run.png", + "size": 109697, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-mobile-empty.png", + "size": 49168, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-mobile-run.png", + "size": 72898, + "mode": 420 + }, + { + "path": "docs/screenshots/local-dashboard-builder-locked.png", + "size": 77366, + "mode": 420 + }, + { + "path": "docs/screenshots/local-dashboard-overview.png", + "size": 99852, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-desktop-empty.png", + "size": 104196, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-desktop-run.png", + "size": 292952, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-mobile-empty.png", + "size": 74915, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-mobile-run.png", + "size": 254578, + "mode": 420 + }, + { + "path": "docs/SIMPLIFICATION_REPORT.md", + "size": 19108, + "mode": 420 + }, + { + "path": "docs/START_HERE.md", + "size": 17384, + "mode": 420 + }, + { + "path": "docs/TECH_RETRO.md", + "size": 7418, + "mode": 420 + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif", + "size": 179310, + "mode": 420 + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4", + "size": 63733, + "mode": 420 + }, + { + "path": "e2e/audit-web-quality.mjs", + "size": 8040, + "mode": 420 + }, + { + "path": "e2e/capture-journey-at-width.mjs", + "size": 14569, + "mode": 420 + }, + { + "path": "e2e/capture-live-graph-rail.mjs", + "size": 3581, + "mode": 420 + }, + { + "path": "e2e/current-consumer-proof.mjs", + "size": 12436, + "mode": 420 + }, + { + "path": "e2e/record-live-graph-rail.mjs", + "size": 4094, + "mode": 420 + }, + { + "path": "e2e/wig-review.mjs", + "size": 13334, + "mode": 420 + }, + { + "path": "examples/adapters/AGENTS.md", + "size": 992, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/.env.example", + "size": 119, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/iam-policy.template.json", + "size": 741, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/README.md", + "size": 2892, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/.env.example", + "size": 114, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/README.md", + "size": 2583, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/wrangler.example.jsonc", + "size": 632, + "mode": 420 + }, + { + "path": "examples/adapters/convex/.env.example", + "size": 141, + "mode": 420 + }, + { + "path": "examples/adapters/convex/README.md", + "size": 2758, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/.env.example", + "size": 68, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/README.md", + "size": 2491, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/schema.sql", + "size": 1455, + "mode": 420 + }, + { + "path": "examples/adapters/README.md", + "size": 3284, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/.env.example", + "size": 142, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/README.md", + "size": 2132, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/schema.sql", + "size": 1408, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/sqliteDurableRuntime.ts", + "size": 13915, + "mode": 420 + }, + { + "path": "examples/apps/aws-hackathon-visual-labs/README.md", + "size": 1769, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/README.md", + "size": 2782, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/.env.example", + "size": 181, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/AGENTS.md", + "size": 966, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/index.html", + "size": 304, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/package-lock.json", + "size": 235233, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/package.json", + "size": 558, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/public/nodeagent-chat-state.json", + "size": 227, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/README.md", + "size": 2170, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs", + "size": 2953, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs", + "size": 1251, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/main.jsx", + "size": 296, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "size": 4280, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "size": 4251, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "size": 3350, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/styles.css", + "size": 6410, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/vite.config.mjs", + "size": 176, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/README.md", + "size": 3366, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/.env.example", + "size": 183, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/AGENTS.md", + "size": 693, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/docs/eval/.gitkeep", + "size": 1, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/index.html", + "size": 312, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/package.json", + "size": 613, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/public/nodeagent-state.json", + "size": 2228, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/README.md", + "size": 2440, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs", + "size": 7591, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/src/main.jsx", + "size": 8493, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/src/styles.css", + "size": 6174, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/vite.config.mjs", + "size": 192, + "mode": 420 + }, + { + "path": "examples/apps/local-design-dashboard/README.md", + "size": 1411, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/.env.example", + "size": 136, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/AGENTS.md", + "size": 287, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/README.md", + "size": 1771, + "mode": 420 + }, + { + "path": "examples/apps/README.md", + "size": 2011, + "mode": 420 + }, + { + "path": "examples/apps/video-agent-pipeline/README.md", + "size": 2115, + "mode": 420 + }, + { + "path": "examples/omnigent/nodeagent-reviewer.yaml", + "size": 811, + "mode": 420 + }, + { + "path": "examples/omnigent/nodeagent-worker.yaml", + "size": 886, + "mode": 420 + }, + { + "path": "index.html", + "size": 1273, + "mode": 420 + }, + { + "path": "knip.json", + "size": 1226, + "mode": 420 + }, + { + "path": "nodeagent-v1.html", + "size": 25839, + "mode": 420 + }, + { + "path": "nodekit.yaml", + "size": 1291, + "mode": 420 + }, + { + "path": "package.json", + "size": 5147, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-initial-prefix.json", + "size": 111936, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-initial.json", + "size": 112485, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-axe-1440.json", + "size": 697, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-keyboard-375.json", + "size": 677, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-prefix-keyboard-375.json", + "size": 3271, + "mode": 420 + }, + { + "path": "promotion/evidence/baseline-observations.json", + "size": 2602, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-agent-running.png", + "size": 68440, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-empty.png", + "size": 84064, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-keyboard-run.png", + "size": 162268, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-run.png", + "size": 162473, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-second-turn.png", + "size": 141629, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-observations.json", + "size": 971, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-run.png", + "size": 55980, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-steering-observations.json", + "size": 1035, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-steering-run.png", + "size": 54568, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-768-observations.json", + "size": 972, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-768-run.png", + "size": 108296, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-960-observations.json", + "size": 971, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-960-run.png", + "size": 102626, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-1440-observations.json", + "size": 975, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-1440-run.png", + "size": 142820, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-axe-1440-observations.json", + "size": 1576, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-axe-1440-run.png", + "size": 142664, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-keyboard-375-observations.json", + "size": 1827, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-keyboard-375-run.png", + "size": 56137, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-375-observations.json", + "size": 1421, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-375-run.png", + "size": 17874, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-observations.json", + "size": 4769, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-run.png", + "size": 61683, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-375-observations.json", + "size": 942, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-375-run.png", + "size": 61575, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-1440-observations.json", + "size": 946, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-1440-run.png", + "size": 143242, + "mode": 420 + }, + { + "path": "promotion/evidence/lighthouse-desktop.json", + "size": 507209, + "mode": 420 + }, + { + "path": "promotion/evidence/lighthouse-mobile.json", + "size": 538645, + "mode": 420 + }, + { + "path": "promotion/evidence/mobile-375-empty.png", + "size": 50419, + "mode": 420 + }, + { + "path": "promotion/evidence/mobile-375-run.png", + "size": 17874, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-375-load.png", + "size": 72242, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-375-run.png", + "size": 82707, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-1440-load.png", + "size": 106661, + "mode": 420 + }, + { + "path": "promotion/evidence/web-quality-audit-prefix.json", + "size": 6321, + "mode": 420 + }, + { + "path": "promotion/evidence/web-quality-audit.json", + "size": 5913, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-desktop-1440.png", + "size": 151387, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-mobile-375.png", + "size": 55383, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-prefix-desktop-1440.png", + "size": 151660, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-prefix-mobile-375.png", + "size": 67905, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-review-prefix.json", + "size": 13686, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-review.json", + "size": 13677, + "mode": 420 + }, + { + "path": "promotion/PRODUCT_GOAL.md", + "size": 12758, + "mode": 420 + }, + { + "path": "promotion/PRODUCT_JOURNEYS.md", + "size": 8759, + "mode": 420 + }, + { + "path": "promotion/PROMOTION_LOG.md", + "size": 21001, + "mode": 420 + }, + { + "path": "promotion/SKILLS.md", + "size": 1965, + "mode": 420 + }, + { + "path": "promotion/WIG_REVIEW.md", + "size": 10270, + "mode": 420 + }, + { + "path": "scripts/build-tours.mjs", + "size": 12094, + "mode": 420 + }, + { + "path": "scripts/example-guidance-smoke.ts", + "size": 6150, + "mode": 420 + }, + { + "path": "scripts/nodeagent-chat-ui-scaffold-smoke.ts", + "size": 6899, + "mode": 420 + }, + { + "path": "scripts/nodeagent-cli.ts", + "size": 12183, + "mode": 420 + }, + { + "path": "scripts/nodeagent-convex-smoke.ts", + "size": 3813, + "mode": 420 + }, + { + "path": "scripts/nodeagent-durable-smoke.ts", + "size": 3881, + "mode": 420 + }, + { + "path": "scripts/nodeagent-frame-smoke.ts", + "size": 1759, + "mode": 420 + }, + { + "path": "scripts/nodeagent-live-provider-smoke.ts", + "size": 12362, + "mode": 420 + }, + { + "path": "scripts/nodeagent-local-dashboard-scaffold-smoke.ts", + "size": 7620, + "mode": 420 + }, + { + "path": "scripts/nodeagent-sqlite-smoke.ts", + "size": 5087, + "mode": 420 + }, + { + "path": "scripts/omnigent-nodeagent-smoke.ts", + "size": 7796, + "mode": 420 + }, + { + "path": "scripts/omnigent-official-probe.mjs", + "size": 4419, + "mode": 420 + }, + { + "path": "scripts/render-walkthrough-media.mjs", + "size": 3784, + "mode": 420 + }, + { + "path": "scripts/secret-scan.mjs", + "size": 4589, + "mode": 420 + }, + { + "path": "scripts/validate-tours.mjs", + "size": 6395, + "mode": 420 + }, + { + "path": "src/app/main.tsx", + "size": 346, + "mode": 420 + }, + { + "path": "src/app/styles.css", + "size": 13641, + "mode": 420 + }, + { + "path": "src/features/chat/contextCollector.ts", + "size": 4882, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/GraphRailPanel.tsx", + "size": 1731, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/NodeAgentDemoApp.tsx", + "size": 2103, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/NodeAgentThread.tsx", + "size": 3401, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/toolUIs.tsx", + "size": 5635, + "mode": 420 + }, + { + "path": "src/features/node-agent/demoScenario.ts", + "size": 4339, + "mode": 420 + }, + { + "path": "src/features/node-agent/graph/agentGraphSession.ts", + "size": 5405, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/durableRuntime.ts", + "size": 16727, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "size": 5303, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/nodeAgentRuntime.ts", + "size": 6247, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/omnigentAdapter.ts", + "size": 5334, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/reasoningFrameRunner.ts", + "size": 4264, + "mode": 420 + }, + { + "path": "src/features/node-agent/types/nodeAgentTypes.ts", + "size": 7520, + "mode": 420 + }, + { + "path": "src/features/notebook/notebookEditor.ts", + "size": 3510, + "mode": 420 + }, + { + "path": "src/features/search/searchAndSynthesize.ts", + "size": 6871, + "mode": 420 + }, + { + "path": "src/features/spreadsheet/applySpreadsheetDelta.ts", + "size": 8449, + "mode": 420 + }, + { + "path": "src/features/spreadsheet/versionedSpreadsheetSync.ts", + "size": 3636, + "mode": 420 + }, + { + "path": "tests/durableRuntime.test.ts", + "size": 4594, + "mode": 420 + }, + { + "path": "tests/nodeAgentRuntime.test.ts", + "size": 3145, + "mode": 420 + }, + { + "path": "tests/omnigentAdapter.test.ts", + "size": 1690, + "mode": 420 + }, + { + "path": "tests/reasoningFrameRunner.test.ts", + "size": 1697, + "mode": 420 + }, + { + "path": "tests/searchSynthesize.test.ts", + "size": 4487, + "mode": 420 + }, + { + "path": "tests/spreadsheetDelta.test.ts", + "size": 6534, + "mode": 420 + }, + { + "path": "tests/sqliteDurableRuntime.test.ts", + "size": 3844, + "mode": 420 + }, + { + "path": "tsconfig.json", + "size": 864, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts", + "size": 6867, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts.map", + "size": 2448, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.js", + "size": 16285, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.js.map", + "size": 13998, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.d.ts", + "size": 546, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.d.ts.map", + "size": 514, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.js", + "size": 305, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.js.map", + "size": 306, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts", + "size": 1267, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts.map", + "size": 1312, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js", + "size": 30805, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js.map", + "size": 24655, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.d.ts", + "size": 187, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.d.ts.map", + "size": 238, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.js", + "size": 120, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.js.map", + "size": 186, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/README.md", + "size": 111, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.d.ts", + "size": 2813, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.d.ts.map", + "size": 1876, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.js", + "size": 11719, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.js.map", + "size": 12101, + "mode": 420 + }, + { + "path": "vite.config.ts", + "size": 769, + "mode": 420 + }, + { + "path": "vitest.config.ts", + "size": 530, + "mode": 420 + } + ], + "entryCount": 240, + "bundled": [] + } +] diff --git a/evidence/current-consumer-20260905/operator/locked-source-test.stderr b/evidence/current-consumer-20260905/operator/locked-source-test.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/locked-source-test.stdout b/evidence/current-consumer-20260905/operator/locked-source-test.stdout new file mode 100644 index 0000000..f060b63 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/locked-source-test.stdout @@ -0,0 +1,20 @@ + +> nodeagent@0.1.0 test +> vitest run + + + RUN  v2.1.9 D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905 + + ✓ tests/omnigentAdapter.test.ts (2 tests) 4ms + ✓ tests/spreadsheetDelta.test.ts (13 tests) 8ms + ✓ tests/searchSynthesize.test.ts (10 tests) 7ms + ✓ tests/reasoningFrameRunner.test.ts (2 tests) 6ms + ✓ tests/durableRuntime.test.ts (4 tests) 7ms + ✓ tests/nodeAgentRuntime.test.ts (8 tests) 5ms + ✓ tests/sqliteDurableRuntime.test.ts (2 tests) 98ms + + Test Files  7 passed (7) + Tests  41 passed (41) + Start at  00:52:37 + Duration  1.09s (transform 339ms, setup 0ms, collect 978ms, tests 135ms, environment 1ms, prepare 903ms) + diff --git a/evidence/current-consumer-20260905/operator/package-installed-bindings.json b/evidence/current-consumer-20260905/operator/package-installed-bindings.json new file mode 100644 index 0000000..50b66fd --- /dev/null +++ b/evidence/current-consumer-20260905/operator/package-installed-bindings.json @@ -0,0 +1,1746 @@ +{ + "sourceCommit": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "tarballSha256": "8e6c91ebde1abe8e9b2dd613a5c4c1184710ed29e73cf4352735282398bb3fce", + "sourcePackageInstalledBindings": [ + { + "path": ".gitattributes", + "sha256": "7d24510d29efb0bb23dc6507849c430d2eed29e78e972b9e96b8a0da66bba2c5", + "bytes": 230, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/local-dashboard/template/docs/eval/.gitkeep", + "sha256": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b", + "bytes": 1, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/src/styles.css", + "sha256": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "bytes": 6410, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/local-dashboard/template/src/styles.css", + "sha256": "18bcf7e4bb560eded6a6b668d7d43bcd58e161cfb4d8788afebfaebc5f6e325a", + "bytes": 6174, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/app/styles.css", + "sha256": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "bytes": 13641, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": ".env.example", + "sha256": "cbe8a0df460b2a420d9ce3f2fc88261999f432374839ffe95d1ca5e8b116902e", + "bytes": 2059, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/aws-dynamodb/.env.example", + "sha256": "43675a1deb0b3f9fb82256f19a497147a68809cbc6e5fca467b5679acf71d8f7", + "bytes": 119, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/cloudflare/.env.example", + "sha256": "bf4bb1cfe83fc48e895a23f1c8bd1c2f6b2730eab6864dde60df3475cffb68e1", + "bytes": 114, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/convex/.env.example", + "sha256": "ecbc47b8fba9ce00ec57f3506bd7519ef1d0c5af5de3e04eb652a7189ccff960", + "bytes": 141, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/postgres/.env.example", + "sha256": "eded16363fb6a59b73111ad262699ee33ab47d20abde1bf02ba5cecfc5d60e9f", + "bytes": 68, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/sqlite-local/.env.example", + "sha256": "1ee0e3f9ff3184fe6c4188238324ac81eb25bd099f66740063bdd0657c2f1a8e", + "bytes": 142, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/.env.example", + "sha256": "87c08c127a703d1a0c959d1ecd6f7896f580f7cad7f0225d467d470acddb97a4", + "bytes": 181, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/local-dashboard/template/.env.example", + "sha256": "8c474b226d4a2b29970f0ef817ff6b3c8a3e1b8706a850307d099d2c19d55863", + "bytes": 183, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/minimal-portable-agent/.env.example", + "sha256": "c2e1fd0344b9bb9d776c7a14b9a0d1b700bf921d5c75643a7c61548e65ea8c9c", + "bytes": 136, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/media/live-graph-rail.gif", + "sha256": "8b3c9cf2c1d9b74c3184144315de24006333e400f0847a481fb2858aeb5f167e", + "bytes": 3752304, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif", + "sha256": "7f6b95e318a12616c3d3aaef36148d4c100485fbba0e6f4a477ab7185478dedf", + "bytes": 179310, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/index.html", + "sha256": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "bytes": 304, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/local-dashboard/template/index.html", + "sha256": "e43f5f41df5efffad72701ae0eae1bb048ce61275c91f37be1dd12f6446ee3c0", + "bytes": 312, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "index.html", + "sha256": "8b6c4cc13f3ff1c50e46d302092cccded55f2f0e37ce651ba11080e0940b9f0d", + "bytes": 1273, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "nodeagent-v1.html", + "sha256": "ab7ebcf897f035fe7637a89bf4a08deb1bd70385756b56c0a2b1b132738e3883", + "bytes": 25839, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/graph-model.js", + "sha256": "f599d5677230abb22134ccc6554c19b53161c92170a764d15a3f33b9ff8a3d6b", + "bytes": 16285, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/index.js", + "sha256": "3617688e70d3583ed7295795c19597b20e7f300d0ca18004a0d639d2ee1e8969", + "bytes": 305, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "sha256": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "bytes": 4251, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js", + "sha256": "48986620b279c677dd5f676ef81399328fa1488b0eac804d64694436614401df", + "bytes": 30805, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/react.js", + "sha256": "c548be84f505f0b5cf2f45b9531c35768370a7a32620d4b3e0151a45a39fa6ff", + "bytes": 120, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/session.js", + "sha256": "18fdd651e1f5cb7c2bf791309de0a22010f5dd836630abedec9b9de7f54e1282", + "bytes": 11719, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/axe-initial-prefix.json", + "sha256": "da7e1040ca40e5e09d355f6e2c878c0fcd5b5c1c43fd0f015eaf652a9a72b644", + "bytes": 111936, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/axe-initial.json", + "sha256": "b8f7eb1afb6326dec583515c90cd79c2a0b7cbbd7d05f3d228e0b7368955f3a1", + "bytes": 112485, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/axe-populated-axe-1440.json", + "sha256": "00ef2ee3b0928d563812c704a881e05f10b918c7b56283ab70b1d77fb59e70e1", + "bytes": 697, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/axe-populated-keyboard-375.json", + "sha256": "f7c368a01a5cf61b00677ec791a45e473a5cf8c2abca188f1fbb3bf6446e5064", + "bytes": 677, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/axe-populated-prefix-keyboard-375.json", + "sha256": "b4746398b2d3839d9978465b11204f706ae745dbb992229e14e89d08782941f2", + "bytes": 3271, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/baseline-observations.json", + "sha256": "db6a60101e5ab6843a76505251da47ad093c738b8ee86066b3a7746958374e63", + "bytes": 2602, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/aws-dynamodb/iam-policy.template.json", + "sha256": "110beae5c54e161816e9306d8975cf019f7b001aa06c8cc9ba7186b044501df7", + "bytes": 741, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-1440-observations.json", + "sha256": "bd3835b91468f1115a84f61fd044aa84df531f14bb805ecf2d13dcf537162113", + "bytes": 975, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-375-observations.json", + "sha256": "e612f35f176b122d6bd7389fdd01b8b70d666532f170ea9d651cf18fb1f088ab", + "bytes": 971, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-375-steering-observations.json", + "sha256": "a107e8699a5301fdc9dac1699cc7c47a92310449b7bcd03205ce932e9e8b8335", + "bytes": 1035, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-768-observations.json", + "sha256": "9731276e8484bf770b205716eae75168fc8e14d841c66bb48d94bb002deab3ce", + "bytes": 972, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-960-observations.json", + "sha256": "f67ddf68db73b7b66a4cac43642f22026459bb390edc010002caf14ca111430c", + "bytes": 971, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-axe-1440-observations.json", + "sha256": "75ce969f25ca14396b58cf4e93212c192b1f344df46ee5baf452478a72f2d4bb", + "bytes": 1576, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-keyboard-375-observations.json", + "sha256": "b711e0b9da6cb842954c4abdb982926b1c95e92880a81c61a5bba6364afb1e92", + "bytes": 1827, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-prefix-375-observations.json", + "sha256": "e5a8a6d31bfe8438e12cf71455e1a7f1840e589d885c002e108357e7c8d6413f", + "bytes": 1421, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-observations.json", + "sha256": "bda35cb5a853545dddb09cb6044a216d9ef956af7cb71cc30ee0defc4a97f5bc", + "bytes": 4769, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-wave3-1440-observations.json", + "sha256": "daa2b1dac5d2e7582711cfd13899bc9568aba730a1040159a5d01324ae10661b", + "bytes": 946, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-wave3-375-observations.json", + "sha256": "c396c8fa40378296b1996fb5d9555370e152aa48e8a0e5f2cd9f548c14793468", + "bytes": 942, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "knip.json", + "sha256": "2e5e58e3b9b4cf805b6ed7676a27afa1a695cfebc7ed06851eac192fb0069500", + "bytes": 1226, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/lighthouse-desktop.json", + "sha256": "6fda80aef30aeb0dc7a6c2010a81d5e838be87e57db766b01729199bca593c6d", + "bytes": 507209, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/lighthouse-mobile.json", + "sha256": "858f474b0e2c7fcee358788017b26e443cb1de7b9e099c776acd079cfee383d1", + "bytes": 538645, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/public/nodeagent-chat-state.json", + "sha256": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "bytes": 227, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/eval/nodeagent-chat-ui-scaffold-smoke.json", + "sha256": "d5124be82b93bf14b09075aab3b8ed36409917c66e771124f9dde4dceafaccfd", + "bytes": 940, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/eval/nodeagent-convex-smoke.json", + "sha256": "e32097737d106d50e0c1a6cbddb2f225b06ae042bf4a8e04b30b2877991c0a26", + "bytes": 292, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/eval/nodeagent-durable-smoke.json", + "sha256": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "bytes": 798, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/eval/nodeagent-frame-smoke.json", + "sha256": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "bytes": 513, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/eval/nodeagent-happy-path-speed.json", + "sha256": "3cf7fa349a29064282f9d6c1c184e43f0b209d29e9abb121b03645b88ae87e40", + "bytes": 1389, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/eval/nodeagent-live-provider-smoke.json", + "sha256": "cc596d297d02cc5e2da761ccb4fed2149efd16be961c14905f095d15f86f6adf", + "bytes": 375, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json", + "sha256": "ba143f75f6b86a1bd07b6d77a1a80e44ee61a91931771e3e051c6cd05c47011d", + "bytes": 796, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/eval/nodeagent-sqlite-smoke.json", + "sha256": "08fe435245ccee33fc4a061ae34ebd1b9851d9ce3d13ab7d8099971dc1ee7ecb", + "bytes": 915, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/local-dashboard/template/public/nodeagent-state.json", + "sha256": "8ea1acdbed9372f70ab32dc208f05de76fe9779e9ff9a5282330c299c7edc5cb", + "bytes": 2228, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/eval/omnigent-nodeagent-smoke.json", + "sha256": "be36f32f096efa3a0295426ad91b9ca0017e95edeb8d83a59f966c13f0a55eef", + "bytes": 4911, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/eval/omnigent-official-cli-probe.json", + "sha256": "b4e076dd9e465470c47b7321a06f11cff2963223984d5b02a36bf4e26bf3c86c", + "bytes": 3882, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/package.json", + "sha256": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "bytes": 558, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/local-dashboard/template/package.json", + "sha256": "fe4aa76bf304081d58abd3c651679b48ca96139f9aaf278b7513676f02d44633", + "bytes": 613, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "package.json", + "sha256": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "bytes": 5147, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "tsconfig.json", + "sha256": "4a675f027533015c432e5de6839180b84e7cdcb9278c65908225ee46d2c69f4b", + "bytes": 864, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/web-quality-audit-prefix.json", + "sha256": "7e567bf0a00c7a6c1dca46eb5d34673517b35f4e5001807e2a67b272b258cffc", + "bytes": 6321, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/web-quality-audit.json", + "sha256": "d9b3d606aea56d52701938438f15160e544a3f851087379c2164f2c0ab7b9542", + "bytes": 5913, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/wig-review-prefix.json", + "sha256": "4573eeaa3d7b803c1a74eaf9c7ea5b745402348edd5b8489e077eeb6047faa02", + "bytes": 13686, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/wig-review.json", + "sha256": "9bfed217e1e92e14a40ae660f7b6fb03c23b166bd001d9c39c2d76d5e9039539", + "bytes": 13677, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/cloudflare/wrangler.example.jsonc", + "sha256": "84d8bdead5698bc7d1f44e80892f30a54d0b4d832aa2f8e1875a9b93cbc37f20", + "bytes": 632, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/src/main.jsx", + "sha256": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "bytes": 296, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/local-dashboard/template/src/main.jsx", + "sha256": "ae374c7a163355eae17f2b0f303e4fdec627b530f2cc10a01d53c1fb6998426f", + "bytes": 8493, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "sha256": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "bytes": 4280, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "sha256": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "bytes": 3350, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts.map", + "sha256": "5552bb968aaa00ac5234cefc1cd0a6aebb64ca0f526faec8fbe32d0bc3e948e2", + "bytes": 2448, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/graph-model.js.map", + "sha256": "9ef75a42ab38bba189f1ea7d7915cc6290198f08b57c86ff8e8d1c71202950db", + "bytes": 13998, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/index.d.ts.map", + "sha256": "7b806813920802717ee2b4d043a7c5d50e963bbbe3c81ba230249cc64f55606a", + "bytes": 514, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/index.js.map", + "sha256": "e6453494e706d147b59f7c0d151cda30808930a99689fde8e5a8867e0ad6771a", + "bytes": 306, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts.map", + "sha256": "802d6fe1463be0c5ad44bfd5d6ce0cf53c42667e03277fd9591f36e2803dd16e", + "bytes": 1312, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js.map", + "sha256": "1a517f4f66669cb35f3eb3c08f092f261d5d11ae5cf893bb5614175a86c17776", + "bytes": 24655, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/react.d.ts.map", + "sha256": "c4e587ef6c5f2dfd209a57b05890e0ad3f5d996db88dd9169e4c2fd8c36d06ab", + "bytes": 238, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/react.js.map", + "sha256": "6c9d5842235d854c2e59c8f8491a4d4a7a2049ffe3481eca2e3d500af2fbc575", + "bytes": 186, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/session.d.ts.map", + "sha256": "22f7a2d5b760146ee0b2f21393922bc88c9108d6344a7e4a808aca93ae32df9f", + "bytes": 1876, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/session.js.map", + "sha256": "d074dda592ba198f54bce40d2fedb9c964e5ab7ea90e4710c7e136a61cf69881", + "bytes": 12101, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/AGENTS.md", + "sha256": "dc4767012dfd4817196efd49f201aa7cd01b5f04d90bd84d45c36d37879647c9", + "bytes": 992, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/AGENTS.md", + "sha256": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "bytes": 966, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/local-dashboard/template/AGENTS.md", + "sha256": "62feff51961821ee700280258aece1e403cbf36b81b452f038700ffabf59e6b0", + "bytes": 693, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/minimal-portable-agent/AGENTS.md", + "sha256": "7c12015d5910ef934abdf90280e9a12036b85d810dca6c4b94d5ec250615a8df", + "bytes": 287, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/ARCHITECTURE.md", + "sha256": "4f65e5d952a4c067ce2c4c5d92f24e23023d6fe83210f114c30d4681b9382055", + "bytes": 23278, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/codebase/ARCHITECTURE.md", + "sha256": "affa237f04914fe198686fdff72f1dbf8fcaa5fc711f628a06a9e28db6f58c99", + "bytes": 6793, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/CHAT_UI_ADOPTION.md", + "sha256": "874a5a85dad2064de574da13dd5e86279a603edb508a4ad073fcf8c12a2420e7", + "bytes": 2472, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/codebase/CONCERNS.md", + "sha256": "7b62490046c9d8bbc43d982f6dbab56c3f3cba4177218ba3491d857a28f763bb", + "bytes": 7265, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/codebase/CONVENTIONS.md", + "sha256": "d951d489cf71076d42c9e27843b35a42a1eabb9fba0224522967af507a5619e8", + "bytes": 4354, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/DEMO_SCRIPT.md", + "sha256": "485fba652a80422320c631cf922a8971275c50d7cac8f8083c53fd0c1da2bff2", + "bytes": 13073, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/DURABLE_RUNTIME.md", + "sha256": "761c1b709867bef39a7f56457be7b8a91295015407eeecad395a543de59d8a76", + "bytes": 4339, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/FEATURE_PROOF_STORYBOARD.md", + "sha256": "7af5de5f23936d67738f729af5e6f080b53d62a477781aa6a12b599a11c22ea6", + "bytes": 2524, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/GRAPH_INTEGRATION.md", + "sha256": "de2d0a9d605901e4e02a4d398d8e99912fbe82f28c1084e94ce2ac325c3686c1", + "bytes": 11246, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/codebase/INTEGRATIONS.md", + "sha256": "1cb82e52bee42b972c56b056baf06065847d97c162f62f9cf885cd5c447dbc06", + "bytes": 4605, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/LOCAL_DASHBOARD_WALKTHROUGH.md", + "sha256": "5700b4f5cd72116eaa870294fd8504e3da9ede2d6d8248d41c83fd14db409847", + "bytes": 3009, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/MIGRATION_MAP.md", + "sha256": "54e140fe9613de32f4a809881145bd3dcc569d33340be5768bf48a6d27261c1a", + "bytes": 6228, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "NODE-LOOPS.md", + "sha256": "de5c06200746f18c4a60db55021cb2ac69d481372555566cd85e008a74d30a80", + "bytes": 18453, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/OMNIGENT_INTEGRATION.md", + "sha256": "6cfd2c8172cb2fb395af7f24d73fd3426a9fcc69c302233f214dd4d666d08fe0", + "bytes": 3501, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/PRODUCT_GOAL.md", + "sha256": "9aea76a3fd78c8278563ccce3d78af450ba92be5c0170c11c4fb84de044cd812", + "bytes": 12758, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/PRODUCT_JOURNEYS.md", + "sha256": "228eafccc9ec25399030be5ec892df89d5ab0629ad493300acb2a4bae7e983f9", + "bytes": 8759, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/PROMOTION_LOG.md", + "sha256": "347660b94db66da063a9bc3d11ef8747ad03c1000d6cb89bbbe6af40612a1f0f", + "bytes": 21001, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/PUSH_TO_GITHUB.md", + "sha256": "08bd4a4abdd268b5a8ef5e167925b9abeb0773ec262e7e88e6272dd10ed5adc2", + "bytes": 3458, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/aws-dynamodb/README.md", + "sha256": "ae85683cbd7d9e00994dcb411949e2828f2f37c3982d18844f80d2132b4a0ed4", + "bytes": 2892, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/cloudflare/README.md", + "sha256": "4ec0db54d38b7eecd76351094d1575dcaa7e9e66b7913b0e76eff26402b0cf1e", + "bytes": 2583, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/convex/README.md", + "sha256": "bb94b7aecc1d6264f54a92b560bd8c3fd9187f33b9b880ba54312c16767a592b", + "bytes": 2758, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/postgres/README.md", + "sha256": "e8623e1543f85f37a4bdb5f2c790794455cbff8b77c3d82e714c3eb3c9813434", + "bytes": 2491, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/README.md", + "sha256": "de09b71405f0bbdbd3e4690d8cf9ca4383c8eb2ba17e834b4c3df9a8ae3c75b2", + "bytes": 3284, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/sqlite-local/README.md", + "sha256": "bb92f5764c073e9fba39c9fee81dff3fe6af69da2c65dcd47193426a45b73f02", + "bytes": 2132, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/aws-hackathon-visual-labs/README.md", + "sha256": "562af6f3a57b019bb439d2d4d0e992d6242c371288ad2ecb9f161b17139171df", + "bytes": 1769, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/README.md", + "sha256": "f121e87752bdc044d8ddd72f3aabe99c46c84390081cfb0daad31518710a1ba9", + "bytes": 2782, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/README.md", + "sha256": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "bytes": 2170, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/local-dashboard/README.md", + "sha256": "0b1cddba25b20cf7c73f53be875f34d37249d7fea34f29462dcf5e5fa9aa2cc1", + "bytes": 3366, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/local-dashboard/template/README.md", + "sha256": "c6193c1590e5264305dd23b3ae437821ad8db3ab22173b36b908a91d0264f761", + "bytes": 2440, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/local-design-dashboard/README.md", + "sha256": "7d9957a325eb2be1f4ebcd333701265bd467ba7bf7f6b142a8f1fd2b0becf4cc", + "bytes": 1411, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/minimal-portable-agent/README.md", + "sha256": "ac46bc0e6b9858fc30bc6acf8b28b314aeac6837b71f32ec10e0e63f2d0858b7", + "bytes": 1771, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/README.md", + "sha256": "e13d8ceb2745530408139ccf3435e949d39c0beff3e5f405b156efe8f8d20d94", + "bytes": 2011, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/video-agent-pipeline/README.md", + "sha256": "9260fbec0741c9f3c9c30f0522d3ba3562cca81b0b2228abd7d1a577f2378e92", + "bytes": 2115, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "README.md", + "sha256": "b872bea0ee4490993529903a4f871caa581c0a45104813d8c9cec0cddc156140", + "bytes": 24923, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/README.md", + "sha256": "5b4466502e3014e8befb90e0d18c2cc184c5b291ad175ed1d5bd6cd2e6886241", + "bytes": 111, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/SIMPLIFICATION_REPORT.md", + "sha256": "76d606b042d3459c66c0cc31a054c164baae47d641408ff723b9e3cd8fa9bcbf", + "bytes": 19108, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/SKILLS.md", + "sha256": "87b7007d45eed6728cb739dc9aced62fad66f9e761a0c96f09ee8389b45fa797", + "bytes": 1965, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/codebase/STACK.md", + "sha256": "4865265a6b9c8fb98c0ed1c387f5bc6c4d61a2082e46c7c6e1f5e3d2661124ef", + "bytes": 3543, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/START_HERE.md", + "sha256": "4e989353925e5d00718b75bd6a0f0bd730617f2bd12ba4b438bd99d0dbaa5f54", + "bytes": 17384, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/codebase/STRUCTURE.md", + "sha256": "3668b893562275e0eb2d0e4c5840b1a724bed8b3ea8189340e61ba300a2d6511", + "bytes": 4452, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/TECH_RETRO.md", + "sha256": "7893581c35ee86a2e4d9886eb1a7fe18191cbdd229e6f9cf401a72866d51e59f", + "bytes": 7418, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/codebase/TESTING.md", + "sha256": "b28b3964fda89568df077fe998eb78befb4b0f2399edb6f94ecada9579f5c7c0", + "bytes": 5470, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/WIG_REVIEW.md", + "sha256": "95034e5b091d63e112e7caf693583a1ad7db3e4795968600e408d9536fe6ab0d", + "bytes": 10270, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "e2e/audit-web-quality.mjs", + "sha256": "4873cdab32d9f453287a3739be8f5d993ef9b95c7602cd831f7da7661e6d3dcf", + "bytes": 8040, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/build-tours.mjs", + "sha256": "79aea4ee99ca24733948fca6ab472335b4567eec5db4ac8041b47dc3a59404db", + "bytes": 12094, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "e2e/capture-journey-at-width.mjs", + "sha256": "013d27272d604264791013570e2d73164a00da6db3f3d01d58b1ce65b7343a68", + "bytes": 14569, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "e2e/capture-live-graph-rail.mjs", + "sha256": "0bc99d4c34c13c65860f71831655eef5720f6518549e028918e3815e9f31e002", + "bytes": 3581, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs", + "sha256": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "bytes": 2953, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "bin/nodeagent.mjs", + "sha256": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "bytes": 9925, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/omnigent-official-probe.mjs", + "sha256": "2889f5a2525d56ab33fe2c32169c570aa6a1637816f2b7fb4f13150d95db6924", + "bytes": 4419, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "e2e/record-live-graph-rail.mjs", + "sha256": "659e60cedd9c808484133b327bd1342cf0e563f6bd421a3bc8722ae0cb5f6dd9", + "bytes": 4094, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/render-walkthrough-media.mjs", + "sha256": "4ae3bd74fc0763d906073a14bc0a49b990d73e38c3e32232793e8f6ddc43d6a7", + "bytes": 3784, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs", + "sha256": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "bytes": 1251, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs", + "sha256": "ca5d95d565fa65d79b0a91a752228f22a9d82e47e985e3efb1ebcc1a3d1f5b50", + "bytes": 7591, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/secret-scan.mjs", + "sha256": "fa2fc25a02d3be68adfbe94dd4303ebc37c20b5400ca02ef122c6e7c096a61ea", + "bytes": 4589, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/validate-tours.mjs", + "sha256": "b12f121765332413fd114ac349d29a3e9244872e0813c45904eec195a018ad46", + "bytes": 6395, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/chat-ui/template/vite.config.mjs", + "sha256": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "bytes": 176, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/apps/local-dashboard/template/vite.config.mjs", + "sha256": "2448a94bdacc4085b4fd26ccb7c3f323d04a220af29a24b61703903730b68984", + "bytes": 192, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "e2e/wig-review.mjs", + "sha256": "6237b35b2a7973a5f5dc1ad1b046f8957b96eb9565ee7281f08e93ca0c3b5155", + "bytes": 13334, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/media/live-graph-rail.mp4", + "sha256": "c634fc8802bb29fb60b87dacf311a8226f867b301314c3637b47dcdb9a2df34c", + "bytes": 752930, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4", + "sha256": "a70c7e948943bde977bcf7a1ae381c0f41740ed1d7f61e1e1fe878cb2869b7a5", + "bytes": 63733, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/screenshots/chat-desktop-empty.png", + "sha256": "6015202a5f57f94ab430b83c378190a954a305e8bd06afcb2e49cdd8f523009a", + "bytes": 73151, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/screenshots/chat-desktop-run.png", + "sha256": "778a93ddada16a0a537e9d485ab92f564f2d36a6bc7012ba2f219c1d4485999e", + "bytes": 109697, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/screenshots/chat-mobile-empty.png", + "sha256": "ea2e57ceedf84c3f069c912960fa3058eccd06c93b80d99c79242eba663b19be", + "bytes": 49168, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/screenshots/chat-mobile-run.png", + "sha256": "afe70662889a13acd1a4c380a6d2b7e928ee11590d0152be53a3955f85aebfb2", + "bytes": 72898, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/desktop-1440-agent-running.png", + "sha256": "59d197b7594b42956c8afa15bf7d327a65092049e0299af73e24e9dde24bc535", + "bytes": 68440, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/desktop-1440-empty.png", + "sha256": "d514655292a386be5ad20edb2cfe4f76af3190f7ac718582482494a7067d7e6b", + "bytes": 84064, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/desktop-1440-keyboard-run.png", + "sha256": "0e977bbb6fd4383c09154a38132f625f6cb78b5e9f414ed91b88c29cde8a84a7", + "bytes": 162268, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/desktop-1440-run.png", + "sha256": "973264d3929d9cc41c3f78425e91c9e85bfc7823b5c8a01e5238a3fc63b40b35", + "bytes": 162473, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/desktop-1440-second-turn.png", + "sha256": "9ef17024c7cdebd2640402f69853d484b06fce767eb5c07204c0907352fa3d72", + "bytes": 141629, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-1440-run.png", + "sha256": "3b1e7a1a26cb8f7bf7c4df6fd1de764584a55b2491c9a93a84b6370711c9c1b3", + "bytes": 142820, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-375-run.png", + "sha256": "40d5d90f21dafb8fa24bb2ddfce1b4a57867b5f3f7d2380e8d9d44ba335f903b", + "bytes": 55980, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-375-steering-run.png", + "sha256": "e39edecdf92bdecdf531491274875c3cb2e8fa096c6f16fa6a1b1c75eda94a9f", + "bytes": 54568, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-768-run.png", + "sha256": "b8672a01484849956524c36440b3993276f3d69d50a1e65bcb97d64f2bc718ce", + "bytes": 108296, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-960-run.png", + "sha256": "fb354a0920a8596457e5189f3216f4e8b16dc4d297697ee6464cac57447a030b", + "bytes": 102626, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-axe-1440-run.png", + "sha256": "5f00c6a489356fd0279888156ba4b7a2afa8528c97532d055cf3b64d280dcbf1", + "bytes": 142664, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-keyboard-375-run.png", + "sha256": "eec0e6a9a82055c79bebfa4086919d68431e36efa8dacd335830779564650148", + "bytes": 56137, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-prefix-375-run.png", + "sha256": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "bytes": 17874, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-run.png", + "sha256": "35f532215562a0a609ef45afff48d763427d56fe87f6e942fb830ba60f3cdc2b", + "bytes": 61683, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-wave3-1440-run.png", + "sha256": "0c11da8891f5a7d57eb80d27acaeb286e5735c764d4d7deb3931de9053bb8c9e", + "bytes": 143242, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/journey-wave3-375-run.png", + "sha256": "4cabe7d9f8a74ebac8cdd67ae56aab8407491a7ddc7cf8d8c88645c440f01eca", + "bytes": 61575, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/media/live-graph-rail.png", + "sha256": "dbefe80026c7ed0b49b0d6287aa3e34a64dcacd1e41edae3f008ef8ea3c54a8d", + "bytes": 153152, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/screenshots/local-dashboard-builder-locked.png", + "sha256": "ba9787c3227dd031b6ba7ef5ded15270c5bdf21a2a3b990a5f8feea9eb7f6c85", + "bytes": 77366, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/screenshots/local-dashboard-overview.png", + "sha256": "de827fe60aecccb69cd7a95ba953788c0db66ce6fc483ec3bd1b5221dd695248", + "bytes": 99852, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/mobile-375-empty.png", + "sha256": "d69267ac381f314004c7b3d93d8ac7e28e635e918c0c3af609ef2ff065f94820", + "bytes": 50419, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/mobile-375-run.png", + "sha256": "8379e47ac9ccff998b670239e1d281b512bc82e754cf4b2b9996db2a0921b510", + "bytes": 17874, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/proto-1440-load.png", + "sha256": "fe94f4634a2f61c66063b8d04d747204be9a5745dbe33e68744a1cb704a858a7", + "bytes": 106661, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/proto-375-load.png", + "sha256": "8bcb22d700b48b963238539e7ecbe1236eb3a598a311a8794832fd10e547bc80", + "bytes": 72242, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/proto-375-run.png", + "sha256": "9bc0a79b7ab71054d10c4ff25635c0f6267970b73a6051678298f1424748564d", + "bytes": 82707, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/screenshots/proto-desktop-empty.png", + "sha256": "85d98003fdfa0ea23b9d0f91285712ab9a02a7dffdc0553991a87c04864fa482", + "bytes": 104196, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/screenshots/proto-desktop-run.png", + "sha256": "fb8f3447f228808a25cb66b355f4e0fb037d7544f384f9c7d733cdad2212efe9", + "bytes": 292952, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/screenshots/proto-mobile-empty.png", + "sha256": "206f48c6be8dbcaefcbe0805a2d5ea45b189be0cf3e76f60db72c0f078e53fa0", + "bytes": 74915, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "docs/screenshots/proto-mobile-run.png", + "sha256": "0685cda48af13f861e8c3f3e91647e8f145fe78edb8074624d8bfe2646d937da", + "bytes": 254578, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/wig-desktop-1440.png", + "sha256": "7a9b9468da89add6a02fef6b89a10a3aeba69c92b3105a24f4b323f447bab782", + "bytes": 151387, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/wig-mobile-375.png", + "sha256": "4eecfad55c0987091bfc2473a09348614d4072adf19c6f6488059c3c4126cc1b", + "bytes": 55383, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/wig-prefix-desktop-1440.png", + "sha256": "5182a2de904e374cccb7cbcd88275f9b9cf433333b88c5a25117894b8fcd5b0e", + "bytes": 151660, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "promotion/evidence/wig-prefix-mobile-375.png", + "sha256": "edd0f631c333f40ee5b70a7a233814eb88924862f19760e3b7ef017e1f1210bf", + "bytes": 67905, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/postgres/schema.sql", + "sha256": "e20e5cdedfbc3db9f453366c6ada1a247dd9b52126aeedb223366594cfe349b0", + "bytes": 1455, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/sqlite-local/schema.sql", + "sha256": "815a7006448cb0353c2e833cdbfe7106c0d83b94cd78c8be4ca12115b7a0373c", + "bytes": 1408, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": ".tours/01-primary-user-flow.tour", + "sha256": "c238088d3c9f457f4ffdb1940f172f2bf78e37399a957751ec4cd850b2d908ae", + "bytes": 4743, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": ".tours/02-agent-execution.tour", + "sha256": "a27de3c0a8d77e83bb599d7fb9e8945fe6629077136e58ec23c84a05f7c79d37", + "bytes": 4419, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": ".tours/03-debug-and-recovery.tour", + "sha256": "01cdce8aac5661f3b5802d8bca8749ad07ccaa1b447af7f88049bdb2f0f81c94", + "bytes": 4149, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/node-agent/graph/agentGraphSession.ts", + "sha256": "3073cdcdb33d435ef54fdbe61658bcb9364b6cd7447e71819592a490beee1389", + "bytes": 5405, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/spreadsheet/applySpreadsheetDelta.ts", + "sha256": "448ee8f83b34a79f4b090f8c07fc258ad3297690d5f63da40ff9b8f631b767b9", + "bytes": 8449, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/chat/contextCollector.ts", + "sha256": "01364ce485d6d6221457fd8390d367c804d2f424e78f0188f2f84bcc476dea94", + "bytes": 4882, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/node-agent/demoScenario.ts", + "sha256": "b884601b7f13f13959c77a4c0423d86e12342b0cef126a7413eac17de646d68d", + "bytes": 4339, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "tests/durableRuntime.test.ts", + "sha256": "f7128fc991589c30c24279f8b5f1b2e779794c04837fb6b42c5aae4b09b12873", + "bytes": 4594, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/node-agent/runtime/durableRuntime.ts", + "sha256": "45ebef719388de3bcf16c42a18413b730d7fea6b1c781bf50469dc95a40a1c6c", + "bytes": 16727, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/example-guidance-smoke.ts", + "sha256": "cc53a94e306a54a3cf85d497ddd1802f60806b90fb62ad93abaf95dceff06f53", + "bytes": 6150, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts", + "sha256": "a42987e8583f06981a9ae286955764b9c63a01e9757bf5f77917e81421ede83c", + "bytes": 6867, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/index.d.ts", + "sha256": "c00e12ecf850b57ebb877c55458074f7013b5d959b292dc05b326ce4baea6c47", + "bytes": 546, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/nodeagent-chat-ui-scaffold-smoke.ts", + "sha256": "71c0fed96a5cb1733bd6728a77b5e2518a7f237b100ed79f9a40d0ccec1155c0", + "bytes": 6899, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/nodeagent-cli.ts", + "sha256": "21b7e4033e54419916d2735852944e77365f20e6eddad5061871aabb32a8c0e6", + "bytes": 12183, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/nodeagent-convex-smoke.ts", + "sha256": "31340db7e4a1ae135f43f4fcd9f7941216e28a9bd927fc96daef42d6d19e5039", + "bytes": 3813, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/nodeagent-durable-smoke.ts", + "sha256": "dbd650b8883af90e73179ac3414b39e1d76f9afdbcb2e02ebda3013650107b21", + "bytes": 3881, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/nodeagent-frame-smoke.ts", + "sha256": "c01615665f8d95d4a4bbf6db90ab9eb4c51b9a58726664fda1792e2b753d2ed3", + "bytes": 1759, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/nodeagent-live-provider-smoke.ts", + "sha256": "023bee3044929e9e2d10042929cdeec8b96f1cfb8cf2b7d59faf371002235282", + "bytes": 12362, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/nodeagent-local-dashboard-scaffold-smoke.ts", + "sha256": "a59f10aa5eb13f8566faa048a1e9d4739711867eb03f9371971e1a95edcfff4f", + "bytes": 7620, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/nodeagent-sqlite-smoke.ts", + "sha256": "373cfb480567f54d1d180c1c571bcfd73d38cee8a70a45dc748b448f29b50bbf", + "bytes": 5087, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "sha256": "18a238b08287f415dc4474e46d007f2fe9c6d49eba16bb64fbbab222d7c7a1a9", + "bytes": 5303, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "tests/nodeAgentRuntime.test.ts", + "sha256": "a08d84238b338f5d50aeedc527026adcbeef8c2b5bcf594b5f517875d425d725", + "bytes": 3145, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/node-agent/runtime/nodeAgentRuntime.ts", + "sha256": "3ba6c3c6089c9e739c190b005720329df62f32eb352ad407a775fb7cbd02accf", + "bytes": 6247, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/node-agent/types/nodeAgentTypes.ts", + "sha256": "216a0648600fcb7e5b851fd499861a96aedbf670b9d521d6cad691b322414e69", + "bytes": 7520, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts", + "sha256": "2039d9072e11433766cebe53dcc5e901fd40a442c568ddc944e9d012702f9141", + "bytes": 1267, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/notebook/notebookEditor.ts", + "sha256": "a5a04cb4ae089f7d6c085b1c55babe0b25b9812dc0ab5a8fa4bc882450c89456", + "bytes": 3510, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "scripts/omnigent-nodeagent-smoke.ts", + "sha256": "016588db4356fc54425058b8d53f3fd91f22a3634539e0e127f64f5fa7c28b34", + "bytes": 7796, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "tests/omnigentAdapter.test.ts", + "sha256": "9392a5379b92be856bb3cd42e869b24d9f894d00f7b5d70685dd9417e515ef99", + "bytes": 1690, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/node-agent/runtime/omnigentAdapter.ts", + "sha256": "d0b8c58f55ef452fec981e7d0a6e0a79c77e8e8413eb5cc49265680206dc6a4d", + "bytes": 5334, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/react.d.ts", + "sha256": "0ea368669aba5528bda8a408450d45bee9098093ab560a29dd23ddb5098e6edd", + "bytes": 187, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "tests/reasoningFrameRunner.test.ts", + "sha256": "2eb988dbab897f21bacc1f5b18e1764dbfcf5a5af121a9ea19045be284589f54", + "bytes": 1697, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/node-agent/runtime/reasoningFrameRunner.ts", + "sha256": "f20347b5128748ffa9e194b4d4c8fc4332b5f6d7abad9fba12a4dcf852ed7b12", + "bytes": 4264, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "demo/runNodeAgentDemo.ts", + "sha256": "cb04228b26bddb45f8551fa5512456fa97a97b2e116dc20d19dc2462e3904952", + "bytes": 3047, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "convex/schema.ts", + "sha256": "0031874d28c3ef866ed5f279f9e90eab30f8cbb07e60db5db76e08391784e26b", + "bytes": 6450, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/search/searchAndSynthesize.ts", + "sha256": "59a3e3002b8881e84488a865d29a895170ede787088df2fc813dbc3cbeab7a7c", + "bytes": 6871, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "tests/searchSynthesize.test.ts", + "sha256": "f39c7a7689f490e4ff10bf4ad8c281429990ded1a18f2acdb1208a08a5ad66b3", + "bytes": 4487, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vendor/nodegraph-live/session.d.ts", + "sha256": "50d05a702a783fa43042cd9c2195f70b2c3f45bfc21aa49df127e8b45910f06a", + "bytes": 2813, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "tests/spreadsheetDelta.test.ts", + "sha256": "7f339af70b18e8ede59e271761542a2f3a17f3f8d6abaa9107997ccbda0a3c87", + "bytes": 6534, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "tests/sqliteDurableRuntime.test.ts", + "sha256": "89e01223c55c94bedd20e62dab00d82e8af2c27e0f57e35ef979a25b39d8848a", + "bytes": 3844, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/adapters/sqlite-local/sqliteDurableRuntime.ts", + "sha256": "fce534d3e972a145b09ea65609aee4dbae51ee036ba493f315eca807e4f4e269", + "bytes": 13915, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/spreadsheet/versionedSpreadsheetSync.ts", + "sha256": "3ed2315732c9ec4989e5f392a9766dfd94e345492875f04882449fc3e39cee95", + "bytes": 3636, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vite.config.ts", + "sha256": "5cc068e630d5904a4727d5ed793cd8a875f7f17b5216249bfa45e28fdd9e1202", + "bytes": 769, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "vitest.config.ts", + "sha256": "ed02124f628d1a5e7a4aefccd17c0b4cd208dc1c3f6dcd321196a0c8069ebdcc", + "bytes": 530, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/node-agent/components/GraphRailPanel.tsx", + "sha256": "48d1a17e30b1226d4cdba538b95ca2b5c933f922a29668d53fe663bb79a29e32", + "bytes": 1731, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/app/main.tsx", + "sha256": "e78edc8cca4aa10ee2829143dd8696670106d652de1ff8f1b2db5a0b4590934d", + "bytes": 346, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/node-agent/components/NodeAgentDemoApp.tsx", + "sha256": "7d683b2ce58f46ebb72bbd2bfd944bf3171a927edd2439ae64307ce41ac384b8", + "bytes": 2103, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/node-agent/components/NodeAgentThread.tsx", + "sha256": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "bytes": 3401, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "src/features/node-agent/components/toolUIs.tsx", + "sha256": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "bytes": 5635, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/omnigent/nodeagent-reviewer.yaml", + "sha256": "7cb996f27c510212664af96e452e8dc9facf2d694c3dc10f8efdf7768d181b90", + "bytes": 811, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "examples/omnigent/nodeagent-worker.yaml", + "sha256": "a3347fd136ebfc576e10d7cff5e0812f6ee3e7f9013950cfdc37a2647e3d845d", + "bytes": 886, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": "nodekit.yaml", + "sha256": "0ed8a02933119956a5661fd88161bbcc49b16da094f7759c1b6fa2cbd1e27841", + "bytes": 1291, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": ".github/workflows/ci.yml", + "sha256": "060a77ce6de5d1af76b178522c99ca3c707535e597ed1ff91d3bd6bb32185425", + "bytes": 1007, + "gitObjectMatched": true, + "installedMatched": true + }, + { + "path": ".github/workflows/node-platform-conformance.yml", + "sha256": "d527515d835cf3be91687dcab1af14c23fb43f613dfc6e46c2ebbe801fd4dea1", + "bytes": 245, + "gitObjectMatched": true, + "installedMatched": true + } + ], + "templateBindings": [ + { + "path": ".env.example", + "sha256": "87c08c127a703d1a0c959d1ecd6f7896f580f7cad7f0225d467d470acddb97a4", + "generatedMatched": true + }, + { + "path": "AGENTS.md", + "sha256": "77f8742492c181e676e099eec3c6eac08d9666fb15243d3db290618a993336a7", + "generatedMatched": true + }, + { + "path": "index.html", + "sha256": "58cc6f4dc254bd4d28c03ee74e69ef6d6dd84e249f77bf302e9d7acfcb3f5f50", + "generatedMatched": true + }, + { + "path": "package.json", + "sha256": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "generatedMatched": true + }, + { + "path": "README.md", + "sha256": "8be8d44b92426c1ce5458f346dff2473d8443988c486f4808fc86586cfe4e11b", + "generatedMatched": true + }, + { + "path": "vite.config.mjs", + "sha256": "891cad9de5cf84ed18dbd809b6f354871c8847514a002cd46f7aa0169928ef4a", + "generatedMatched": true + }, + { + "path": "public/nodeagent-chat-state.json", + "sha256": "8012c846edea7d83e2357168bb60f86c3d8931350afbc677777f39759c55efda", + "generatedMatched": false + }, + { + "path": "scripts/chat-ui-smoke.mjs", + "sha256": "02fb0afaff76d2808d1e73c42fdd3a15c685adb7baebfb3f90a9e2dc214bcf28", + "generatedMatched": true + }, + { + "path": "scripts/run-chat-demo.mjs", + "sha256": "4fc8639132b44051f0d3fa07aef314926d4cd53f59cf23ec3587a35f339cb34f", + "generatedMatched": true + }, + { + "path": "src/main.jsx", + "sha256": "77078b85930791d340d62404e1274427d42cd60332b5f318ae016f9356b05d1f", + "generatedMatched": true + }, + { + "path": "src/styles.css", + "sha256": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e", + "generatedMatched": true + }, + { + "path": "src/nodeagent-chat/NodeAgentChatApp.jsx", + "sha256": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "generatedMatched": true + }, + { + "path": "src/nodeagent-chat/nodeAgentLocalAdapter.js", + "sha256": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14", + "generatedMatched": true + }, + { + "path": "src/nodeagent-chat/toolUIs.jsx", + "sha256": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "generatedMatched": true + } + ], + "sourceLockUnchanged": true, + "sourceWorkingStatus": "" +} diff --git a/evidence/current-consumer-20260905/operator/primary-head.after b/evidence/current-consumer-20260905/operator/primary-head.after new file mode 100644 index 0000000..2982983 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/primary-head.after @@ -0,0 +1 @@ +c0ad5236d5424fca60008ed500cb565683bcd1d5 diff --git a/evidence/current-consumer-20260905/operator/primary-index-nul.after b/evidence/current-consumer-20260905/operator/primary-index-nul.after new file mode 100644 index 0000000..2780ff8 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/primary-index-nul.after differ diff --git a/evidence/current-consumer-20260905/operator/primary-index.after b/evidence/current-consumer-20260905/operator/primary-index.after new file mode 100644 index 0000000..d71b021 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/primary-index.after @@ -0,0 +1,149 @@ +100644 7e8e9721f2262efec0b6342e954f3f925659142f 0 .env.example +100644 3255e918f0824587bf87a5cc19235f87f1fb6c82 0 .gitattributes +100644 00067a2e2de893875afda12ac002f89a38cce8f4 0 .github/workflows/ci.yml +100644 e2e244021534b0f71bf0104ed76a3da465cf561e 0 .github/workflows/node-platform-conformance.yml +100644 1cf736044cc2be0acc90ee63e65e14c64769355c 0 .gitignore +100644 62867bb09d3df5804805eab1f2cfab18bac16b65 0 NODE-LOOPS.md +100644 54c74902dc5933dbc55cd0e3840e9fef5abc36dd 0 README.md +100644 66393f189d9344b80dc996e980c48eda9a175935 0 bin/nodeagent.mjs +100644 d979bdd250470d918d2aa8b9303504dd39c53351 0 convex/schema.ts +100644 54b9a3dcb52f7809fcfb56cad82c89e0c9ea1612 0 demo/runNodeAgentDemo.mjs +100644 e67d4d45134e3ff51eba29cdc553fd4b8652c8c5 0 demo/runNodeAgentDemo.ts +100644 8f579e1b808a0d2caddd9dd064ec4efb1a8b20a2 0 docs/ARCHITECTURE.md +100644 3b1aa63be6568dd1fa912f873aa72a8aac5321fb 0 docs/CHAT_UI_ADOPTION.md +100644 ffb76a6c2721cd52307760e71539ea43cbffe2b2 0 docs/DEMO_SCRIPT.md +100644 95b45163966879a4e32f9474f29c0a3b765124c1 0 docs/DURABLE_RUNTIME.md +100644 f2e8818e931574850de6e19eb2e619a706a1029e 0 docs/FEATURE_PROOF_STORYBOARD.md +100644 1de50aaddd7aaca116a6708a75d59699f386432d 0 docs/LOCAL_DASHBOARD_WALKTHROUGH.md +100644 f2a0abf44f0e99d990932c96a8472570c30ad287 0 docs/MIGRATION_MAP.md +100644 caeef88d500a6c7a8c28003064b269be89fec1dc 0 docs/OMNIGENT_INTEGRATION.md +100644 8d6d1738857db17d7f10ae2dcfe2feebab3e683d 0 docs/PUSH_TO_GITHUB.md +100644 361560a26e33c5c6903398ba8c5dfeaeac1cc289 0 docs/TECH_RETRO.md +100644 614e61a0bf47a3a4e274a9306f36ee4b4d181a7d 0 docs/eval/nodeagent-chat-ui-scaffold-smoke.json +100644 bd61e7f124a5eba36fd8a9004e9b29663ae03896 0 docs/eval/nodeagent-convex-smoke.json +100644 0e5903088c433156d3011798858dfef9c88d08f6 0 docs/eval/nodeagent-durable-smoke.json +100644 f0c54bad21e7bf2a24f44d9c8a09250fa903050c 0 docs/eval/nodeagent-frame-smoke.json +100644 9def07c039ce906313fead6d4dffed76c879f986 0 docs/eval/nodeagent-happy-path-speed.json +100644 c41d1eb4ac250ac13f915291924f138dda78bd0b 0 docs/eval/nodeagent-live-provider-smoke.json +100644 f13cf436b04a343c0de8b093e87497bc5371746c 0 docs/eval/nodeagent-local-dashboard-scaffold-smoke.json +100644 3d60e545d82b80258ae13e097310eb50116a07cf 0 docs/eval/nodeagent-sqlite-smoke.json +100644 610848a1f8540fd4497196933bb3c13184e5b1ae 0 docs/eval/omnigent-nodeagent-smoke.json +100644 13c45b0c12dedf62ad7a437147c6a28c7ca6e9bd 0 docs/eval/omnigent-official-cli-probe.json +100644 e37a043c382f1d080601374858d74af85e21807f 0 docs/screenshots/chat-desktop-empty.png +100644 e35f9ee567814114d7a0771d9220a2da5b9e1394 0 docs/screenshots/chat-desktop-run.png +100644 20d98208c9d4c5e4b9afea7ea3d8d86ae5e18f5e 0 docs/screenshots/chat-mobile-empty.png +100644 55b3e8aac5afa0ce2c33bfb9d25eee874346755f 0 docs/screenshots/chat-mobile-run.png +100644 0de0b6a73cc45ddbcc0aba9b007961565dbd640c 0 docs/screenshots/local-dashboard-builder-locked.png +100644 789cad6d1d65f91f492081309ccbdbee1dcf89bd 0 docs/screenshots/local-dashboard-overview.png +100644 062ca57068bb079beda4311d6e223bf742266870 0 docs/screenshots/proto-desktop-empty.png +100644 13440a362b1c44301498defc440ca9f9f9343805 0 docs/screenshots/proto-desktop-run.png +100644 21f185acb78b28e9454becdeee54aaa8d247c868 0 docs/screenshots/proto-mobile-empty.png +100644 f8999119923b32ad67dbfb114363a177ec21a19e 0 docs/screenshots/proto-mobile-run.png +100644 a4b1508d4de3a9260b6b056b5964d02a0ef80f9d 0 docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif +100644 ecf427d65328ed23ede6328a5d4dc65bb25d64cc 0 docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4 +100644 4c246e92ef2324e7c5352c22dc2a8ef4cbd627e5 0 examples/adapters/AGENTS.md +100644 07d0d3d4e20be286d374430b71b850ea1617a761 0 examples/adapters/README.md +100644 8b23467d05a7d9f0926b3bdfc70071017c1fe3b5 0 examples/adapters/aws-dynamodb/.env.example +100644 cc4c9ccf9abc082017381ecb7efec06e58bd9949 0 examples/adapters/aws-dynamodb/README.md +100644 0bd68c9f523348cf9efe68fd1841a286625a3627 0 examples/adapters/aws-dynamodb/iam-policy.template.json +100644 b3ec38b5bc8d213d9380bf6843c8c5b6a9fed81f 0 examples/adapters/cloudflare/.env.example +100644 22a28778813d7442128aa893f2e332ba96fcafbf 0 examples/adapters/cloudflare/README.md +100644 265a8be64fe3d1f34d0cda324d6d8a4e41ec4807 0 examples/adapters/cloudflare/wrangler.example.jsonc +100644 7eaac42c9fd2fec0bb060a207dcaa774c06825ff 0 examples/adapters/convex/.env.example +100644 378f1e98d6823fe918e8a3f08100c6aab5cb62bc 0 examples/adapters/convex/README.md +100644 b7b5715ee93685fe41f12a5222a9f97875ac38b0 0 examples/adapters/postgres/.env.example +100644 b3a384e59ae40df947868710e9abc373a641670a 0 examples/adapters/postgres/README.md +100644 f45fff7567bcb4d6c78cc8f4981a6b6ee44b7660 0 examples/adapters/postgres/schema.sql +100644 342b807908412bdf6af62c3567c1d0f39014bdab 0 examples/adapters/sqlite-local/.env.example +100644 fd33c74d4fb68a179ed0dc98336834f2e4628622 0 examples/adapters/sqlite-local/README.md +100644 8f915cee2f313db399f19b6895119f498d7a9810 0 examples/adapters/sqlite-local/schema.sql +100644 6ca2fbdfd3f909275d132fc1ed50143e33905960 0 examples/adapters/sqlite-local/sqliteDurableRuntime.ts +100644 14eb01bcc3939d552b16b004b832e2415604755c 0 examples/apps/README.md +100644 bad0b14badc579c772c6dbb79c43919b9d840ebf 0 examples/apps/aws-hackathon-visual-labs/README.md +100644 ec82ba21c6d0cf3177206d0ac764209b7bb15bab 0 examples/apps/chat-ui/README.md +100644 02c46654d656195c0bb61fd6cf6a5ed0d3df6055 0 examples/apps/chat-ui/template/.env.example +100644 02d55b9a4496223a6d26d8eaaf4f58ddb1334f0d 0 examples/apps/chat-ui/template/AGENTS.md +100644 81e953583b4a0f68e29f8d7f5c79ce1cc9ecb0bd 0 examples/apps/chat-ui/template/README.md +100644 7f5b61a45a807dfcb3cbc4e74563ecf02f4b6565 0 examples/apps/chat-ui/template/index.html +100644 7a64b5a36e1f3f18e0448dba7bd3a455ef422a53 0 examples/apps/chat-ui/template/package.json +100644 9e40b1e72b8647109fa39c33dc91b9d7091c7c76 0 examples/apps/chat-ui/template/public/nodeagent-chat-state.json +100644 b06e552b0c6b3d69bad09fa938d95fbc7b83a589 0 examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs +100644 c9c943f4b8c168ab17cecb2ee9e232a028c809cb 0 examples/apps/chat-ui/template/scripts/run-chat-demo.mjs +100644 5d40504932339dabfac21b584ef295b18a50950b 0 examples/apps/chat-ui/template/src/main.jsx +100644 ce241cd067b2aa302f1408c2bb0f18141e868a1e 0 examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx +100644 e9cec50800bf03ce3b1fddacf2a2faf85c1c3279 0 examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js +100644 9bb8e34cec40c562590bc969bed49595fda33abb 0 examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx +100644 e0cb9a897a7da5333a4f7da3668d630103010ade 0 examples/apps/chat-ui/template/src/styles.css +100644 5b8df23e57955b54f2aeaf3997f77f962baf6cb1 0 examples/apps/chat-ui/template/vite.config.mjs +100644 c4f53e7046f5e96f6d4b842f22eeba58370c213e 0 examples/apps/local-dashboard/README.md +100644 ce255a94de81943d86a3c995ad7a394b3dafedb4 0 examples/apps/local-dashboard/template/.env.example +100644 798512caa77c340996ad95f76b24151a7760c6eb 0 examples/apps/local-dashboard/template/AGENTS.md +100644 46109dcf5c884631dc4ebda1ff52591434e6d862 0 examples/apps/local-dashboard/template/README.md +100644 8b137891791fe96927ad78e64b0aad7bded08bdc 0 examples/apps/local-dashboard/template/docs/eval/.gitkeep +100644 984f4d342914cac1f3a71e621eed4d3cc080daf7 0 examples/apps/local-dashboard/template/index.html +100644 fdc205fb9dc0ec61c57f49f9d250a440c9ab61b2 0 examples/apps/local-dashboard/template/package.json +100644 4f640ea774e24ea0c15232d2e7aed28cfdd8ba42 0 examples/apps/local-dashboard/template/public/nodeagent-state.json +100644 4019d15e7ed2735b6f3f652d3719d81bd644cb72 0 examples/apps/local-dashboard/template/scripts/run-local-agent.mjs +100644 5ef2602e3581669bb2cc0b075b55363f64355e9f 0 examples/apps/local-dashboard/template/src/main.jsx +100644 386c4de1f99cbb185b4959cc959f02256475d1d3 0 examples/apps/local-dashboard/template/src/styles.css +100644 b4be5fb6bddc04ae34250fad11ed28156295e21f 0 examples/apps/local-dashboard/template/vite.config.mjs +100644 5e4c793aba7bc9c6bdd7facd96294601b8987369 0 examples/apps/local-design-dashboard/README.md +100644 85709a17446cf95f2c008d82041ae26c259d0019 0 examples/apps/minimal-portable-agent/.env.example +100644 633c344c0207b49a6b322be34c0100718ac94e4b 0 examples/apps/minimal-portable-agent/AGENTS.md +100644 ac92a2f70b83cc69930456a3ce7cbd99fe0db992 0 examples/apps/minimal-portable-agent/README.md +100644 10b0f5ecc9a669a7f8cce2e5457acf8bb521816e 0 examples/apps/video-agent-pipeline/README.md +100644 234efb234009138d611c0f60961b0abe2e66a6fa 0 examples/omnigent/nodeagent-reviewer.yaml +100644 b59731d1af0cd66b4d5d4f108f7ec2166940661a 0 examples/omnigent/nodeagent-worker.yaml +100644 1727d5342017fea5f21e314300fc379265d6eb7f 0 index.html +100644 b522499c67cafed21d3f17c744140a5f34458c38 0 nodeagent-v1.html +100644 17063f6e3f7cfada70846a97c304767defe806e4 0 nodekit.yaml +100644 4ea5aed3a59c8aee48f20062e744254d42aca918 0 package-lock.json +100644 65aea592ab3913e97220d2c02b99fab417135e30 0 package.json +100644 34e62b9dcf05be52a7526a1915ef3c258b462b32 0 scripts/example-guidance-smoke.ts +100644 aee9d14c921846a1771d89830f1bfcefdbd94055 0 scripts/nodeagent-chat-ui-scaffold-smoke.ts +100644 debaa8f605af2c85632dbc3f2f291fd98079c193 0 scripts/nodeagent-cli.ts +100644 470968f0f9fe7c68165478ace42dbe1dfda47e27 0 scripts/nodeagent-convex-smoke.ts +100644 b08c8a811c14a80d33a53b6508b0d2d96a119994 0 scripts/nodeagent-durable-smoke.ts +100644 5db722a6c29720841ac14ce5f41825ecfb432b54 0 scripts/nodeagent-frame-smoke.ts +100644 1630aa7c4c2bf858bb33decabfc5a946074385d7 0 scripts/nodeagent-live-provider-smoke.ts +100644 d5a3ef728e68705ee5d81d31021e12734d4f1f25 0 scripts/nodeagent-local-dashboard-scaffold-smoke.ts +100644 0279921e512cf36d9bfba9babba84f2dc8daefd9 0 scripts/nodeagent-sqlite-smoke.ts +100644 084af4a84de4a1a518fa274574177fa1d8558a7a 0 scripts/omnigent-nodeagent-smoke.ts +100644 b6b19ca188aa79333a1a9f057af0310c6633f875 0 scripts/omnigent-official-probe.mjs +100644 83e1a7702258bfd729d4ade5ee6f71a901aa6533 0 scripts/render-walkthrough-media.mjs +100644 1d60854c8ff472a0742baea8e7e9e80761db5a04 0 scripts/secret-scan.mjs +100644 d92aa1bb1cb540aaa238b56670bf195e4b1a3324 0 src/app/main.tsx +100644 f8f06fb35fc5aebc6983f4bde3173a0d8e799ea1 0 src/app/styles.css +100644 307e9c3dee007e6b2eeea49e7371e94c5086affe 0 src/features/chat/contextCollector.ts +100644 ddafa3f2a899e63f7198b42108bad6183d442b54 0 src/features/node-agent/components/NodeAgentDemoApp.tsx +100644 2b37204ac2fe1556b1c3ce7a9521c4150b256f8f 0 src/features/node-agent/components/NodeAgentThread.tsx +100644 bb7a6d93f3f7f8597210d6bce4007f9d916ef778 0 src/features/node-agent/components/toolUIs.tsx +100644 f08ad756d66f2e722178022113acfacc98145d92 0 src/features/node-agent/demoScenario.ts +100644 90c77a9656f1eff051e9b2926b1b278fea905ae3 0 src/features/node-agent/protocol/events.ts +100644 17a168d5977383298a75769749926885503d1d01 0 src/features/node-agent/protocol/model.ts +100644 b04d5716da0396b56f9e30bdd84b8c65b92f3c60 0 src/features/node-agent/providers/piAiAdapter.ts +100644 da7c1fecc9fbe1fa3f1d50eb8293f754917fef7a 0 src/features/node-agent/runtime/durableRuntime.ts +100644 95467e22f7f10eae1cc0984e86d405641caaec20 0 src/features/node-agent/runtime/nodeAgentChatAdapter.ts +100644 6ccc86a2393b9d048e14c08b9627bb02368fe63d 0 src/features/node-agent/runtime/nodeAgentRuntime.ts +100644 97f471d7af093ca53690e9bc08e5b9236457afa2 0 src/features/node-agent/runtime/omnigentAdapter.ts +100644 f7a7e64916d059cea183642d9fbef3d0880019da 0 src/features/node-agent/runtime/reasoningFrameRunner.ts +100644 e53cf8fc359b68eeae990ac4d24e18d91c27cc5c 0 src/features/node-agent/tools/nodeAgentTools.ts +100644 fea1f4cab9feab7ef61e778ffe58248384e2b413 0 src/features/node-agent/types/nodeAgentTypes.ts +100644 e99d50a0b7f91c3d80716c28615a81c8b1c65f4f 0 src/features/notebook/notebookEditor.ts +100644 78c62844c74b10df55a8fbfebe4123de4ff00db6 0 src/features/search/searchAndSynthesize.ts +100644 68b3bfc1afedc4f5701e8bdd73081b075e5bc096 0 src/features/spreadsheet/applySpreadsheetDelta.ts +100644 b516953dd5301fade38512af6660f468618fdebe 0 src/features/spreadsheet/versionedSpreadsheetSync.ts +100644 17464043af9c04a767e2e7265ae92fff8b29af94 0 src/mcp/toolRegistry.ts +100644 17601d7d5e9f337e896fe71086561574843cc849 0 src/runtime.ts +100644 f36137d6a64a2fecdb642e12590541c29a29c9af 0 tests/durableRuntime.test.ts +100644 88559d9f34d9fbd1332de39661e2c6773d42d509 0 tests/nodeAgentEventProtocol.test.ts +100644 3fe4748c8f6fb06817733b90582b38fa8b1d0b40 0 tests/nodeAgentRuntime.test.ts +100644 ba5860fb2e772c77bcb0e0d6cb9c230778c6ce98 0 tests/omnigentAdapter.test.ts +100644 ec59680280679ee7284df7493e5de0384016f3c1 0 tests/piAiAdapter.test.ts +100644 5ec1efe64d78f8e1a33442204992a7f9e284300f 0 tests/reasoningFrameRunner.test.ts +100644 ad29ac556ddc122ae48d2d407828003312448f66 0 tests/searchSynthesize.test.ts +100644 93300a54a09de3662524c27ba5f559a1572e6d7d 0 tests/spreadsheetDelta.test.ts +100644 d10e15b91acdfd6c3d33b68d4492f82a79e0afd7 0 tests/sqliteDurableRuntime.test.ts +100644 b94fb09052dbb0c5406a924d772ef626bb70f939 0 tsconfig.json +100644 868bd8e9187c682ed5d27f102ac9558c50c826f0 0 vite.config.ts +100644 759017a81d4d56ac98bb4ec58cab9e9b15171453 0 vitest.config.ts diff --git a/evidence/current-consumer-20260905/operator/primary-index.before b/evidence/current-consumer-20260905/operator/primary-index.before new file mode 100644 index 0000000..2780ff8 Binary files /dev/null and b/evidence/current-consumer-20260905/operator/primary-index.before differ diff --git a/evidence/current-consumer-20260905/operator/primary-refs.after b/evidence/current-consumer-20260905/operator/primary-refs.after new file mode 100644 index 0000000..8294916 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/primary-refs.after @@ -0,0 +1,7 @@ +4e525fd0f84e08a4f8203599d7341c17bf53205e refs/heads/codex/nodeagent-current-consumer-20260905 +c0ad5236d5424fca60008ed500cb565683bcd1d5 refs/heads/codex/nodeagent-runtime-contract +f785a56979095bc2edd5f0d7eac583e0971e8b57 refs/heads/main +fab0eb14d409fec60a8272e56c9e669dd2ebd580 refs/remotes/origin/claude/ci-conformance-fix +c0ad5236d5424fca60008ed500cb565683bcd1d5 refs/remotes/origin/codex/nodeagent-runtime-contract +1f74d072fe9e41963f8ddbbc537737f389055406 refs/remotes/origin/liveflow-room-agent-walkthrough +4e525fd0f84e08a4f8203599d7341c17bf53205e refs/remotes/origin/main diff --git a/evidence/current-consumer-20260905/operator/primary-refs.before b/evidence/current-consumer-20260905/operator/primary-refs.before new file mode 100644 index 0000000..c0fc75e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/primary-refs.before @@ -0,0 +1,6 @@ +c0ad5236d5424fca60008ed500cb565683bcd1d5 refs/heads/codex/nodeagent-runtime-contract +f785a56979095bc2edd5f0d7eac583e0971e8b57 refs/heads/main +fab0eb14d409fec60a8272e56c9e669dd2ebd580 refs/remotes/origin/claude/ci-conformance-fix +c0ad5236d5424fca60008ed500cb565683bcd1d5 refs/remotes/origin/codex/nodeagent-runtime-contract +1f74d072fe9e41963f8ddbbc537737f389055406 refs/remotes/origin/liveflow-room-agent-walkthrough +4e525fd0f84e08a4f8203599d7341c17bf53205e refs/remotes/origin/main diff --git a/evidence/current-consumer-20260905/operator/primary-status.after b/evidence/current-consumer-20260905/operator/primary-status.after new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/primary-status.before b/evidence/current-consumer-20260905/operator/primary-status.before new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/primary-worktrees.after b/evidence/current-consumer-20260905/operator/primary-worktrees.after new file mode 100644 index 0000000..2a975f7 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/primary-worktrees.after @@ -0,0 +1,8 @@ +worktree D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/NodeAgent +HEAD c0ad5236d5424fca60008ed500cb565683bcd1d5 +branch refs/heads/codex/nodeagent-runtime-contract + +worktree D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/.portfolio-worktrees/nodeagent-current-consumer-20260905 +HEAD 4e525fd0f84e08a4f8203599d7341c17bf53205e +branch refs/heads/codex/nodeagent-current-consumer-20260905 + diff --git a/evidence/current-consumer-20260905/operator/primary-worktrees.before b/evidence/current-consumer-20260905/operator/primary-worktrees.before new file mode 100644 index 0000000..76f2c4e --- /dev/null +++ b/evidence/current-consumer-20260905/operator/primary-worktrees.before @@ -0,0 +1,4 @@ +worktree D:/VSCode Projects/cafecorner_nodebench/nodebench_ai4/NodeAgent +HEAD c0ad5236d5424fca60008ed500cb565683bcd1d5 +branch refs/heads/codex/nodeagent-runtime-contract + diff --git a/evidence/current-consumer-20260905/operator/source-audit.stderr b/evidence/current-consumer-20260905/operator/source-audit.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/source-audit.stdout b/evidence/current-consumer-20260905/operator/source-audit.stdout new file mode 100644 index 0000000..a6b9868 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/source-audit.stdout @@ -0,0 +1,428 @@ +{ + "auditReportVersion": 2, + "vulnerabilities": { + "@vitest/mocker": { + "name": "@vitest/mocker", + "severity": "moderate", + "isDirect": false, + "via": [ + "vite" + ], + "effects": [ + "vitest" + ], + "range": "<=3.0.0-beta.4", + "nodes": [ + "node_modules/vitest/node_modules/@vitest/mocker" + ], + "fixAvailable": { + "name": "vitest", + "version": "5.0.0", + "isSemVerMajor": true + } + }, + "brace-expansion": { + "name": "brace-expansion", + "severity": "high", + "isDirect": false, + "via": [ + { + "source": 1123898, + "name": "brace-expansion", + "dependency": "brace-expansion", + "title": "brace-expansion: DoS via exponential-time expansion of consecutive non-expanding {} groups", + "url": "https://github.com/advisories/GHSA-3jxr-9vmj-r5cp", + "severity": "high", + "cwe": [ + "CWE-400", + "CWE-407" + ], + "cvss": { + "score": 5.3, + "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L" + }, + "range": ">=3.0.0 <5.0.7" + }, + { + "source": 1130591, + "name": "brace-expansion", + "dependency": "brace-expansion", + "title": "brace-expansion: DoS via unbounded expansion length causing an out-of-memory process crash", + "url": "https://github.com/advisories/GHSA-mh99-v99m-4gvg", + "severity": "high", + "cwe": [ + "CWE-400", + "CWE-770" + ], + "cvss": { + "score": 7.5, + "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H" + }, + "range": ">=4.0.0 <5.0.8" + }, + { + "source": 1130734, + "name": "brace-expansion", + "dependency": "brace-expansion", + "title": "brace-expansion: DoS via unbounded intermediate arrays, bypassing the CVE-2026-14257 mitigation", + "url": "https://github.com/advisories/GHSA-rgw5-rvv9-x895", + "severity": "high", + "cwe": [ + "CWE-400", + "CWE-770" + ], + "cvss": { + "score": 7.5, + "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H" + }, + "range": ">=4.0.0 <5.0.9" + } + ], + "effects": [], + "range": "3.0.0 - 5.0.8", + "nodes": [ + "node_modules/brace-expansion" + ], + "fixAvailable": true + }, + "browserslist": { + "name": "browserslist", + "severity": "high", + "isDirect": false, + "via": [ + { + "source": 1153171, + "name": "browserslist", + "dependency": "browserslist", + "title": "Browserslist: Unbounded memory growth (no cache eviction) via distinct query results, leading to eventual OOM", + "url": "https://github.com/advisories/GHSA-c83g-rgw3-j3cx", + "severity": "high", + "cwe": [ + "CWE-770" + ], + "cvss": { + "score": 7.5, + "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H" + }, + "range": "<=4.28.6" + }, + { + "source": 1153172, + "name": "browserslist", + "dependency": "browserslist", + "title": "Browserslist: Uncaught crash / prototype write via untrusted browserslist-stats.json custom stats (normalizeStats)", + "url": "https://github.com/advisories/GHSA-73wf-gq98-2v4g", + "severity": "high", + "cwe": [ + "CWE-248", + "CWE-1321" + ], + "cvss": { + "score": 7.5, + "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H" + }, + "range": "<=4.28.6" + } + ], + "effects": [], + "range": "<=4.28.6", + "nodes": [ + "node_modules/browserslist" + ], + "fixAvailable": true + }, + "esbuild": { + "name": "esbuild", + "severity": "moderate", + "isDirect": false, + "via": [ + { + "source": 1102341, + "name": "esbuild", + "dependency": "esbuild", + "title": "esbuild enables any website to send any requests to the development server and read the response", + "url": "https://github.com/advisories/GHSA-67mh-4wv8-2f99", + "severity": "moderate", + "cwe": [ + "CWE-346" + ], + "cvss": { + "score": 5.3, + "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N" + }, + "range": "<=0.24.2" + }, + { + "source": 1120680, + "name": "esbuild", + "dependency": "esbuild", + "title": "esbuild allows arbitrary file read when running the development server on Windows", + "url": "https://github.com/advisories/GHSA-g7r4-m6w7-qqqr", + "severity": "low", + "cwe": [ + "CWE-22" + ], + "cvss": { + "score": 2.5, + "vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N" + }, + "range": ">=0.27.3 <0.28.1" + } + ], + "effects": [ + "vite" + ], + "range": "<=0.24.2 || 0.27.3 - 0.28.0", + "nodes": [ + "node_modules/tsx/node_modules/esbuild", + "node_modules/vite-node/node_modules/esbuild", + "node_modules/vitest/node_modules/esbuild" + ], + "fixAvailable": { + "name": "vitest", + "version": "5.0.0", + "isSemVerMajor": true + } + }, + "nanoid": { + "name": "nanoid", + "severity": "high", + "isDirect": false, + "via": [ + { + "source": 1138811, + "name": "nanoid", + "dependency": "nanoid", + "title": "nanoid: non-secure generators can loop indefinitely with negative size", + "url": "https://github.com/advisories/GHSA-28wg-ghj8-5hjv", + "severity": "high", + "cwe": [ + "CWE-835" + ], + "cvss": { + "score": 5.9, + "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H" + }, + "range": "<3.3.16" + }, + { + "source": 1139427, + "name": "nanoid", + "dependency": "nanoid", + "title": "nanoid: custom generators can loop indefinitely when size is zero", + "url": "https://github.com/advisories/GHSA-2v37-7h3g-55p8", + "severity": "high", + "cwe": [ + "CWE-835" + ], + "cvss": { + "score": 5.9, + "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H" + }, + "range": "<3.3.18" + } + ], + "effects": [], + "range": "<=3.3.17", + "nodes": [ + "node_modules/nanoid" + ], + "fixAvailable": true + }, + "postcss": { + "name": "postcss", + "severity": "high", + "isDirect": false, + "via": [ + { + "source": 1130709, + "name": "postcss", + "dependency": "postcss", + "title": "PostCSS: incomplete fix of GHSA-6g55-p6wh-862q — attacker-controlled sourceMappingURL reads arbitrary .map files when `from` is unset", + "url": "https://github.com/advisories/GHSA-fxqj-rqcc-2cmp", + "severity": "moderate", + "cwe": [ + "CWE-22", + "CWE-200" + ], + "cvss": { + "score": 0, + "vectorString": null + }, + "range": "<=8.5.22" + }, + { + "source": 1139510, + "name": "postcss", + "dependency": "postcss", + "title": "PostCSS: Path Traversal in Previous Source Map Auto-Loading (sourceMappingURL) leads to Arbitrary .map File Disclosure", + "url": "https://github.com/advisories/GHSA-r28c-9q8g-f849", + "severity": "high", + "cwe": [ + "CWE-22" + ], + "cvss": { + "score": 7.5, + "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N" + }, + "range": "<=8.5.17" + } + ], + "effects": [], + "range": "<=8.5.22", + "nodes": [ + "node_modules/postcss" + ], + "fixAvailable": true + }, + "vite": { + "name": "vite", + "severity": "high", + "isDirect": false, + "via": [ + { + "source": 1116229, + "name": "vite", + "dependency": "vite", + "title": "Vite Vulnerable to Path Traversal in Optimized Deps `.map` Handling", + "url": "https://github.com/advisories/GHSA-4w7w-66w2-5vf9", + "severity": "moderate", + "cwe": [ + "CWE-22", + "CWE-200" + ], + "cvss": { + "score": 0, + "vectorString": null + }, + "range": "<=6.4.1" + }, + { + "source": 1120784, + "name": "vite", + "dependency": "vite", + "title": "launch-editor: NTLMv2 hash disclosure via UNC path handling on Windows", + "url": "https://github.com/advisories/GHSA-v6wh-96g9-6wx3", + "severity": "moderate", + "cwe": [ + "CWE-73", + "CWE-522" + ], + "cvss": { + "score": 0, + "vectorString": null + }, + "range": "<=6.4.2" + }, + { + "source": 1123525, + "name": "vite", + "dependency": "vite", + "title": "vite: `server.fs.deny` bypass on Windows alternate paths", + "url": "https://github.com/advisories/GHSA-fx2h-pf6j-xcff", + "severity": "high", + "cwe": [ + "CWE-22", + "CWE-200" + ], + "cvss": { + "score": 7.5, + "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N" + }, + "range": "<=6.4.2" + }, + "esbuild" + ], + "effects": [ + "@vitest/mocker", + "vite-node", + "vitest" + ], + "range": "<=6.4.2", + "nodes": [ + "node_modules/vite-node/node_modules/vite", + "node_modules/vitest/node_modules/vite" + ], + "fixAvailable": { + "name": "vitest", + "version": "5.0.0", + "isSemVerMajor": true + } + }, + "vite-node": { + "name": "vite-node", + "severity": "moderate", + "isDirect": false, + "via": [ + "vite" + ], + "effects": [ + "vitest" + ], + "range": "<=2.2.0-beta.2", + "nodes": [ + "node_modules/vite-node" + ], + "fixAvailable": { + "name": "vitest", + "version": "5.0.0", + "isSemVerMajor": true + } + }, + "vitest": { + "name": "vitest", + "severity": "critical", + "isDirect": true, + "via": [ + "@vitest/mocker", + { + "source": 1139528, + "name": "vitest", + "dependency": "vitest", + "title": "When Vitest UI server is listening, arbitrary file can be read and executed", + "url": "https://github.com/advisories/GHSA-5xrq-8626-4rwp", + "severity": "critical", + "cwe": [ + "CWE-22", + "CWE-862" + ], + "cvss": { + "score": 9.8, + "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H" + }, + "range": "<3.2.6" + }, + "vite", + "vite-node" + ], + "effects": [], + "range": "<=3.2.5", + "nodes": [ + "node_modules/vitest" + ], + "fixAvailable": { + "name": "vitest", + "version": "5.0.0", + "isSemVerMajor": true + } + } + }, + "metadata": { + "vulnerabilities": { + "info": 0, + "low": 0, + "moderate": 3, + "high": 5, + "critical": 1, + "total": 9 + }, + "dependencies": { + "prod": 268, + "dev": 250, + "optional": 151, + "peer": 1, + "peerOptional": 0, + "total": 544 + } + } +} diff --git a/evidence/current-consumer-20260905/operator/source-custody.json b/evidence/current-consumer-20260905/operator/source-custody.json new file mode 100644 index 0000000..ce641a1 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/source-custody.json @@ -0,0 +1,11 @@ +{ + "sourceHead": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "newBranch": "codex/nodeagent-current-consumer-20260905", + "worktree": "D:\\VSCode Projects\\cafecorner_nodebench\\nodebench_ai4\\.portfolio-worktrees\\nodeagent-current-consumer-20260905", + "originalBranchPreserved": "codex/nodeagent-runtime-contract", + "originalHead": "c0ad5236d5424fca60008ed500cb565683bcd1d5", + "createdAt": "2026-09-05T07:11:29.913025+00:00", + "purpose": "NODEAGENT-CURRENT-CONSUMER-01 isolated package/application adoption proof", + "integration": "NOT_YET_REVIEWED", + "retirement": "HOLD_UNTIL_RETAINED_EVIDENCE_AND_OWNER_RELEASE" +} diff --git a/evidence/current-consumer-20260905/operator/source-npm-ci.json b/evidence/current-consumer-20260905/operator/source-npm-ci.json new file mode 100644 index 0000000..c4c18d4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/source-npm-ci.json @@ -0,0 +1,32 @@ +{ + "command": [ + "npm", + "ci" + ], + "exitCode": 0, + "seconds": 16.72, + "environmentKeys": [ + "APPDATA", + "COMSPEC", + "HOMEDRIVE", + "HOMEPATH", + "LOCALAPPDATA", + "NPM_CONFIG_GLOBALCONFIG", + "NPM_CONFIG_USERCONFIG", + "NUMBER_OF_PROCESSORS", + "OS", + "PATH", + "PATHEXT", + "PROCESSOR_ARCHITECTURE", + "SYSTEMDRIVE", + "SYSTEMROOT", + "TEMP", + "TMP", + "USERPROFILE", + "WINDIR" + ], + "providerVariablesPassed": false, + "envFilesPresent": false, + "stdoutSha256": "a7cc1fc56bd4557bcba245d99a30bcbf76f7fc2f8347c9af41826f3d2c8d5624", + "stderrSha256": "da370bd608ea0f37ee2141f76cc040fe073f2665c7130ec0d3eb441b3a077804" +} diff --git a/evidence/current-consumer-20260905/operator/source-npm-ci.stderr b/evidence/current-consumer-20260905/operator/source-npm-ci.stderr new file mode 100644 index 0000000..b399e31 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/source-npm-ci.stderr @@ -0,0 +1,6 @@ +npm warn deprecated prebuild-install@7.1.3: No longer maintained. Please contact the author of the relevant native addon; alternatives are available. +npm notice +npm notice New major version of npm available! 10.9.7 -> 12.0.2 +npm notice Changelog: https://github.com/npm/cli/releases/tag/v12.0.2 +npm notice To update run: npm install -g npm@12.0.2 +npm notice diff --git a/evidence/current-consumer-20260905/operator/source-npm-ci.stdout b/evidence/current-consumer-20260905/operator/source-npm-ci.stdout new file mode 100644 index 0000000..1f0285a --- /dev/null +++ b/evidence/current-consumer-20260905/operator/source-npm-ci.stdout @@ -0,0 +1,15 @@ + +added 400 packages, and audited 401 packages in 16s + +35 packages are looking for funding + run `npm fund` for details + +9 vulnerabilities (3 moderate, 5 high, 1 critical) + +To address issues that do not require attention, run: + npm audit fix + +To address all issues (including breaking changes), run: + npm audit fix --force + +Run `npm audit` for details. diff --git a/evidence/current-consumer-20260905/operator/source-pack.stderr b/evidence/current-consumer-20260905/operator/source-pack.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/source-pack.stdout b/evidence/current-consumer-20260905/operator/source-pack.stdout new file mode 100644 index 0000000..45b33f9 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/source-pack.stdout @@ -0,0 +1,1206 @@ +[ + { + "id": "nodeagent@0.1.0", + "name": "nodeagent", + "version": "0.1.0", + "size": 8675521, + "unpackedSize": 10621924, + "shasum": "6a43d5a0774d557e6f24a3118773b515bcc213dc", + "integrity": "sha512-rZ4U48d56mmZqZsywzDYWTm1x+8RUbFfRBy+slauHYheY1gm2Rzx9HeLkbtYo+nSqHo8s7ZQGFUQvzrgSGTHtQ==", + "filename": "nodeagent-0.1.0.tgz", + "files": [ + { + "path": ".env.example", + "size": 2059, + "mode": 420 + }, + { + "path": ".gitattributes", + "size": 230, + "mode": 420 + }, + { + "path": ".github/workflows/ci.yml", + "size": 1007, + "mode": 420 + }, + { + "path": ".github/workflows/node-platform-conformance.yml", + "size": 245, + "mode": 420 + }, + { + "path": ".tours/01-primary-user-flow.tour", + "size": 4743, + "mode": 420 + }, + { + "path": ".tours/02-agent-execution.tour", + "size": 4419, + "mode": 420 + }, + { + "path": ".tours/03-debug-and-recovery.tour", + "size": 4149, + "mode": 420 + }, + { + "path": "NODE-LOOPS.md", + "size": 18453, + "mode": 420 + }, + { + "path": "README.md", + "size": 24923, + "mode": 420 + }, + { + "path": "bin/nodeagent.mjs", + "size": 9925, + "mode": 420 + }, + { + "path": "convex/schema.ts", + "size": 6450, + "mode": 420 + }, + { + "path": "demo/runNodeAgentDemo.ts", + "size": 3047, + "mode": 420 + }, + { + "path": "docs/ARCHITECTURE.md", + "size": 23278, + "mode": 420 + }, + { + "path": "docs/CHAT_UI_ADOPTION.md", + "size": 2472, + "mode": 420 + }, + { + "path": "docs/codebase/ARCHITECTURE.md", + "size": 6793, + "mode": 420 + }, + { + "path": "docs/codebase/CONCERNS.md", + "size": 7265, + "mode": 420 + }, + { + "path": "docs/codebase/CONVENTIONS.md", + "size": 4354, + "mode": 420 + }, + { + "path": "docs/codebase/INTEGRATIONS.md", + "size": 4605, + "mode": 420 + }, + { + "path": "docs/codebase/STACK.md", + "size": 3543, + "mode": 420 + }, + { + "path": "docs/codebase/STRUCTURE.md", + "size": 4452, + "mode": 420 + }, + { + "path": "docs/codebase/TESTING.md", + "size": 5470, + "mode": 420 + }, + { + "path": "docs/DEMO_SCRIPT.md", + "size": 13073, + "mode": 420 + }, + { + "path": "docs/DURABLE_RUNTIME.md", + "size": 4339, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-chat-ui-scaffold-smoke.json", + "size": 940, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-convex-smoke.json", + "size": 292, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-durable-smoke.json", + "size": 798, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-frame-smoke.json", + "size": 513, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-happy-path-speed.json", + "size": 1389, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-live-provider-smoke.json", + "size": 375, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-local-dashboard-scaffold-smoke.json", + "size": 796, + "mode": 420 + }, + { + "path": "docs/eval/nodeagent-sqlite-smoke.json", + "size": 915, + "mode": 420 + }, + { + "path": "docs/eval/omnigent-nodeagent-smoke.json", + "size": 4911, + "mode": 420 + }, + { + "path": "docs/eval/omnigent-official-cli-probe.json", + "size": 3882, + "mode": 420 + }, + { + "path": "docs/FEATURE_PROOF_STORYBOARD.md", + "size": 2524, + "mode": 420 + }, + { + "path": "docs/GRAPH_INTEGRATION.md", + "size": 11246, + "mode": 420 + }, + { + "path": "docs/LOCAL_DASHBOARD_WALKTHROUGH.md", + "size": 3009, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.gif", + "size": 3752304, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.mp4", + "size": 752930, + "mode": 420 + }, + { + "path": "docs/media/live-graph-rail.png", + "size": 153152, + "mode": 420 + }, + { + "path": "docs/MIGRATION_MAP.md", + "size": 6228, + "mode": 420 + }, + { + "path": "docs/OMNIGENT_INTEGRATION.md", + "size": 3501, + "mode": 420 + }, + { + "path": "docs/PUSH_TO_GITHUB.md", + "size": 3458, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-desktop-empty.png", + "size": 73151, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-desktop-run.png", + "size": 109697, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-mobile-empty.png", + "size": 49168, + "mode": 420 + }, + { + "path": "docs/screenshots/chat-mobile-run.png", + "size": 72898, + "mode": 420 + }, + { + "path": "docs/screenshots/local-dashboard-builder-locked.png", + "size": 77366, + "mode": 420 + }, + { + "path": "docs/screenshots/local-dashboard-overview.png", + "size": 99852, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-desktop-empty.png", + "size": 104196, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-desktop-run.png", + "size": 292952, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-mobile-empty.png", + "size": 74915, + "mode": 420 + }, + { + "path": "docs/screenshots/proto-mobile-run.png", + "size": 254578, + "mode": 420 + }, + { + "path": "docs/SIMPLIFICATION_REPORT.md", + "size": 19108, + "mode": 420 + }, + { + "path": "docs/START_HERE.md", + "size": 17384, + "mode": 420 + }, + { + "path": "docs/TECH_RETRO.md", + "size": 7418, + "mode": 420 + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.gif", + "size": 179310, + "mode": 420 + }, + { + "path": "docs/walkthroughs/nodeagent-local-dashboard-walkthrough.mp4", + "size": 63733, + "mode": 420 + }, + { + "path": "e2e/audit-web-quality.mjs", + "size": 8040, + "mode": 420 + }, + { + "path": "e2e/capture-journey-at-width.mjs", + "size": 14569, + "mode": 420 + }, + { + "path": "e2e/capture-live-graph-rail.mjs", + "size": 3581, + "mode": 420 + }, + { + "path": "e2e/record-live-graph-rail.mjs", + "size": 4094, + "mode": 420 + }, + { + "path": "e2e/wig-review.mjs", + "size": 13334, + "mode": 420 + }, + { + "path": "examples/adapters/AGENTS.md", + "size": 992, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/.env.example", + "size": 119, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/iam-policy.template.json", + "size": 741, + "mode": 420 + }, + { + "path": "examples/adapters/aws-dynamodb/README.md", + "size": 2892, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/.env.example", + "size": 114, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/README.md", + "size": 2583, + "mode": 420 + }, + { + "path": "examples/adapters/cloudflare/wrangler.example.jsonc", + "size": 632, + "mode": 420 + }, + { + "path": "examples/adapters/convex/.env.example", + "size": 141, + "mode": 420 + }, + { + "path": "examples/adapters/convex/README.md", + "size": 2758, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/.env.example", + "size": 68, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/README.md", + "size": 2491, + "mode": 420 + }, + { + "path": "examples/adapters/postgres/schema.sql", + "size": 1455, + "mode": 420 + }, + { + "path": "examples/adapters/README.md", + "size": 3284, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/.env.example", + "size": 142, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/README.md", + "size": 2132, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/schema.sql", + "size": 1408, + "mode": 420 + }, + { + "path": "examples/adapters/sqlite-local/sqliteDurableRuntime.ts", + "size": 13915, + "mode": 420 + }, + { + "path": "examples/apps/aws-hackathon-visual-labs/README.md", + "size": 1769, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/README.md", + "size": 2782, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/.env.example", + "size": 181, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/AGENTS.md", + "size": 966, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/index.html", + "size": 304, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/package.json", + "size": 558, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/public/nodeagent-chat-state.json", + "size": 227, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/README.md", + "size": 2170, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/scripts/chat-ui-smoke.mjs", + "size": 2953, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/scripts/run-chat-demo.mjs", + "size": 1251, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/main.jsx", + "size": 296, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "size": 4280, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js", + "size": 4251, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "size": 3350, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/src/styles.css", + "size": 6410, + "mode": 420 + }, + { + "path": "examples/apps/chat-ui/template/vite.config.mjs", + "size": 176, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/README.md", + "size": 3366, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/.env.example", + "size": 183, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/AGENTS.md", + "size": 693, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/docs/eval/.gitkeep", + "size": 1, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/index.html", + "size": 312, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/package.json", + "size": 613, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/public/nodeagent-state.json", + "size": 2228, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/README.md", + "size": 2440, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/scripts/run-local-agent.mjs", + "size": 7591, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/src/main.jsx", + "size": 8493, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/src/styles.css", + "size": 6174, + "mode": 420 + }, + { + "path": "examples/apps/local-dashboard/template/vite.config.mjs", + "size": 192, + "mode": 420 + }, + { + "path": "examples/apps/local-design-dashboard/README.md", + "size": 1411, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/.env.example", + "size": 136, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/AGENTS.md", + "size": 287, + "mode": 420 + }, + { + "path": "examples/apps/minimal-portable-agent/README.md", + "size": 1771, + "mode": 420 + }, + { + "path": "examples/apps/README.md", + "size": 2011, + "mode": 420 + }, + { + "path": "examples/apps/video-agent-pipeline/README.md", + "size": 2115, + "mode": 420 + }, + { + "path": "examples/omnigent/nodeagent-reviewer.yaml", + "size": 811, + "mode": 420 + }, + { + "path": "examples/omnigent/nodeagent-worker.yaml", + "size": 886, + "mode": 420 + }, + { + "path": "index.html", + "size": 1273, + "mode": 420 + }, + { + "path": "knip.json", + "size": 1226, + "mode": 420 + }, + { + "path": "nodeagent-v1.html", + "size": 25839, + "mode": 420 + }, + { + "path": "nodekit.yaml", + "size": 1291, + "mode": 420 + }, + { + "path": "package.json", + "size": 5147, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-initial-prefix.json", + "size": 111936, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-initial.json", + "size": 112485, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-axe-1440.json", + "size": 697, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-keyboard-375.json", + "size": 677, + "mode": 420 + }, + { + "path": "promotion/evidence/axe-populated-prefix-keyboard-375.json", + "size": 3271, + "mode": 420 + }, + { + "path": "promotion/evidence/baseline-observations.json", + "size": 2602, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-agent-running.png", + "size": 68440, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-empty.png", + "size": 84064, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-keyboard-run.png", + "size": 162268, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-run.png", + "size": 162473, + "mode": 420 + }, + { + "path": "promotion/evidence/desktop-1440-second-turn.png", + "size": 141629, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-observations.json", + "size": 971, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-run.png", + "size": 55980, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-steering-observations.json", + "size": 1035, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-375-steering-run.png", + "size": 54568, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-768-observations.json", + "size": 972, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-768-run.png", + "size": 108296, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-960-observations.json", + "size": 971, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-960-run.png", + "size": 102626, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-1440-observations.json", + "size": 975, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-1440-run.png", + "size": 142820, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-axe-1440-observations.json", + "size": 1576, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-axe-1440-run.png", + "size": 142664, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-keyboard-375-observations.json", + "size": 1827, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-keyboard-375-run.png", + "size": 56137, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-375-observations.json", + "size": 1421, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-375-run.png", + "size": 17874, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-observations.json", + "size": 4769, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-prefix-keyboard-375-run.png", + "size": 61683, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-375-observations.json", + "size": 942, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-375-run.png", + "size": 61575, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-1440-observations.json", + "size": 946, + "mode": 420 + }, + { + "path": "promotion/evidence/journey-wave3-1440-run.png", + "size": 143242, + "mode": 420 + }, + { + "path": "promotion/evidence/lighthouse-desktop.json", + "size": 507209, + "mode": 420 + }, + { + "path": "promotion/evidence/lighthouse-mobile.json", + "size": 538645, + "mode": 420 + }, + { + "path": "promotion/evidence/mobile-375-empty.png", + "size": 50419, + "mode": 420 + }, + { + "path": "promotion/evidence/mobile-375-run.png", + "size": 17874, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-375-load.png", + "size": 72242, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-375-run.png", + "size": 82707, + "mode": 420 + }, + { + "path": "promotion/evidence/proto-1440-load.png", + "size": 106661, + "mode": 420 + }, + { + "path": "promotion/evidence/web-quality-audit-prefix.json", + "size": 6321, + "mode": 420 + }, + { + "path": "promotion/evidence/web-quality-audit.json", + "size": 5913, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-desktop-1440.png", + "size": 151387, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-mobile-375.png", + "size": 55383, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-prefix-desktop-1440.png", + "size": 151660, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-prefix-mobile-375.png", + "size": 67905, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-review-prefix.json", + "size": 13686, + "mode": 420 + }, + { + "path": "promotion/evidence/wig-review.json", + "size": 13677, + "mode": 420 + }, + { + "path": "promotion/PRODUCT_GOAL.md", + "size": 12758, + "mode": 420 + }, + { + "path": "promotion/PRODUCT_JOURNEYS.md", + "size": 8759, + "mode": 420 + }, + { + "path": "promotion/PROMOTION_LOG.md", + "size": 21001, + "mode": 420 + }, + { + "path": "promotion/SKILLS.md", + "size": 1965, + "mode": 420 + }, + { + "path": "promotion/WIG_REVIEW.md", + "size": 10270, + "mode": 420 + }, + { + "path": "scripts/build-tours.mjs", + "size": 12094, + "mode": 420 + }, + { + "path": "scripts/example-guidance-smoke.ts", + "size": 6150, + "mode": 420 + }, + { + "path": "scripts/nodeagent-chat-ui-scaffold-smoke.ts", + "size": 6899, + "mode": 420 + }, + { + "path": "scripts/nodeagent-cli.ts", + "size": 12183, + "mode": 420 + }, + { + "path": "scripts/nodeagent-convex-smoke.ts", + "size": 3813, + "mode": 420 + }, + { + "path": "scripts/nodeagent-durable-smoke.ts", + "size": 3881, + "mode": 420 + }, + { + "path": "scripts/nodeagent-frame-smoke.ts", + "size": 1759, + "mode": 420 + }, + { + "path": "scripts/nodeagent-live-provider-smoke.ts", + "size": 12362, + "mode": 420 + }, + { + "path": "scripts/nodeagent-local-dashboard-scaffold-smoke.ts", + "size": 7620, + "mode": 420 + }, + { + "path": "scripts/nodeagent-sqlite-smoke.ts", + "size": 5087, + "mode": 420 + }, + { + "path": "scripts/omnigent-nodeagent-smoke.ts", + "size": 7796, + "mode": 420 + }, + { + "path": "scripts/omnigent-official-probe.mjs", + "size": 4419, + "mode": 420 + }, + { + "path": "scripts/render-walkthrough-media.mjs", + "size": 3784, + "mode": 420 + }, + { + "path": "scripts/secret-scan.mjs", + "size": 4589, + "mode": 420 + }, + { + "path": "scripts/validate-tours.mjs", + "size": 6395, + "mode": 420 + }, + { + "path": "src/app/main.tsx", + "size": 346, + "mode": 420 + }, + { + "path": "src/app/styles.css", + "size": 13641, + "mode": 420 + }, + { + "path": "src/features/chat/contextCollector.ts", + "size": 4882, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/GraphRailPanel.tsx", + "size": 1731, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/NodeAgentDemoApp.tsx", + "size": 2103, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/NodeAgentThread.tsx", + "size": 3401, + "mode": 420 + }, + { + "path": "src/features/node-agent/components/toolUIs.tsx", + "size": 5635, + "mode": 420 + }, + { + "path": "src/features/node-agent/demoScenario.ts", + "size": 4339, + "mode": 420 + }, + { + "path": "src/features/node-agent/graph/agentGraphSession.ts", + "size": 5405, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/durableRuntime.ts", + "size": 16727, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/nodeAgentChatAdapter.ts", + "size": 5303, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/nodeAgentRuntime.ts", + "size": 6247, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/omnigentAdapter.ts", + "size": 5334, + "mode": 420 + }, + { + "path": "src/features/node-agent/runtime/reasoningFrameRunner.ts", + "size": 4264, + "mode": 420 + }, + { + "path": "src/features/node-agent/types/nodeAgentTypes.ts", + "size": 7520, + "mode": 420 + }, + { + "path": "src/features/notebook/notebookEditor.ts", + "size": 3510, + "mode": 420 + }, + { + "path": "src/features/search/searchAndSynthesize.ts", + "size": 6871, + "mode": 420 + }, + { + "path": "src/features/spreadsheet/applySpreadsheetDelta.ts", + "size": 8449, + "mode": 420 + }, + { + "path": "src/features/spreadsheet/versionedSpreadsheetSync.ts", + "size": 3636, + "mode": 420 + }, + { + "path": "tests/durableRuntime.test.ts", + "size": 4594, + "mode": 420 + }, + { + "path": "tests/nodeAgentRuntime.test.ts", + "size": 3145, + "mode": 420 + }, + { + "path": "tests/omnigentAdapter.test.ts", + "size": 1690, + "mode": 420 + }, + { + "path": "tests/reasoningFrameRunner.test.ts", + "size": 1697, + "mode": 420 + }, + { + "path": "tests/searchSynthesize.test.ts", + "size": 4487, + "mode": 420 + }, + { + "path": "tests/spreadsheetDelta.test.ts", + "size": 6534, + "mode": 420 + }, + { + "path": "tests/sqliteDurableRuntime.test.ts", + "size": 3844, + "mode": 420 + }, + { + "path": "tsconfig.json", + "size": 864, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts", + "size": 6867, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.d.ts.map", + "size": 2448, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.js", + "size": 16285, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/graph-model.js.map", + "size": 13998, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.d.ts", + "size": 546, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.d.ts.map", + "size": 514, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.js", + "size": 305, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/index.js.map", + "size": 306, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts", + "size": 1267, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.d.ts.map", + "size": 1312, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js", + "size": 30805, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/NodeGraph.js.map", + "size": 24655, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.d.ts", + "size": 187, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.d.ts.map", + "size": 238, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.js", + "size": 120, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/react.js.map", + "size": 186, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/README.md", + "size": 111, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.d.ts", + "size": 2813, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.d.ts.map", + "size": 1876, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.js", + "size": 11719, + "mode": 420 + }, + { + "path": "vendor/nodegraph-live/session.js.map", + "size": 12101, + "mode": 420 + }, + { + "path": "vite.config.ts", + "size": 769, + "mode": 420 + }, + { + "path": "vitest.config.ts", + "size": 530, + "mode": 420 + } + ], + "entryCount": 238, + "bundled": [] + } +] diff --git a/evidence/current-consumer-20260905/operator/sqlite-reopen.json b/evidence/current-consumer-20260905/operator/sqlite-reopen.json new file mode 100644 index 0000000..286d58c --- /dev/null +++ b/evidence/current-consumer-20260905/operator/sqlite-reopen.json @@ -0,0 +1,39 @@ +{ + "ok": true, + "provider": "sqlite-local", + "databasePath": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\durable-proof.sqlite", + "keptDatabase": true, + "jobId": "job_nodeagent_sqlite_wedge_runway", + "frameId": "rf_nodeagent_demo_wedge_runway", + "first": { + "status": "completed", + "jobStatus": "completed", + "receiptStatus": "completed" + }, + "replayAfterReopen": { + "status": "replayed", + "replayed": true, + "sameFrameId": true + }, + "journal": { + "entryCount": 1, + "keys": [ + "job_nodeagent_sqlite_wedge_runway:rf_nodeagent_demo_wedge_runway:runReasoningFrame" + ] + }, + "lease": { + "blockedWhileActive": true, + "reclaimedAfterExpiry": true, + "fencingAdvanced": true + }, + "runwayMonths": 18, + "verification": { + "status": "completed", + "reason": "Frame completed.", + "evidenceState": { + "confidence": "high", + "citationCount": 3, + "winnerSourceId": "src_bench" + } + } +} diff --git a/evidence/current-consumer-20260905/operator/sqlite-reopen.stderr b/evidence/current-consumer-20260905/operator/sqlite-reopen.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/sqlite-reopen.stdout b/evidence/current-consumer-20260905/operator/sqlite-reopen.stdout new file mode 100644 index 0000000..046faaa --- /dev/null +++ b/evidence/current-consumer-20260905/operator/sqlite-reopen.stdout @@ -0,0 +1 @@ +nodeagent sqlite smoke: PASS db=D:\ProjectRecovery\NodeAgent current consumer 20260905\durable-proof.sqlite replay=replayed diff --git a/evidence/current-consumer-20260905/operator/template-lock-construction.command.json b/evidence/current-consumer-20260905/operator/template-lock-construction.command.json new file mode 100644 index 0000000..5a4d4c3 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/template-lock-construction.command.json @@ -0,0 +1,11 @@ +{ + "command": [ + "npm.cmd", + "install", + "--package-lock-only", + "--ignore-scripts", + "--offline" + ], + "exit": 0, + "seconds": 1.3120684623718262 +} diff --git a/evidence/current-consumer-20260905/operator/template-lock-construction.result.json b/evidence/current-consumer-20260905/operator/template-lock-construction.result.json new file mode 100644 index 0000000..de36d0d --- /dev/null +++ b/evidence/current-consumer-20260905/operator/template-lock-construction.result.json @@ -0,0 +1,37 @@ +{ + "cohort": { + "@assistant-ui/react": { + "canonical": "0.14.14", + "template": "0.14.14" + }, + "@assistant-ui/core": { + "canonical": "0.2.10", + "template": "0.2.10" + }, + "@assistant-ui/store": { + "canonical": "0.2.13", + "template": "0.2.13" + }, + "@assistant-ui/tap": { + "canonical": "0.5.14", + "template": "0.5.14" + }, + "react": { + "canonical": "19.2.7", + "template": "19.2.7" + }, + "react-dom": { + "canonical": "19.2.7", + "template": "19.2.7" + }, + "assistant-stream": { + "canonical": "0.3.20", + "template": "0.3.20" + } + }, + "lockedPackages": 355, + "templateLockSha256": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "newDependencies": 0, + "newRuntimeConfig": 0, + "rangeChanges": 0 +} diff --git a/evidence/current-consumer-20260905/operator/template-lock-construction.stderr b/evidence/current-consumer-20260905/operator/template-lock-construction.stderr new file mode 100644 index 0000000..e69de29 diff --git a/evidence/current-consumer-20260905/operator/template-lock-construction.stdout b/evidence/current-consumer-20260905/operator/template-lock-construction.stdout new file mode 100644 index 0000000..5271386 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/template-lock-construction.stdout @@ -0,0 +1,7 @@ + +up to date, audited 356 packages in 998ms + +12 packages are looking for funding + run `npm fund` for details + +found 0 vulnerabilities diff --git a/evidence/current-consumer-20260905/operator/template-lock-seed.json b/evidence/current-consumer-20260905/operator/template-lock-seed.json new file mode 100644 index 0000000..816eae4 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/template-lock-seed.json @@ -0,0 +1,9395 @@ +{ + "name": "nodeagent-chat-ui", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "nodeagent-chat-ui", + "version": "0.1.0", + "dependencies": { + "@assistant-ui/react": "^0.14.14", + "lucide-react": "^0.468.0", + "react": "^19.0.0", + "react-dom": "^19.0.0" + }, + "devDependencies": { + "@vitejs/plugin-react": "^4.3.4", + "vite": "^6.0.7" + } + }, + "node_modules/@assistant-ui/core": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/@assistant-ui/core/-/core-0.2.10.tgz", + "integrity": "sha512-0YyqlpZgg1Hoaq2X4jHAaMKXg+lGniLygNt1KrGFTPgbxeo8ZStRjWyyG2xIl+zlFKHiKCGHzflUHvlJi4IurA==", + "license": "MIT", + "dependencies": { + "assistant-stream": "^0.3.20", + "nanoid": "^5.1.11" + }, + "peerDependencies": { + "@assistant-ui/store": "^0.2.13", + "@assistant-ui/tap": "^0.5.14", + "@types/react": "*", + "assistant-cloud": "^0.1.31", + "react": "^18 || ^19", + "zustand": "^5.0.11" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "assistant-cloud": { + "optional": true + }, + "react": { + "optional": true + }, + "zustand": { + "optional": true + } + } + }, + "node_modules/@assistant-ui/core/node_modules/nanoid": { + "version": "5.1.16", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.16.tgz", + "integrity": "sha512-kVrnsrJqMR8+oLJnGEmSWw9BivK5mt7H3FZatVRjrc5wGqFYuBxX1yG7+A7Gi5AefkX6t/oCkizcQgpu0cY1dQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, + "node_modules/@assistant-ui/react": { + "version": "0.14.14", + "resolved": "https://registry.npmjs.org/@assistant-ui/react/-/react-0.14.14.tgz", + "integrity": "sha512-qS7YJewwFbmhs+yte56ZnO9jIOK+8hKo7mOK3cKDcCndn+jGSWTJmoNVIYQgMpB2JYIJ/SKZD+LeWSR6K3LL5g==", + "license": "MIT", + "dependencies": { + "@assistant-ui/core": "^0.2.10", + "@assistant-ui/store": "^0.2.13", + "@assistant-ui/tap": "^0.5.14", + "@radix-ui/primitive": "^1.1.3", + "@radix-ui/react-compose-refs": "^1.1.2", + "@radix-ui/react-context": "^1.1.3", + "@radix-ui/react-primitive": "^2.1.4", + "@radix-ui/react-use-callback-ref": "^1.1.1", + "@radix-ui/react-use-escape-keydown": "^1.1.1", + "assistant-cloud": "^0.1.31", + "assistant-stream": "^0.3.20", + "nanoid": "^5.1.11", + "radix-ui": "^1.4.3", + "react-textarea-autosize": "^8.5.9", + "safe-content-frame": "^0.0.20", + "zod": "^4.4.3", + "zustand": "^5.0.14" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@assistant-ui/react/node_modules/nanoid": { + "version": "5.1.16", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.16.tgz", + "integrity": "sha512-kVrnsrJqMR8+oLJnGEmSWw9BivK5mt7H3FZatVRjrc5wGqFYuBxX1yG7+A7Gi5AefkX6t/oCkizcQgpu0cY1dQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, + "node_modules/@assistant-ui/store": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/@assistant-ui/store/-/store-0.2.13.tgz", + "integrity": "sha512-7NL6HWMBxe1ndLWO4kHkjQ0Syyc0D/Aj+zxdpcy4yrplG71X04CzFimMBBSQAk+AnGBf+d96D7cuUZdjHkTavg==", + "license": "MIT", + "dependencies": { + "use-effect-event": "^2.0.3" + }, + "peerDependencies": { + "@assistant-ui/tap": "^0.5.14", + "@types/react": "*", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@assistant-ui/tap": { + "version": "0.5.14", + "resolved": "https://registry.npmjs.org/@assistant-ui/tap/-/tap-0.5.14.tgz", + "integrity": "sha512-SAy0ip8nKo72U8K9MuU7gYUR4tzoIi6k+HAQgev3zA/sWN7hr/QDDUTblrn5QB9Y/yycRiq8s98WD1vnDy8WMQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "react": { + "optional": true + } + } + }, + "node_modules/@babel/code-frame": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.7.tgz", + "integrity": "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.29.7", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.7.tgz", + "integrity": "sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.7.tgz", + "integrity": "sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helpers": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.29.7.tgz", + "integrity": "sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.29.7", + "@babel/helper-validator-option": "^7.29.7", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz", + "integrity": "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz", + "integrity": "sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.29.7.tgz", + "integrity": "sha512-G7sHYigPY17oO5SYWnfD/0MTBwVR781S/JI643e/JhUYgVgWE/61SoW3NH9KWUKyKq5LVh3npif99Wkt6j86Jw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz", + "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz", + "integrity": "sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.7.tgz", + "integrity": "sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.7.tgz", + "integrity": "sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.7" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.29.7.tgz", + "integrity": "sha512-TL0hMc9xzy86VD31nUiwzd5otRAcyEPcsegCxolO0PvcXuH1v0kECe/UIznYFihpkvU5wg/jk4v0TTEFfm53fw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.29.7.tgz", + "integrity": "sha512-06IyK09H3wi4cGbhDBwp5gUGo0IKtnYa8tyTiephirPCK6fbobVGiXMMI5zLQ4aKEYP3wZ3ArU44o+8KMrSG/Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.7.tgz", + "integrity": "sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@clack/core": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@clack/core/-/core-1.4.1.tgz", + "integrity": "sha512-FILJa1gGKEFTGZAJE9RpVhrjKz3c3h4ar60dSv6cGuDqufQ84YEIS3GAGvZiN+H6yaLbbvTFNejjCC4tXpZEuw==", + "license": "MIT", + "dependencies": { + "fast-wrap-ansi": "^0.2.0", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 20.12.0" + } + }, + "node_modules/@clack/prompts": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@clack/prompts/-/prompts-1.5.1.tgz", + "integrity": "sha512-zccHj2z2oCCO4yrDiRSlFOxWerGqRiysP7a5jPK6uoI9URKAquwY42Dd/iUP8JWHxEzdRe4TlbvZCo8z1/mhrw==", + "license": "MIT", + "dependencies": { + "@clack/core": "1.4.1", + "fast-string-width": "^3.0.2", + "fast-wrap-ansi": "^0.2.0", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 20.12.0" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.7.5.tgz", + "integrity": "sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ==", + "license": "MIT", + "dependencies": { + "@floating-ui/utils": "^0.2.11" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.6.tgz", + "integrity": "sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.7.5", + "@floating-ui/utils": "^0.2.11" + } + }, + "node_modules/@floating-ui/react-dom": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.8.tgz", + "integrity": "sha512-cC52bHwM/n/CxS87FH0yWdngEZrjdtLW/qVruo68qg+prK7ZQ4YGdut2GyDVpoGeAYe/h899rVeOVm6Oi40k2A==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "^1.7.6" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.11", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.11.tgz", + "integrity": "sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==", + "license": "MIT" + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@radix-ui/number": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.1.tgz", + "integrity": "sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==", + "license": "MIT" + }, + "node_modules/@radix-ui/primitive": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.3.tgz", + "integrity": "sha512-JTF99U/6XIjCBo0wqkU5sK10glYe27MRRsfwoiq5zzOEZLHU3A3KCMa5X/azekYRCJ0HlwI0crAXS/5dEHTzDg==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-accessible-icon": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-accessible-icon/-/react-accessible-icon-1.1.7.tgz", + "integrity": "sha512-XM+E4WXl0OqUJFovy6GjmxxFyx9opfCAIUku4dlKRd5YEPqt4kALOkQOp0Of6reHuUkJuiPBEc5k0o4z4lTC8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-accordion": { + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@radix-ui/react-accordion/-/react-accordion-1.2.12.tgz", + "integrity": "sha512-T4nygeh9YE9dLRPhAHSeOZi7HBXo+0kYIPJXayZfvWOWA0+n3dESrZbjfDPUABkUNym6Hd+f2IR113To8D2GPA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collapsible": "1.1.12", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-accordion/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-accordion/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-accordion/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-alert-dialog/-/react-alert-dialog-1.1.15.tgz", + "integrity": "sha512-oTVLkEw5GpdRe29BqJ0LSDFWI3qu0vR1M0mUkOQWDIUnY/QIkLpgDMWuKxP94c2NAC2LGcgVhG1ImF3jkZ5wXw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dialog": "1.1.15", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-arrow": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.7.tgz", + "integrity": "sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-arrow/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-arrow/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-aspect-ratio": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-aspect-ratio/-/react-aspect-ratio-1.1.7.tgz", + "integrity": "sha512-Yq6lvO9HQyPwev1onK1daHCHqXVLzPhSVjmsNjCa2Zcxy2f7uJD2itDtxknv6FzAKCwD1qQkeVDmX/cev13n/g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-aspect-ratio/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-aspect-ratio/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-avatar/-/react-avatar-1.1.10.tgz", + "integrity": "sha512-V8piFfWapM5OmNCXTzVQY+E1rDa53zY+MQ4Y7356v4fFz6vqCyUtIz2rUD44ZEdwg78/jKmMJHj07+C/Z/rcog==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-is-hydrated": "0.1.0", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-checkbox/-/react-checkbox-1.3.3.tgz", + "integrity": "sha512-wBbpv+NQftHDdG86Qc0pIyXk5IR3tM8Vd0nWLKDcX8nNn4nXFOFwsKuqw2okA/1D/mpaAkmuyndrPJTYDNZtFw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collapsible/-/react-collapsible-1.1.12.tgz", + "integrity": "sha512-Uu+mSh4agx2ib1uIGPP4/CKNULyajb3p92LsVXmH2EHVMTfZWpll88XJ0j4W0z3f8NK1eYl1+Mf/szHPmcHzyA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.7.tgz", + "integrity": "sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.2.tgz", + "integrity": "sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.3.tgz", + "integrity": "sha512-ieIFACdMpYfMEjF0rEf5KLvfVyIkOz6PDGyNnP+u+4xQ6jny3VCgA4OgXOwNx2aUkxn8zx9fiVcM8CfFYv9Lxw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu": { + "version": "2.2.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context-menu/-/react-context-menu-2.2.16.tgz", + "integrity": "sha512-O8morBEW+HsVG28gYDZPTrT9UUovQUlJue5YO836tiTJhuIWBm/zQHc7j388sHWtdH/xUZurK9olD2+pcqx5ww==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.15.tgz", + "integrity": "sha512-TCglVRtzlffRNxRMEyR36DGBLJpeusFcgMVD9PZEzAKnUs1lKCgX5u9BmC2Yg+LL9MgZDugFFs1Vl+Jp4t/PGw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-direction": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.1.tgz", + "integrity": "sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.11.tgz", + "integrity": "sha512-Nqcp+t5cTB8BinFkZgXiMJniQH0PsUt2k51FUhbdfeKvc4ACcG2uQniY/8+h1Yv6Kza4Q7lD7PQV0z0oicE0Mg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-escape-keydown": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu": { + "version": "2.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dropdown-menu/-/react-dropdown-menu-2.1.16.tgz", + "integrity": "sha512-1PLGQEynI/3OX/ftV54COn+3Sud/Mn8vALg2rWnBLnRaGtJDduNW/22XjlGgPdpcIbiQxjKtb7BkcjP00nqfJw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-guards": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.3.tgz", + "integrity": "sha512-0rFg/Rj2Q62NCm62jZw0QX7a3sz6QCQU0LpZdNrJX8byRGaGVTqbrW9jAoIAHyMQqsNpeZ81YgSizOt5WXq0Pw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.7.tgz", + "integrity": "sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-form": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-form/-/react-form-0.1.8.tgz", + "integrity": "sha512-QM70k4Zwjttifr5a4sZFts9fn8FzHYvQ5PiB19O2HsYibaHSVt9fH9rzB0XZo/YcM+b7t/p7lYCT/F5eOeF5yQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-label": "2.1.7", + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-form/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-form/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-form/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-hover-card/-/react-hover-card-1.1.15.tgz", + "integrity": "sha512-qgTkjNT1CfKMoP0rcasmlH2r1DAiYicWsDsufxl940sT2wHNEWWv6FMWIQXWhVdmC1d/HYfbhQx60KYyAtKxjg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-id": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.1.tgz", + "integrity": "sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-label": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-label/-/react-label-2.1.7.tgz", + "integrity": "sha512-YT1GqPSL8kJn20djelMX7/cTRp/Y9w5IZHvfxQTVHrOqa2yMl7i/UfMqKRU5V7mEyKTrUVgJXhNQPVCG8PBLoQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-label/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-label/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu": { + "version": "2.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-2.1.16.tgz", + "integrity": "sha512-72F2T+PLlphrqLcAotYPp0uJMr5SjP5SL01wfEspJbru5Zs5vQaSHb4VB3ZMJPimgHHCHG7gMOeOB9H3Hdmtxg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar": { + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-menubar/-/react-menubar-1.1.16.tgz", + "integrity": "sha512-EB1FktTz5xRRi2Er974AUQZWg2yVBb1yjip38/lgwtCVRd3a+maUoGHN/xs9Yv8SY8QwbSEb+YrxGadVWbEutA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu": { + "version": "1.2.14", + "resolved": "https://registry.npmjs.org/@radix-ui/react-navigation-menu/-/react-navigation-menu-1.2.14.tgz", + "integrity": "sha512-YB9mTFQvCOAQMHU+C/jVl96WmuWeltyUEpRJJky51huhds5W2FQr1J8D/16sQlf0ozxkPK8uF3niQMdUwZPv5w==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-one-time-password-field": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-one-time-password-field/-/react-one-time-password-field-0.1.8.tgz", + "integrity": "sha512-ycS4rbwURavDPVjCb5iS3aG4lURFDILi6sKI/WITUMZ13gMmn/xGjpLoqBAalhJaDk8I3UbCM5GzKHrnzwHbvg==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-is-hydrated": "0.1.0", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-one-time-password-field/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-one-time-password-field/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-one-time-password-field/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-password-toggle-field": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-password-toggle-field/-/react-password-toggle-field-0.1.3.tgz", + "integrity": "sha512-/UuCrDBWravcaMix4TdT+qlNdVwOM1Nck9kWx/vafXsdfj1ChfhOdfi3cy9SGBpWgTXwYCuboT/oYpJy3clqfw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-is-hydrated": "0.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-password-toggle-field/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-password-toggle-field/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-password-toggle-field/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.15.tgz", + "integrity": "sha512-kr0X2+6Yy/vJzLYJUPCZEc8SfQcf+1COFoAqauJm74umQhta9M7lNJHP7QQS3vkvcGLQUbWpMzwrXYwrYztHKA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.8.tgz", + "integrity": "sha512-0NJQ4LFFUuWkE7Oxf0htBKS6zLkkjBH+hM1uk7Ng705ReR8m/uelduy1DBo0PyBXPKVnBA6YBlU94MBGXrSBCw==", + "license": "MIT", + "dependencies": { + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-rect": "1.1.1", + "@radix-ui/react-use-size": "1.1.1", + "@radix-ui/rect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.9.tgz", + "integrity": "sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-presence": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.5.tgz", + "integrity": "sha512-/jfEwNDdQVBCNvjkGit4h6pMOzq8bHkopq458dPt2lMjx+eBQUohZNG9A7DtO/O5ukSbxuaNGXMjHicgwy6rQQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-primitive": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz", + "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-progress/-/react-progress-1.1.7.tgz", + "integrity": "sha512-vPdg/tF6YC/ynuBIJlk1mm7Le0VgW6ub6J2UWnTQ7/D23KXcPI1qy+0vBkgKgd38RCMJavBXpB83HPNFMTb0Fg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-radio-group/-/react-radio-group-1.3.8.tgz", + "integrity": "sha512-VBKYIYImA5zsxACdisNQ3BjCBfmbGH3kQlnFVqlWU4tXwjy7cGX8ta80BcrO+WJXIn5iBylEH3K6ZTlee//lgQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.11.tgz", + "integrity": "sha512-7A6S9jSgm/S+7MdtNDSb+IU859vQqJ/QAtcYQcfFC6W8RS4IxIZDldLR0xqCFZ6DCyrQLjLPsxtTNch5jVA4lA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-scroll-area/-/react-scroll-area-1.2.10.tgz", + "integrity": "sha512-tAXIa1g3sM5CGpVT0uIbUx/U3Gs5N8T52IICuCtObaos1S8fzsrPXG5WObkQN3S6NVl6wKgPhAIiBGbWnvc97A==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-select/-/react-select-2.2.6.tgz", + "integrity": "sha512-I30RydO+bnn2PQztvo25tswPH+wFBjehVGtmagkU78yMdwTwVf12wnAOF+AeP8S2N8xD+5UPbGhkUfPyvT+mwQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-separator": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-separator/-/react-separator-1.1.7.tgz", + "integrity": "sha512-0HEb8R9E8A+jZjvmFCy/J4xhbXy3TV+9XSnGJ3KvTtjlIUy/YQ/p6UYZvi7YbeoeXdyU9+Y3scizK6hkY37baA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-separator/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-separator/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slider/-/react-slider-1.3.6.tgz", + "integrity": "sha512-JPYb1GuM1bxfjMRlNLE+BcmBC8onfCi60Blk7OBqi2MLTFdS+8401U4uFjnwkOr49BLmXxLC6JHkvAsx5OJvHw==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slot": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.4.tgz", + "integrity": "sha512-Jl+bCv8HxKnlTLVrcDE8zTMJ09R9/ukw4qBs/oZClOfoQk/cOTbDn+NceXfV7j09YPVQUryJPHurafcSg6EVKA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-switch/-/react-switch-1.2.6.tgz", + "integrity": "sha512-bByzr1+ep1zk4VubeEVViV592vu2lHE2BZY5OnzehZqOOgogN80+mNtCqPkhn2gklJqOpxWgPoYTSnhBCqpOXQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tabs/-/react-tabs-1.1.13.tgz", + "integrity": "sha512-7xdcatg7/U+7+Udyoj2zodtI9H/IIopqo+YOIcZOq1nJwXWBZ9p8xiu5llXlekDbZkca79a/fozEYQXIA4sW6A==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toast": { + "version": "1.2.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toast/-/react-toast-1.2.15.tgz", + "integrity": "sha512-3OSz3TacUWy4WtOXV38DggwxoqJK4+eDkNMl5Z/MJZaoUPaP4/9lf81xXMe1I2ReTAptverZUpbPY4wWwWyL5g==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle/-/react-toggle-1.1.10.tgz", + "integrity": "sha512-lS1odchhFTeZv3xwHH31YPObmJn8gOg7Lq12inrr0+BH/l3Tsq32VfjqH1oh80ARM3mlkfMic15n0kg4sD1poQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle-group/-/react-toggle-group-1.1.11.tgz", + "integrity": "sha512-5umnS0T8JQzQT6HbPyO7Hh9dgd82NmS36DQr+X/YJ9ctFNCiiQd6IJAYYZ33LUwm8M+taCz5t2ui29fHZc4Y6Q==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-toggle": "1.1.10", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toolbar/-/react-toolbar-1.1.11.tgz", + "integrity": "sha512-4ol06/1bLoFu1nwUqzdD4Y5RZ9oDdKeiHIsntug54Hcr1pgaHiPqHFEaXI1IFP/EsOfROQZ8Mig9VTIRza6Tjg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-separator": "1.1.7", + "@radix-ui/react-toggle-group": "1.1.11" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tooltip/-/react-tooltip-1.2.8.tgz", + "integrity": "sha512-tY7sVt1yL9ozIxvmbtN5qtmH2krXcBCfjEiCgKGLqunJHvgvZG2Pcl2oQ3kbcZARb1BGEHdkLzcYGO8ynVlieg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.1.tgz", + "integrity": "sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.2.2.tgz", + "integrity": "sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-effect-event": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-effect-event/-/react-use-effect-event-0.0.2.tgz", + "integrity": "sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-escape-keydown": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.1.tgz", + "integrity": "sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-is-hydrated": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-is-hydrated/-/react-use-is-hydrated-0.1.0.tgz", + "integrity": "sha512-U+UORVEq+cTnRIaostJv9AGdV3G6Y+zbVd+12e18jQ5A3c0xL03IhnHuiU4UV69wolOQp5GfR58NW/EgdQhwOA==", + "license": "MIT", + "dependencies": { + "use-sync-external-store": "^1.5.0" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.1.tgz", + "integrity": "sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-previous": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-1.1.1.tgz", + "integrity": "sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-rect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.1.tgz", + "integrity": "sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==", + "license": "MIT", + "dependencies": { + "@radix-ui/rect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-size": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.1.tgz", + "integrity": "sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.2.3.tgz", + "integrity": "sha512-pzJq12tEaaIhqjbzpCuv/OypJY/BPavOofm+dbab+MHLajy277+1lLm6JFcGgF5eskJ6mquGirhXY2GD/8u8Ug==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/rect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.1.tgz", + "integrity": "sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==", + "license": "MIT" + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.27.tgz", + "integrity": "sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.61.1.tgz", + "integrity": "sha512-JnBB8MdXj45cajvTuO5FmPlvFVJRQgvrz1uSEl3NwqFnReAPGwb8EanbGi4z2nRaqLzjJSv5/JmycoTKlRZxHA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.61.1.tgz", + "integrity": "sha512-Jx2g7iSjw4AOT0HDPHM9RV3GNjRXwybWtSFZiZAYUTjUwjVrYIwq3kBf+LnhqJlzXFAqTAh2F7IGI+O568exPw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.61.1.tgz", + "integrity": "sha512-0F1L/Z3Eqv8mT2n3dCpeO8GcTvHvVqkP5/t6DMsn0KzhYVcg+s7Ncl5DS8qjKYEeio6Az0Gt6nyBORay5qIlCA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.61.1.tgz", + "integrity": "sha512-qLttcH871ujY4YcVfUSShhOw+CsoTatYz8gRbHO7Bb92QH059/P0y5do1KMs41fY0BpD2x4AJH/gID0zFiqVKQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.61.1.tgz", + "integrity": "sha512-fUI4RapGE0Oh3mb8mgfvC1O2nU1RpDZUKnDQm3xB1Ipg7C2wTs5Kstz7G2uWK99a8S2yTMq8/P4uycwNa0nJyw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.61.1.tgz", + "integrity": "sha512-H5YrdvJaDtI/U9/emrD4b++xkvp3y/JvOe4rizHbxvkyMfRS/CiRYdji+Pl8D0brEaNFWUh1drQxgAGIl6Xudw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.61.1.tgz", + "integrity": "sha512-Q8CBCCQtDFrYtXoeUXSrnFXKOnyUhx6bz+SkL6A0E7V8kAiCJ5pamq1WtbfpVGhR5TSpXY6ak3avmDc5fHTyJA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.61.1.tgz", + "integrity": "sha512-nwnhk1581l0FBVellGcVCAT0Oi06onEA3WB53sf01VO3I0UPBkMH9sXONYME2K0ovXcNayJfNtHfm6mpJElatQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.61.1.tgz", + "integrity": "sha512-x5Xr49hwt3hdW75UOZm3395YwwzPyauktslv29KpWL/T+vVAzoT3azLcTWv0eMciBNrx+DYjH4paehHoLpPvpg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.61.1.tgz", + "integrity": "sha512-unMS3H73DpaoPyyEVPjGKleM/s0mkmsauTENpw4INQY8y4+IuLNjkueQ5QCtC0D3N38Y38yhAU8OoZ20S2Tm6w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.61.1.tgz", + "integrity": "sha512-zNZzGRnAhwjFEYmvphJRV5XaQGjs62cCmeYYHUT//NbvEnHauw+I85nGG+SiVg5ld4GX8D1IbKIX+ozITQnhMQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.61.1.tgz", + "integrity": "sha512-LdpWGL8X209B2SIvWjqlc8VZgM6PKfontSerGepuldQmHYrAOtnMCXeJkxXGbC+PPZVOuu5czJo7fNV6aeW8rQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.61.1.tgz", + "integrity": "sha512-EC5kTtNaNGOmbMGqar8dvJy6y/hg99GAwjfBz++pxZhQATXGcRjd6c5en5wcbru0vkRmiMGsQKdMJOOf6sza4g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.61.1.tgz", + "integrity": "sha512-8hiwp6D4acEcNK78I4rP0/XtS1sknWIAMJBPdR4l6zUtyTm5KiTDr5bXmWt4foY7nAN7AThDHgkLIEZOWKbzWw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.61.1.tgz", + "integrity": "sha512-10dh/h/BqA7DuMPWSxkR8uks18FRwnwOEqr5zOTEl+NOwP/OMzKX8OFR/Of9xxDA7D5qef1Nzar5WDD2kCCr1g==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.61.1.tgz", + "integrity": "sha512-YKJ5lg35DP17gcAOggnihe+APw9HLyj1Xn7gsmGumBJAUDa6NGXNixJzmkWLhcK9TOuuyQjdamzvJefkO7qHZQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.61.1.tgz", + "integrity": "sha512-Mlil5G2Jj6a7B3LWGctg+XPL9vdXYuzCtNXfxOQ0nPjc2m6ueUktocPGH9bnAM0bNRKb/bAWTujUU7IJQdQA+g==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.61.1.tgz", + "integrity": "sha512-bVWIOIk6pV01p4CdUbPP7CJ/434z+OooYjDuFcR+44N35YvKUC66G8MGnvcWx5mWKW3g61J+t74l3Kj15Kwn2Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.61.1.tgz", + "integrity": "sha512-qy5pBvZbqNFheBz61R1rzsezjm0J7O2oNGoWtGoY89SZYLUfxAJTBAqDChqAIdB4rCiIbi9nF7yZ83GnNiLwSw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.61.1.tgz", + "integrity": "sha512-E83TXjI4zm0+5f2qO+UOudaCYIhYwpJ5jq6YCZNIZ+6CbfhKrkAGezeiASBL9ElxAxFsRS9ZhESv8mfnj6TKeg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.61.1.tgz", + "integrity": "sha512-fbWnKqVkjrJN38vNe3ahkbk6iejS/3b0Nt7EEtPpE6RBacZcGXNKbzfHN3GUUlXOPghUg0j6XUGrtjX9z1sIvA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.61.1.tgz", + "integrity": "sha512-ArMl38iVAbk0New1ogihQNY6iphLi4ZaRsa037gUzv5yeKPY8TD3Dmy4x2RNC1VztU/uqm+G+/RwFrSka3Oy2g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.61.1.tgz", + "integrity": "sha512-0mYtjHS9ucAbcATycCNK9IGBk/cCe/ma7EmSLGZdsxnOA8cjRIyU04wDpVAD9NiOfLUR9KTxdiO53uOkherqjQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.61.1.tgz", + "integrity": "sha512-gK1iCEPfpoSG9wfBihXxvBMi8ZfcWffYkEsC/Eih+iFENTaewvNcrEQ69lIOWYO5pePHKLHHO7nq5AILGO/HQQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.61.1.tgz", + "integrity": "sha512-X+zaP2x+j4RXGfbp/seSoRHWnPxzApilDszisZxbYH5C/jTxFhCtDNdPGZb9lJyYPs24wGxruPF7Y+sIXt9Gzw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@sigma/node-border": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@sigma/node-border/-/node-border-3.0.0.tgz", + "integrity": "sha512-mE3zUfjvJVuAMhSjiP/zdlkqe0OVTETxd04XHUwof01YqdzTk0OB4ACJIhWrwgsBXl7tTd9lPuKoroafLh8MtQ==", + "license": "MIT", + "peerDependencies": { + "sigma": ">=3.0.0-beta.17" + } + }, + "node_modules/@standard-schema/spec": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz", + "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==", + "license": "MIT" + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", + "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.2" + } + }, + "node_modules/@types/better-sqlite3": { + "version": "7.6.13", + "resolved": "https://registry.npmjs.org/@types/better-sqlite3/-/better-sqlite3-7.6.13.tgz", + "integrity": "sha512-NMv9ASNARoKksWtsq/SHakpYAYnhBrQgGD8zkLYk/jaK8jUGn08CfEdTRgYhMypUQAfzSP8W6gNLe0q19/t4VA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz", + "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "22.19.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.20.tgz", + "integrity": "sha512-6tELRwSDYWW9EdZhbeZmYGZ1/7Djkt+Ah3/ScEYT9cDord7UJzasR/4D3VONg9tQI5CDp+/CZC1AXj2pCFOvpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/react": { + "version": "19.2.17", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.17.tgz", + "integrity": "sha512-MXfmqaVPEVgkBT/aY0aGCkRWWtByiYQXo3xdQ8r5RzuFrPiRn8Gar2tQdXSUQ2GKV3bkXckek89V8wQBY2Q/Aw==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "csstype": "^3.2.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.2.3", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.3.tgz", + "integrity": "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==", + "devOptional": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^19.2.0" + } + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.7.0.tgz", + "integrity": "sha512-gUu9hwfWvvEDBBmgtAowQCojwZmJ5mcLn3aufeCsitijs3+f2NsrPtlAWIR6OPiqljl96GVCUbLe0HyqIpVaoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.28.0", + "@babel/plugin-transform-react-jsx-self": "^7.27.1", + "@babel/plugin-transform-react-jsx-source": "^7.27.1", + "@rolldown/pluginutils": "1.0.0-beta.27", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.17.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" + } + }, + "node_modules/@vitest/expect": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.9.tgz", + "integrity": "sha512-UJCIkTBenHeKT1TTlKMJWy1laZewsRIzYighyYiJKZreqtdxSos/S1t+ktRMQWu2CKqaarrkeszJx1cgC5tGZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/spy": "2.1.9", + "@vitest/utils": "2.1.9", + "chai": "^5.1.2", + "tinyrainbow": "^1.2.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/pretty-format": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.9.tgz", + "integrity": "sha512-KhRIdGV2U9HOUzxfiHmY8IFHTdqtOhIzCpd8WRdJiE7D/HUcZVD0EgQCVjm+Q9gkUXWgBvMmTtZgIG48wq7sOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "tinyrainbow": "^1.2.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/runner": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.9.tgz", + "integrity": "sha512-ZXSSqTFIrzduD63btIfEyOmNcBmQvgOVsPNPe0jYtESiXkhd8u2erDLnMxmGrDCwHCCHE7hxwRDCT3pt0esT4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/utils": "2.1.9", + "pathe": "^1.1.2" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/snapshot": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.9.tgz", + "integrity": "sha512-oBO82rEjsxLNJincVhLhaxxZdEtV0EFHMK5Kmx5sJ6H9L183dHECjiefOAdnqpIgT5eZwT04PoggUnW88vOBNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/pretty-format": "2.1.9", + "magic-string": "^0.30.12", + "pathe": "^1.1.2" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/spy": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.9.tgz", + "integrity": "sha512-E1B35FwzXXTs9FHNK6bDszs7mtydNi5MIfUWpceJ8Xbfb1gBMscAnwLbEu+B44ed6W3XjL9/ehLPHR1fkf1KLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "tinyspy": "^3.0.2" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/utils": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.9.tgz", + "integrity": "sha512-v0psaMSkNJ3A2NMrUEHFRzJtDPFn+/VWZ5WxImB21T9fjucJRmS7xCS3ppEnARb9y11OAzaD+P2Ps+b+BGX5iQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/pretty-format": "2.1.9", + "loupe": "^3.1.2", + "tinyrainbow": "^1.2.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@xterm/headless": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@xterm/headless/-/headless-5.5.0.tgz", + "integrity": "sha512-5xXB7kdQlFBP82ViMJTwwEc3gKCLGKR/eoxQm4zge7GPBl86tCdI0IdPJjoKd8mUSFXz5V7i/25sfsEkP4j46g==", + "dev": true, + "license": "MIT" + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/aria-hidden": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.6.tgz", + "integrity": "sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/assertion-error": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", + "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + } + }, + "node_modules/assistant-cloud": { + "version": "0.1.31", + "resolved": "https://registry.npmjs.org/assistant-cloud/-/assistant-cloud-0.1.31.tgz", + "integrity": "sha512-YBLc79w2EFD/6YjvcZrperpZ+B3TQ9LZ39AbjfcnbIJiSXYAs8cDH+mgy1GrfJBq47nhGaTVEf7ajv+hk084eA==", + "license": "MIT", + "dependencies": { + "assistant-stream": "^0.3.20" + } + }, + "node_modules/assistant-stream": { + "version": "0.3.20", + "resolved": "https://registry.npmjs.org/assistant-stream/-/assistant-stream-0.3.20.tgz", + "integrity": "sha512-CniC84epmE9JrMSDzlZVWJ13O5rYbjoqEzh0jT+QfsrR07LBls42DMJ60XNxKXm8Hrn6MHSZcxqBUqwXRtoutA==", + "license": "MIT", + "dependencies": { + "@standard-schema/spec": "^1.1.0", + "nanoid": "^5.1.11", + "secure-json-parse": "^4.1.0" + }, + "peerDependencies": { + "ioredis": "^5.10.1", + "redis": "^5.12.1" + }, + "peerDependenciesMeta": { + "ioredis": { + "optional": true + }, + "redis": { + "optional": true + } + } + }, + "node_modules/assistant-stream/node_modules/nanoid": { + "version": "5.1.16", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.16.tgz", + "integrity": "sha512-kVrnsrJqMR8+oLJnGEmSWw9BivK5mt7H3FZatVRjrc5wGqFYuBxX1yG7+A7Gi5AefkX6t/oCkizcQgpu0cY1dQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, + "node_modules/axe-core": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.13.0.tgz", + "integrity": "sha512-UzGt8zg7Ny8djbYMhxl2zuEevVa7r2gJjYY5Lwr1xM7+XU2nd6CkIWFTVcCIbAP63vSz71NaVyyuSk9lHKcy0A==", + "dev": true, + "license": "MPL-2.0", + "engines": { + "node": ">=4" + } + }, + "node_modules/balanced-match": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz", + "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "18 || 20 || >=22" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/baseline-browser-mapping": { + "version": "2.10.34", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.34.tgz", + "integrity": "sha512-IMDedajPifLnHNY0X9n8hKxRTQ6/eTHwr5bDo04WnuqxyKw6LYtQywCuuqPZwhl3aBXMvQpJov42GLCwRRdQzw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/better-sqlite3": { + "version": "12.11.1", + "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-12.11.1.tgz", + "integrity": "sha512-dq9AtApgg5PGFtBzPFSBl3HZQjHok5gaQCM6zh2Yk0aSmDCs1CbnVI8/HgASQkNKsWFpseIO9beg5xxpYhbIfA==", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "bindings": "^1.5.0", + "prebuild-install": "^7.1.1" + }, + "engines": { + "node": "20.x || 22.x || 23.x || 24.x || 25.x || 26.x" + } + }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "license": "MIT", + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "license": "MIT", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/brace-expansion": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.6.tgz", + "integrity": "sha512-kLpxurY4Z4r9sgMsyG0Z9uzsBlgiU/EFKhj/h91/8yHu0edo7XuixOIH3VcJ8kkxs6/jPzoI6U9Vj3WqbMQ94g==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^4.0.2" + }, + "engines": { + "node": "18 || 20 || >=22" + } + }, + "node_modules/browserslist": { + "version": "4.28.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.2.tgz", + "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.10.12", + "caniuse-lite": "^1.0.30001782", + "electron-to-chromium": "^1.5.328", + "node-releases": "^2.0.36", + "update-browserslist-db": "^1.2.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001793", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001793.tgz", + "integrity": "sha512-iwSsYWaCOoh26cV8NwNRViHlrfUvYsHDfRVcbtmw0Kg6PJIZZXwMkj1442FYLBGkeUf1juAsU3DTfxW579mrPA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chai": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.3.3.tgz", + "integrity": "sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "assertion-error": "^2.0.1", + "check-error": "^2.1.1", + "deep-eql": "^5.0.1", + "loupe": "^3.1.0", + "pathval": "^2.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/check-error": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.3.tgz", + "integrity": "sha512-PAJdDJusoxnwm1VwW07VWwUN1sl7smmC3OKggvndJFadxxDRyFJBX/ggnu/KE4kQAB7a3Dp8f/YXC1FlUprWmA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 16" + } + }, + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "license": "ISC" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/commander": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-15.0.0.tgz", + "integrity": "sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg==", + "license": "MIT", + "engines": { + "node": ">=22.12.0" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/convex": { + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/convex/-/convex-1.41.0.tgz", + "integrity": "sha512-euxVf6yfpB7/VGKOobkLgjpbJidsUgW+b0ezonEyCUPqlpHFwR4/yIiI1hjjErzraiw91GxrtxpXQClMLNqU+w==", + "license": "Apache-2.0", + "dependencies": { + "esbuild": "0.27.0", + "prettier": "^3.0.0", + "ws": "8.20.1" + }, + "bin": { + "convex": "bin/main.js" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=7.0.0" + }, + "peerDependencies": { + "@auth0/auth0-react": "^2.0.1", + "@clerk/clerk-react": "^4.12.8 || ^5.0.0", + "@clerk/react": "^6.4.3", + "react": "^18.0.0 || ^19.0.0-0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@auth0/auth0-react": { + "optional": true + }, + "@clerk/clerk-react": { + "optional": true + }, + "@clerk/react": { + "optional": true + }, + "react": { + "optional": true + } + } + }, + "node_modules/convex/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.1.tgz", + "integrity": "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/android-arm": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.1.tgz", + "integrity": "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/android-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.1.tgz", + "integrity": "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/android-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.1.tgz", + "integrity": "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.1.tgz", + "integrity": "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/darwin-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.1.tgz", + "integrity": "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.1.tgz", + "integrity": "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.1.tgz", + "integrity": "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/linux-arm": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.1.tgz", + "integrity": "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/linux-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.1.tgz", + "integrity": "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/linux-ia32": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.1.tgz", + "integrity": "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/linux-loong64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.1.tgz", + "integrity": "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.1.tgz", + "integrity": "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ==", + "cpu": [ + "mips64el" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.1.tgz", + "integrity": "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.1.tgz", + "integrity": "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/linux-s390x": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.1.tgz", + "integrity": "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/linux-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.1.tgz", + "integrity": "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.1.tgz", + "integrity": "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.1.tgz", + "integrity": "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.1.tgz", + "integrity": "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.1.tgz", + "integrity": "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.1.tgz", + "integrity": "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/sunos-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.1.tgz", + "integrity": "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/win32-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.1.tgz", + "integrity": "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/win32-ia32": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.1.tgz", + "integrity": "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/@esbuild/win32-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.1.tgz", + "integrity": "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/convex/node_modules/esbuild": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.1.tgz", + "integrity": "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.1", + "@esbuild/android-arm": "0.28.1", + "@esbuild/android-arm64": "0.28.1", + "@esbuild/android-x64": "0.28.1", + "@esbuild/darwin-arm64": "0.28.1", + "@esbuild/darwin-x64": "0.28.1", + "@esbuild/freebsd-arm64": "0.28.1", + "@esbuild/freebsd-x64": "0.28.1", + "@esbuild/linux-arm": "0.28.1", + "@esbuild/linux-arm64": "0.28.1", + "@esbuild/linux-ia32": "0.28.1", + "@esbuild/linux-loong64": "0.28.1", + "@esbuild/linux-mips64el": "0.28.1", + "@esbuild/linux-ppc64": "0.28.1", + "@esbuild/linux-riscv64": "0.28.1", + "@esbuild/linux-s390x": "0.28.1", + "@esbuild/linux-x64": "0.28.1", + "@esbuild/netbsd-arm64": "0.28.1", + "@esbuild/netbsd-x64": "0.28.1", + "@esbuild/openbsd-arm64": "0.28.1", + "@esbuild/openbsd-x64": "0.28.1", + "@esbuild/openharmony-arm64": "0.28.1", + "@esbuild/sunos-x64": "0.28.1", + "@esbuild/win32-arm64": "0.28.1", + "@esbuild/win32-ia32": "0.28.1", + "@esbuild/win32-x64": "0.28.1" + } + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "license": "MIT", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/deep-eql": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz", + "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-node-es": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", + "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.368", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.368.tgz", + "integrity": "sha512-7RckJJK4uESJF9PxvfMWd3TGqIiieUTG4HxnKaKuIpGbcr+r2ZEB3g2gAhCP3Fqm42vJSzLfgab9eva/C4/XVw==", + "dev": true, + "license": "ISC" + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/end-of-stream": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz", + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/es-module-lexer": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", + "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", + "dev": true, + "license": "MIT" + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "license": "MIT", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/expand-template": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", + "license": "(MIT OR WTFPL)", + "engines": { + "node": ">=6" + } + }, + "node_modules/expect-type": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.3.0.tgz", + "integrity": "sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/fast-string-truncated-width": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fast-string-truncated-width/-/fast-string-truncated-width-3.0.3.tgz", + "integrity": "sha512-0jjjIEL6+0jag3l2XWWizO64/aZVtpiGE3t0Zgqxv0DPuxiMjvB3M24fCyhZUO4KomJQPj3LTSUnDP3GpdwC0g==", + "license": "MIT" + }, + "node_modules/fast-string-width": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/fast-string-width/-/fast-string-width-3.0.2.tgz", + "integrity": "sha512-gX8LrtNEI5hq8DVUfRQMbr5lpaS4nMIWV+7XEbXk2b8kiQIizgnlr12B4dA3ZEx3308ze0O4Q1R+cHts8kyUJg==", + "license": "MIT", + "dependencies": { + "fast-string-truncated-width": "^3.0.2" + } + }, + "node_modules/fast-wrap-ansi": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/fast-wrap-ansi/-/fast-wrap-ansi-0.2.2.tgz", + "integrity": "sha512-7F2Fl+TjRSenLqlU3UjSH0iyqopqoZIu7eZVpEirP2g1GtWa2G/ecEmBdgz31+Mxr+ELclgg6sokpSFIQiZ02Q==", + "license": "MIT", + "dependencies": { + "fast-string-width": "^3.0.2" + } + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "license": "MIT" + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "license": "MIT" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-nonce": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", + "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", + "license": "MIT" + }, + "node_modules/graphology": { + "version": "0.26.0", + "resolved": "https://registry.npmjs.org/graphology/-/graphology-0.26.0.tgz", + "integrity": "sha512-8SSImzgUUYC89Z042s+0r/vMibY7GX/Emz4LDO5e7jYXhuoWfHISPFJYjpRLUSJGq6UQ6xlenvX1p/hJdfXuXg==", + "license": "MIT", + "dependencies": { + "events": "^3.3.0" + }, + "peerDependencies": { + "graphology-types": ">=0.24.0" + } + }, + "node_modules/graphology-layout-forceatlas2": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/graphology-layout-forceatlas2/-/graphology-layout-forceatlas2-0.10.1.tgz", + "integrity": "sha512-ogzBeF1FvWzjkikrIFwxhlZXvD2+wlY54lqhsrWprcdPjopM2J9HoMweUmIgwaTvY4bUYVimpSsOdvDv1gPRFQ==", + "license": "MIT", + "dependencies": { + "graphology-utils": "^2.1.0" + }, + "peerDependencies": { + "graphology-types": ">=0.19.0" + } + }, + "node_modules/graphology-types": { + "version": "0.24.8", + "resolved": "https://registry.npmjs.org/graphology-types/-/graphology-types-0.24.8.tgz", + "integrity": "sha512-hDRKYXa8TsoZHjgEaysSRyPdT6uB78Ci8WnjgbStlQysz7xR52PInxNsmnB7IBOM1BhikxkNyCVEFgmPKnpx3Q==", + "license": "MIT", + "peer": true + }, + "node_modules/graphology-utils": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/graphology-utils/-/graphology-utils-2.5.2.tgz", + "integrity": "sha512-ckHg8MXrXJkOARk56ZaSCM1g1Wihe2d6iTmz1enGOz4W/l831MBCKSayeFQfowgF8wd+PQ4rlch/56Vs/VZLDQ==", + "license": "MIT", + "peerDependencies": { + "graphology-types": ">=0.23.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "license": "ISC" + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jiti": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.7.0.tgz", + "integrity": "sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/loupe": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.2.1.tgz", + "integrity": "sha512-CdzqowRJCeLU72bHvWqwRBBlLcMEtIvGrlvef74kMnV2AolS9Y8xUv1I0U/MNAWMhBlKIoyuEgoJ0t/bbwHbLQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/minimatch": { + "version": "10.2.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz", + "integrity": "sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "brace-expansion": "^5.0.5" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", + "license": "MIT" + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz", + "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/napi-build-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-2.0.0.tgz", + "integrity": "sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==", + "license": "MIT" + }, + "node_modules/node-abi": { + "version": "3.92.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.92.0.tgz", + "integrity": "sha512-KdHvFWZjEKDf0cakgFjebl371GPsISX2oZHcuyKqM7DtogIsHrqKeLTo8wBHxaXRAQlY2PsPlZmfo+9ZCxEREQ==", + "license": "MIT", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-abi/node_modules/semver": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.4.tgz", + "integrity": "sha512-rUCObTnP32Q08R2uuIrt7r9PlEonuTmtuXYcW6s5kjdlj3xbnwe+21yXptAUYcMAABLkYYTtnmzb3w3EDZfueA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-pty": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/node-pty/-/node-pty-1.1.0.tgz", + "integrity": "sha512-20JqtutY6JPXTUnL0ij1uad7Qe1baT46lyolh2sSENDd4sTzKZ4nmAFkeAARDKwmlLjPx6XKRlwRUxwjOy+lUg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "node-addon-api": "^7.1.0" + } + }, + "node_modules/node-releases": { + "version": "2.0.47", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.47.tgz", + "integrity": "sha512-Uzmd6LXpouKo8EUK68IjH4+E01w/hXyV3R3g/geCJo+rXLNfh1xucB+LOzYEOQPSiUK3h/xZf0cQGcSsmyL2Og==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/omniagent": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/omniagent/-/omniagent-0.1.12.tgz", + "integrity": "sha512-dRVkknoa9kmDQhSkDZOryRnxwbR/8ape/yN7/OM+Jl3LWZYGIaE5IIUCbaEmgBzTw4MS4D/Goabcyj1+Qr2/DA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@xterm/headless": "^5.5.0", + "jiti": "^2.6.1", + "minimatch": "^10.2.5", + "node-pty": "^1.0.0", + "yargs": "^17.7.2" + }, + "bin": { + "omniagent": "dist/cli.js" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/pathval": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.1.tgz", + "integrity": "sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 14.16" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/playwright": { + "version": "1.62.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.62.1.tgz", + "integrity": "sha512-0M+L3LAD8/nm554LOla9Ayx0j0tmFZ0FBcoQ7F1VuVHpM/XpiC8RcDzBQB8W5+hA8L22THxELzeF+2WcUzvcLg==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "playwright-core": "1.62.1" + }, + "bin": { + "playwright": "cli.js" + }, + "engines": { + "node": ">=20" + }, + "optionalDependencies": { + "fsevents": "2.3.2" + } + }, + "node_modules/playwright-core": { + "version": "1.62.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.62.1.tgz", + "integrity": "sha512-wPYSwEBJY9GHraISXqyqtx0na0LpO3XEX7jNDhntbex7tzUS7kLnZsOlFruFJB4Hi/rhDMjXGqHewDZ68nYZVw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "playwright-core": "cli.js" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/playwright/node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/postcss": { + "version": "8.5.15", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.15.tgz", + "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.12", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/prebuild-install": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.3.tgz", + "integrity": "sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==", + "deprecated": "No longer maintained. Please contact the author of the relevant native addon; alternatives are available.", + "license": "MIT", + "dependencies": { + "detect-libc": "^2.0.0", + "expand-template": "^2.0.3", + "github-from-package": "0.0.0", + "minimist": "^1.2.3", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^2.0.0", + "node-abi": "^3.3.0", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^4.0.0", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + }, + "bin": { + "prebuild-install": "bin.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/prettier": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.3.tgz", + "integrity": "sha512-7igPTM53cGHMW8xWuVTydi2KO233VFiTNyF5hLJqpilHfmn8C8gPf+PS7dUT64YcXFbiMGZxS9pCSxL/Dxm/Jw==", + "license": "MIT", + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/pump": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.4.tgz", + "integrity": "sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA==", + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/radix-ui": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/radix-ui/-/radix-ui-1.4.3.tgz", + "integrity": "sha512-aWizCQiyeAenIdUbqEpXgRA1ya65P13NKn/W8rWkcN0OPkRDxdBVLWnIEDsS2RpwCK2nobI7oMUSmexzTDyAmA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-accessible-icon": "1.1.7", + "@radix-ui/react-accordion": "1.2.12", + "@radix-ui/react-alert-dialog": "1.1.15", + "@radix-ui/react-arrow": "1.1.7", + "@radix-ui/react-aspect-ratio": "1.1.7", + "@radix-ui/react-avatar": "1.1.10", + "@radix-ui/react-checkbox": "1.3.3", + "@radix-ui/react-collapsible": "1.1.12", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-context-menu": "2.2.16", + "@radix-ui/react-dialog": "1.1.15", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-dropdown-menu": "2.1.16", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-form": "0.1.8", + "@radix-ui/react-hover-card": "1.1.15", + "@radix-ui/react-label": "2.1.7", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-menubar": "1.1.16", + "@radix-ui/react-navigation-menu": "1.2.14", + "@radix-ui/react-one-time-password-field": "0.1.8", + "@radix-ui/react-password-toggle-field": "0.1.3", + "@radix-ui/react-popover": "1.1.15", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-progress": "1.1.7", + "@radix-ui/react-radio-group": "1.3.8", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-scroll-area": "1.2.10", + "@radix-ui/react-select": "2.2.6", + "@radix-ui/react-separator": "1.1.7", + "@radix-ui/react-slider": "1.3.6", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-switch": "1.2.6", + "@radix-ui/react-tabs": "1.1.13", + "@radix-ui/react-toast": "1.2.15", + "@radix-ui/react-toggle": "1.1.10", + "@radix-ui/react-toggle-group": "1.1.11", + "@radix-ui/react-toolbar": "1.1.11", + "@radix-ui/react-tooltip": "1.2.8", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-escape-keydown": "1.1.1", + "@radix-ui/react-use-is-hydrated": "0.1.0", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-size": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/radix-ui/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/radix-ui/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/radix-ui/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/react": { + "version": "19.2.7", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.7.tgz", + "integrity": "sha512-HNe9WslTbXmFK8o8cmwgAeJFSBvt1bPdHCVKtaaV+WlAN36mpT4hcRpwbf3fY56ar2oIXzsBpOAiIRHAdY0OlQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "19.2.7", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.7.tgz", + "integrity": "sha512-t0BRVXvbiE/o20Hfw669rLbMCDWtYZLvmJigy2f0MxsXF+71pxhR3xOkspmsO8h3ZlNzyibAmtCa3l4lYKk6gQ==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.27.0" + }, + "peerDependencies": { + "react": "^19.2.7" + } + }, + "node_modules/react-refresh": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz", + "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-remove-scroll": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.7.2.tgz", + "integrity": "sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q==", + "license": "MIT", + "dependencies": { + "react-remove-scroll-bar": "^2.3.7", + "react-style-singleton": "^2.2.3", + "tslib": "^2.1.0", + "use-callback-ref": "^1.3.3", + "use-sidecar": "^1.1.3" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-remove-scroll-bar": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz", + "integrity": "sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==", + "license": "MIT", + "dependencies": { + "react-style-singleton": "^2.2.2", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-style-singleton": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz", + "integrity": "sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==", + "license": "MIT", + "dependencies": { + "get-nonce": "^1.0.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-textarea-autosize": { + "version": "8.5.9", + "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.5.9.tgz", + "integrity": "sha512-U1DGlIQN5AwgjTyOEnI1oCcMuEr1pv1qOtklB2l4nyMGbHzWrI0eFsYK0zos2YWqAolJyG0IWJaqWmWj5ETh0A==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.20.13", + "use-composed-ref": "^1.3.0", + "use-latest": "^1.2.1" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.61.1.tgz", + "integrity": "sha512-I4KW6iuRpuu2uHBLraZ1wNZe0DP7lnRha+VJ9tNaYVaVgKhW0aI3h4RYnoRPeql0flHm/Co55b7snEDcOfOJrA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.9" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.61.1", + "@rollup/rollup-android-arm64": "4.61.1", + "@rollup/rollup-darwin-arm64": "4.61.1", + "@rollup/rollup-darwin-x64": "4.61.1", + "@rollup/rollup-freebsd-arm64": "4.61.1", + "@rollup/rollup-freebsd-x64": "4.61.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.61.1", + "@rollup/rollup-linux-arm-musleabihf": "4.61.1", + "@rollup/rollup-linux-arm64-gnu": "4.61.1", + "@rollup/rollup-linux-arm64-musl": "4.61.1", + "@rollup/rollup-linux-loong64-gnu": "4.61.1", + "@rollup/rollup-linux-loong64-musl": "4.61.1", + "@rollup/rollup-linux-ppc64-gnu": "4.61.1", + "@rollup/rollup-linux-ppc64-musl": "4.61.1", + "@rollup/rollup-linux-riscv64-gnu": "4.61.1", + "@rollup/rollup-linux-riscv64-musl": "4.61.1", + "@rollup/rollup-linux-s390x-gnu": "4.61.1", + "@rollup/rollup-linux-x64-gnu": "4.61.1", + "@rollup/rollup-linux-x64-musl": "4.61.1", + "@rollup/rollup-openbsd-x64": "4.61.1", + "@rollup/rollup-openharmony-arm64": "4.61.1", + "@rollup/rollup-win32-arm64-msvc": "4.61.1", + "@rollup/rollup-win32-ia32-msvc": "4.61.1", + "@rollup/rollup-win32-x64-gnu": "4.61.1", + "@rollup/rollup-win32-x64-msvc": "4.61.1", + "fsevents": "~2.3.2" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safe-content-frame": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/safe-content-frame/-/safe-content-frame-0.0.20.tgz", + "integrity": "sha512-saE3fBeGWOsi04PzTUaRi6RsBIjDYrZX4KzgIZUjbq3xQeOKYMcW1DeTb573Zyx1ggCDVJKoD/THchblISwjiQ==", + "license": "MIT" + }, + "node_modules/scheduler": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", + "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==", + "license": "MIT" + }, + "node_modules/secure-json-parse": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-4.1.0.tgz", + "integrity": "sha512-l4KnYfEyqYJxDwlNVyRfO2E4NTHfMKAWdUuA8J0yve2Dz/E/PdBepY03RvyJpssIpRFwJoCD55wA+mEDs6ByWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/siginfo": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", + "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", + "dev": true, + "license": "ISC" + }, + "node_modules/sigma": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sigma/-/sigma-3.0.3.tgz", + "integrity": "sha512-5H0zFlx6/NTQpqBg4Rm569ZOpnBOXMaS25UQThIWMU3XyzI5AhmorK/gnl87BvJBLhQd0tW4C0LIp3enWzMoNw==", + "license": "MIT", + "dependencies": { + "events": "^3.3.0", + "graphology-utils": "^2.5.2" + } + }, + "node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "license": "MIT" + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stackback": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", + "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", + "dev": true, + "license": "MIT" + }, + "node_modules/std-env": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.10.0.tgz", + "integrity": "sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==", + "dev": true, + "license": "MIT" + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tar-fs": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.4.tgz", + "integrity": "sha512-mDAjwmZdh7LTT6pNleZ05Yt65HC3E+NiQzl672vQG38jIrehtJk/J3mNwIg+vShQPcLF/LV7CMnDW6vjj6sfYQ==", + "license": "MIT", + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "license": "MIT", + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tinybench": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz", + "integrity": "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==", + "dev": true, + "license": "MIT" + }, + "node_modules/tinyexec": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz", + "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/tinyglobby": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz", + "integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinypool": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.1.1.tgz", + "integrity": "sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.0.0 || >=20.0.0" + } + }, + "node_modules/tinyrainbow": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz", + "integrity": "sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tinyspy": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz", + "integrity": "sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/tsx": { + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.22.4.tgz", + "integrity": "sha512-X8EX+XV4QR5xCsrgxaED954zTDfY8KqlDtskKEL0cHhyS/P8b4IFOvGDQpsC9Q1XnLq915wEfwwY/zzskCtmhg==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "~0.28.0" + }, + "bin": { + "tsx": "dist/cli.mjs" + }, + "engines": { + "node": ">=18.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + } + }, + "node_modules/tsx/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "license": "Apache-2.0", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/update-browserslist-db": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/use-callback-ref": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.3.tgz", + "integrity": "sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-composed-ref": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.4.0.tgz", + "integrity": "sha512-djviaxuOOh7wkj0paeO1Q/4wMZ8Zrnag5H6yBvzN7AKKe8beOaED9SF5/ByLqsku8NP4zQqsvM2u3ew/tJK8/w==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-effect-event": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/use-effect-event/-/use-effect-event-2.0.3.tgz", + "integrity": "sha512-fz1en+z3fYXCXx3nMB8hXDMuygBltifNKZq29zDx+xNJ+1vEs6oJlYd9sK31vxJ0YI534VUsHEBY0k2BATsmBQ==", + "license": "MIT", + "peerDependencies": { + "react": "^18.3 || ^19.0.0-0" + } + }, + "node_modules/use-isomorphic-layout-effect": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.2.1.tgz", + "integrity": "sha512-tpZZ+EX0gaghDAiFR37hj5MgY6ZN55kLiPkJsKxBMZ6GZdOSPJXiOzPM984oPYZ5AnehYx5WQp1+ME8I/P/pRA==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-latest": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.3.0.tgz", + "integrity": "sha512-mhg3xdm9NaM8q+gLT8KryJPnRFOz1/5XPBhmDEVZK1webPzDjrPk7f/mbpeLqTgB9msytYWANxgALOCJKnLvcQ==", + "license": "MIT", + "dependencies": { + "use-isomorphic-layout-effect": "^1.1.1" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sidecar": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.3.tgz", + "integrity": "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==", + "license": "MIT", + "dependencies": { + "detect-node-es": "^1.1.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sync-external-store": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz", + "integrity": "sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/vite": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.4.3.tgz", + "integrity": "sha512-NTKlcQjlAK7MlQoyb6LgaqHc8sso/pVyUJYWMws3jg21uTJw/LddqIFPcPqP6PzpgbIcZyKI85sFE4HBrQDA8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.25.0", + "fdir": "^6.4.4", + "picomatch": "^4.0.2", + "postcss": "^8.5.3", + "rollup": "^4.34.9", + "tinyglobby": "^0.2.13" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "jiti": ">=1.21.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/vite-node": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.9.tgz", + "integrity": "sha512-AM9aQ/IPrW/6ENLQg3AGY4K1N2TGZdR5e4gu/MmmR2xR3Ll1+dib+nook92g4TV3PXVyeyxdWwtaCAiUL0hMxA==", + "dev": true, + "license": "MIT", + "dependencies": { + "cac": "^6.7.14", + "debug": "^4.3.7", + "es-module-lexer": "^1.5.4", + "pathe": "^1.1.2", + "vite": "^5.0.0" + }, + "bin": { + "vite-node": "vite-node.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/vite-node/node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/vite-node/node_modules/vite": { + "version": "5.4.21", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz", + "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite/node_modules/@esbuild/aix-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", + "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", + "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", + "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/android-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", + "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/darwin-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", + "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/darwin-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", + "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", + "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", + "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", + "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", + "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", + "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-loong64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", + "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-mips64el": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", + "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", + "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-riscv64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", + "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-s390x": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", + "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", + "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", + "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/netbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", + "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", + "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", + "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openharmony-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", + "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/sunos-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", + "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", + "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", + "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", + "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/esbuild": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz", + "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.12", + "@esbuild/android-arm": "0.25.12", + "@esbuild/android-arm64": "0.25.12", + "@esbuild/android-x64": "0.25.12", + "@esbuild/darwin-arm64": "0.25.12", + "@esbuild/darwin-x64": "0.25.12", + "@esbuild/freebsd-arm64": "0.25.12", + "@esbuild/freebsd-x64": "0.25.12", + "@esbuild/linux-arm": "0.25.12", + "@esbuild/linux-arm64": "0.25.12", + "@esbuild/linux-ia32": "0.25.12", + "@esbuild/linux-loong64": "0.25.12", + "@esbuild/linux-mips64el": "0.25.12", + "@esbuild/linux-ppc64": "0.25.12", + "@esbuild/linux-riscv64": "0.25.12", + "@esbuild/linux-s390x": "0.25.12", + "@esbuild/linux-x64": "0.25.12", + "@esbuild/netbsd-arm64": "0.25.12", + "@esbuild/netbsd-x64": "0.25.12", + "@esbuild/openbsd-arm64": "0.25.12", + "@esbuild/openbsd-x64": "0.25.12", + "@esbuild/openharmony-arm64": "0.25.12", + "@esbuild/sunos-x64": "0.25.12", + "@esbuild/win32-arm64": "0.25.12", + "@esbuild/win32-ia32": "0.25.12", + "@esbuild/win32-x64": "0.25.12" + } + }, + "node_modules/vitest": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.9.tgz", + "integrity": "sha512-MSmPM9REYqDGBI8439mA4mWhV5sKmDlBKWIYbA3lRb2PTHACE0mgKwA8yQ2xq9vxDTuk4iPrECBAEW2aoFXY0Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/expect": "2.1.9", + "@vitest/mocker": "2.1.9", + "@vitest/pretty-format": "^2.1.9", + "@vitest/runner": "2.1.9", + "@vitest/snapshot": "2.1.9", + "@vitest/spy": "2.1.9", + "@vitest/utils": "2.1.9", + "chai": "^5.1.2", + "debug": "^4.3.7", + "expect-type": "^1.1.0", + "magic-string": "^0.30.12", + "pathe": "^1.1.2", + "std-env": "^3.8.0", + "tinybench": "^2.9.0", + "tinyexec": "^0.3.1", + "tinypool": "^1.0.1", + "tinyrainbow": "^1.2.0", + "vite": "^5.0.0", + "vite-node": "2.1.9", + "why-is-node-running": "^2.3.0" + }, + "bin": { + "vitest": "vitest.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "@edge-runtime/vm": "*", + "@types/node": "^18.0.0 || >=20.0.0", + "@vitest/browser": "2.1.9", + "@vitest/ui": "2.1.9", + "happy-dom": "*", + "jsdom": "*" + }, + "peerDependenciesMeta": { + "@edge-runtime/vm": { + "optional": true + }, + "@types/node": { + "optional": true + }, + "@vitest/browser": { + "optional": true + }, + "@vitest/ui": { + "optional": true + }, + "happy-dom": { + "optional": true + }, + "jsdom": { + "optional": true + } + } + }, + "node_modules/vitest/node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@vitest/mocker": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.9.tgz", + "integrity": "sha512-tVL6uJgoUdi6icpxmdrn5YNo3g3Dxv+IHJBr0GXHaEdTcw3F+cPKnsXFhli6nO+f/6SDKPHEK1UN+k+TQv0Ehg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/spy": "2.1.9", + "estree-walker": "^3.0.3", + "magic-string": "^0.30.12" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "msw": "^2.4.9", + "vite": "^5.0.0" + }, + "peerDependenciesMeta": { + "msw": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/vitest/node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/vitest/node_modules/vite": { + "version": "5.4.21", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz", + "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/why-is-node-running": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz", + "integrity": "sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==", + "dev": true, + "license": "MIT", + "dependencies": { + "siginfo": "^2.0.0", + "stackback": "0.0.2" + }, + "bin": { + "why-is-node-running": "cli.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "license": "ISC" + }, + "node_modules/ws": { + "version": "8.21.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.0.tgz", + "integrity": "sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/zod": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.3.tgz", + "integrity": "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/zustand": { + "version": "5.0.14", + "resolved": "https://registry.npmjs.org/zustand/-/zustand-5.0.14.tgz", + "integrity": "sha512-/8tAspM5LMPr28b3fwLYrtdj77ECpfZviaP75CMTnwO8ISyaE4GDIG/9rDDYq/cH9D2Xw2A2RXglLInmVBQB/g==", + "license": "MIT", + "engines": { + "node": ">=12.20.0" + }, + "peerDependencies": { + "@types/react": ">=18.0.0", + "immer": ">=9.0.6", + "react": ">=18.0.0", + "use-sync-external-store": ">=1.2.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "immer": { + "optional": true + }, + "react": { + "optional": true + }, + "use-sync-external-store": { + "optional": true + } + } + } + } +} diff --git a/evidence/current-consumer-20260905/operator/worktree-create.stderr b/evidence/current-consumer-20260905/operator/worktree-create.stderr new file mode 100644 index 0000000..b25527b --- /dev/null +++ b/evidence/current-consumer-20260905/operator/worktree-create.stderr @@ -0,0 +1 @@ +Preparing worktree (new branch 'codex/nodeagent-current-consumer-20260905') diff --git a/evidence/current-consumer-20260905/operator/worktree-create.stdout b/evidence/current-consumer-20260905/operator/worktree-create.stdout new file mode 100644 index 0000000..4b43959 --- /dev/null +++ b/evidence/current-consumer-20260905/operator/worktree-create.stdout @@ -0,0 +1 @@ +HEAD is now at 4e525fd Record the clean-clone re-run, including the flake and the fix I reverted diff --git a/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_CURRENT_CONSUMER_PLAN.md.txt b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_CURRENT_CONSUMER_PLAN.md.txt new file mode 100644 index 0000000..d318b06 --- /dev/null +++ b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_CURRENT_CONSUMER_PLAN.md.txt @@ -0,0 +1,19 @@ +# NodeAgent current consumer plan + +Builder. **Prove the current canonical installed application before integrating optional provider work.** + +**Re your request:** recover each repository for real developer/user handoff, with visual, responsive and interaction standards. A developer must be able to install the current package, scaffold its chat application and understand which results are deterministic, which state survives restart, and which agent capabilities remain unimplemented. + +The recon identifies current canonical4e525fd0f84e08a4f8203599d7341c17bf53205e and a separate preserved Pi draftc0ad5236. The latter's package excludes templates needed by the CLI and its model interface is not connected to the application runtime. Those are reasons to preserve its useful source for a later bounded library slice, rather than replace current upstream owners. E6e_NODEAGENT_NEXT_SLICE_RECON.json binds that evidence and corrects the earlier divergence shorthand to1ahead/11behind. + +Named proof: **NODEAGENT-CURRENT-CONSUMER-01**. This first slice owns clean setup, the real installed consumer, current-source evidence and developer handoff. It does not own a UI or runtime redesign. + +1. Recheck canonical remote, original HEAD/index/refs and active ownership. Preserve the original Pi checkout and PR. Create one isolated branch codex/nodeagent-current-consumer-20260905 from exact4e525fd0 in sibling .portfolio-worktrees/nodeagent-current-consumer-20260905, outside the original tracked tree. Register its purpose and eventual integration/retirement status. Stop if the current source moved materially. +2. Use normal Node22/npm ci and packaging from the exact canonical source, with an OS/runtime environment allowlist and no env-file loading. Keep native-install failures and actual commands. No provider request or credential is needed for the documented deterministic demo. +3. Retain a fresh path-with-spaces consumer. Install the actual tarball and use its installed CLI for doctor/apps/scaffold. Bind package files to the selected Git source and real installed bytes. Verify existing-target refusal with a sentinel; do not use --force to hide ownership problems. +4. Run generated demo/smoke/build and exercise the rendered prompt and four tool cards with pointer/keyboard, repeated inputs and reload at320/390/768/1024/1440/1920. Capture each exact viewport's DOM, console and pixels before resizing. Record actual reset, loading and failure behavior. Do not call a presentation animation cancellation of already-computed work. +5. Separately run the actual durable/frame/SQLite reopen and idempotent replay owners. Keep their result separate from the browser session, which currently does not use that durable adapter. Include bounded burst and sustained representative usage; no invented production load claim. +6. Inspect the current D3 running/error/recovery surfaces and capture a genuine labelled3px before boundary. If a defect is reproduced, report its upstream cause and a minimal separate UI plan to root before editing product code. Do not lower a gate, substitute a fixture as a live provider, or implement the Pi seam in this slice. +7. Add a concise HANDOFF.md and a reusable bounded consumer scenario where needed. Update only incorrect setup/adoption links identified by the journey. Keep unknown grades null and clearly identify UI applicability. Freeze exact source/evidence for an independent judge before commit/push/integration. + +Expected modifications are handoff/scenario/evidence only. Any necessary product or package fix requires a concrete observed failure and a root-approved narrowed delta; reversible diagnosis can continue without a user permission question. The worker is the sole delegated implementation owner; root continues separate NodeKit/NodeTrace finalization, and independent judges review frozen work. diff --git a/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.json b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.json new file mode 100644 index 0000000..b08d79c --- /dev/null +++ b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.json @@ -0,0 +1,66 @@ +{ + "status": "PROPOSED_AWAITING_PARENT_REVIEW", + "namedProof": "NODEAGENT-RESPONSE-RECOVERY-01", + "head": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "dependencyRepairIndependent": true, + "ownedProductPaths": [ + "src/features/node-agent/components/NodeAgentThread.tsx", + "src/features/node-agent/components/toolUIs.tsx", + "src/app/styles.css", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx", + "examples/apps/chat-ui/template/src/styles.css" + ], + "pathBeforeSha256": { + "src/features/node-agent/components/NodeAgentThread.tsx": "18a757122dcf419c32ab75ff69efaaf78d078a3ce185ecf2dc8243c0a4069936", + "src/features/node-agent/components/toolUIs.tsx": "6c5af47f4259b62ea5fc16722ce3c71a6fa59dd763782b22338bcef4644268dc", + "src/app/styles.css": "88a2a8f0e34a9ec4c88bf5bc08bdfccf6794fabc9590ec01a4ed5722ad0a53c5", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx": "6e13941961da00d6ce0e2ff34d074ceb83c5d832cef76680b94500b87e1a4216", + "examples/apps/chat-ui/template/src/styles.css": "f9f17ff4fee7d12a196e8648e071b5081a77a50c33768be03d934957edd3328e" + }, + "additionalProofAndHandoff": [ + "e2e/current-consumer-recovery-proof.mjs (new bounded scenario; preserve current-consumer-proof.mjs 59-check baseline)", + "HANDOFF.md", + "evidence/current-consumer-20260905" + ], + "rootCause": [ + "Thread composers omit native ComposerPrimitive.Cancel despite its existing supported AbortSignal contract.", + "Assistant messages render Parts only; existing incomplete/error/cancelled states and native ActionBarPrimitive.Reload are never surfaced.", + "ToolCard derives working solely from absence of result, ignoring native incomplete part status; new stopped/failed presentation must not leave an indefinite working label." + ], + "mechanism": "Reuse native Cancel, incomplete message/part status, Error and Reload. No runtime, adapter, provider, storage, vendor, graph or package-range changes initially.", + "stopContract": "Stop response ends further response streaming via existing runtime cancellation. It does not undo synchronous local computation, completed results, graph facts already written or durable state. Visible stopped status says completed work is kept. Native generator termination, not an invented rollback, must be observed.", + "retryContract": "Retry response is explicit native re-execution of only the failed/stopped response. It remains disabled while a response runs, preserves earlier conversation turns, and is never automatic. This local proof does not certify idempotency of future external providers.", + "errorContract": "Safe constant visible error status with Retry; retain previous four cards and current partial content. No raw exception or sensitive value is inserted into the UI. Incomplete tool cards use actual native part status to show stopped/failed rather than working.", + "sourceBoundaryReportSha256": "256a6ca00c3041129d0048b2323bd1a2df3c0647ce19051df82f83434a7eb951", + "generatedBoundaryReportSha256": "5e45637df71f886230d2bf01d6a715da86555fce50fd4222fdfc6d4c1f1ceeee", + "generatedBoundaries": [ + { + "path": "evidence/nodeagent-d3-generated-before/generated-running-390", + "pngSha256": "3d2adb7dc5324fea59764955b7b5b880b36924fff4de9c20cc34ce70a54ce7e8" + }, + { + "path": "evidence/nodeagent-d3-generated-before/generated-error-390", + "pngSha256": "d67b6e1aa81d6ff5faa4145a7788a14b8df5fdacc00c5680c8ff5a31371262ea" + }, + { + "path": "evidence/nodeagent-d3-generated-before/generated-running-1440", + "pngSha256": "ba11f02e651c2aed2d457cd399ca65e2cc47ffe9758968ced9704edef32e1fac" + }, + { + "path": "evidence/nodeagent-d3-generated-before/generated-error-1440", + "pngSha256": "1f293044017241177f2d0309a4d38666354094aa0d89a795a391872a1f72313a" + } + ], + "proof": [ + "Fresh normal packed installed CLI consumer; all changed template/generated bytes exact, prior consumer originals preserved", + "Actual pointer and keyboard Stop on ordinary unheld adapter runs; stopped state and stable later snapshots, no Done promotion, earlier completed cards remain", + "Explicit one-shot fault after a real partial frame, visible failure and no automatic retry, native retry after original adapter restoration, exactly one recovery run", + "Source and generated at six declared widths with empty/running/stopped/error/recovered, enlarged text and wrapping; direct rendered PNG review", + "Duplicate submit/retry prevention during active run and repeated accumulated turns; report real duration/count, no production longevity claim", + "Replay unchanged installed 59-check baseline plus existing relevant tests/build; source/graph/durable ownership guards", + "Freeze exact source/proof for independent judge before commit/push" + ], + "exceptionRule": "If actual native cancellation cannot meet this response-only contract, preserve failure and propose the smallest adapter owner delta to root before editing it." +} diff --git a/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.md.txt b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.md.txt new file mode 100644 index 0000000..ae403f1 --- /dev/null +++ b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_D3_REPAIR_PLAN.md.txt @@ -0,0 +1,23 @@ +# NodeAgent response recovery plan + +Builder. Expose the existing response stop, failure and retry states in the two owned chat interfaces. + +**Re your request:** each repository should be usable by a developer or user, including visual and interaction standards. A person can now complete the locked installed demo, but cannot stop its response and cannot tell that a later response failed. At 390 and 1440 pixels, both the source and installed generated app retained four earlier cards after an explicit adapter exception but showed no error or Retry. Neither composer offered Stop. + +The six proposed product files are listed with before hashes in the JSON. They are the existing thread/app components, shared tool-card components and scoped styles for source and template. Add one bounded recovery browser scenario; preserve the separate 59-check installed-consumer baseline. HANDOFF and portable evidence record the actual result. No adapter or runtime changes are proposed initially. + +The missing owner is presentation of already-supported assistant-ui state: ComposerPrimitive.Cancel aborts the existing run; the runtime marks it incomplete/cancelled and terminates its iterator. MessagePrimitive.Error and ActionBarPrimitive.Reload already expose failed-message status and explicit retry. Shared ToolCard currently labels every missing result as working; it must read the actual incomplete part status for stopped/failed cards. + +Use the visible action **Stop response**, followed by a status explaining that completed work is kept. The source adapter computes the local scenario synchronously before streaming it. Stop cannot undo that computation, completed tool results, graph facts already written or durable state. Verify that response updates stop; do not promise cancellation or rollback of external work. Retry response explicitly re-executes the current response through the existing native owner, preserves earlier turns and is disabled while running. It is never automatic. A safe constant error message must not expose the raw exception. + +1. Preserve source/template hashes and all existing consumers. Root reviews the eight actual tight 3px boundaries before editing these six files. +2. Add native response control/status/retry and incomplete tool-card labels inside CHANGE A composer and CHANGE B current response only. Keep prior cards, branding, graph semantics, no-key disclosure and provider ownership intact. +3. Pack and normally scaffold a new retained consumer. Bind exact template, lock and generated bytes; preserve the dependency repair as an independent receipt. +4. Prove ordinary unheld adapter Stop by pointer and keyboard, stable stopped snapshots, retained earlier results and no fake Done. A screenshot-only iterator hold must never stand in for the real cancellation test. +5. Inject an explicit one-shot failure after a real partial frame; prove visible failure, no automatic retry, native explicit recovery and one response only. Verify burst/duplicate denial and repeated accumulated turns with exact count/duration. +6. Capture source and generated empty/running/stopped/error/recovered states at 320/390/768/1024/1440/1920 and enlarged text. Replay the unchanged installed baseline and relevant existing tests/build. Grades remain null pending independent assessment. +7. Freeze exact evidence for the independent judge. No commit, push, provider or deployment. + +If native cancellation cannot meet this response-only contract, record the real failure and propose a bounded adapter delta before changing that owner. + +Final source before: `E6e-nodeagent-current-consumer/evidence/nodeagent-d3-source-before/{source-running,source-error}-{390,1440}/change-boundary.png` and matching MD. Final installed before: `evidence/nodeagent-d3-generated-before/{generated-running,generated-error}-{390,1440}/change-boundary.png` and matching MD. These are actual viewed screenshots. Raw earlier timing/selector/offscreen capture failures remain retained. The running fixture holds an actual adapter frame solely for settled capture; the error is explicitly injected in browser memory and never presented as a real provider incident. diff --git a/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.json b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.json new file mode 100644 index 0000000..cb97218 --- /dev/null +++ b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.json @@ -0,0 +1,43 @@ +{ + "status": "PROPOSED_AWAITING_PARENT_REVIEW", + "namedProof": "NODEAGENT-CURRENT-CONSUMER-01", + "head": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "finding": "Fresh generated chat cannot accept its first prompt; generated no-lock install resolves a different compatible dependency cohort from tested canonical source. Diagnostic canonical-cohort aliases restore the same unchanged generated UI at 390/1440.", + "causalityLimit": "This identifies dependency-cohort drift, not a uniquely isolated defective upstream package/version. The alias run is diagnostic only.", + "allowedFirstDelta": [ + "examples/apps/chat-ui/template/package-lock.json (new tested dependency lock)", + "e2e/current-consumer-proof.mjs (bounded installed-browser scenario)", + "HANDOFF.md (new truthful consumer entrypoint)", + "evidence/current-consumer-20260905 (portable raw evidence)" + ], + "noRuntimeOrUiEditsYet": true, + "dependencyStrategy": "Derive a pruned chat-template lock from the exact canonical lock already proven by normal npm ci, preserving compatible template ranges and adding its existing lucide dependency. Verify normal install follows that lock. No overrides, new dependency, registry configuration, CLI option or generic installer. If npm cannot preserve a valid compatible closure, stop and report before changing strategy.", + "firstRepairProof": [ + "Preserve original broken consumer and exact dependency identities", + "Generate lock only in isolated owned candidate; no env or lifecycle during lock construction", + "Normal npm pack and installed CLI scaffold into a new sibling target under retained consumer root; normal install/build/demo/smoke must pass", + "Bind source package, tarball, installed templates, generated lock and resolved dependency versions", + "Real first prompt produces four scripted tool cards without runtime error at all six declared widths; input burst/repeated/reload and failure story remain explicit", + "D3 before capture/review precedes any separate Stop/error/retry UI or abort-owner edit" + ], + "nonGoals": [ + "No Pi integration, provider calls, original checkout mutation, lifecycle/provider config changes, commit/push", + "No source-root development audit repair in this step; nine dev findings retained, production audit zero", + "No grade promotion; browser reset remains distinct from SQLite persistence" + ], + "evidence": { + "first-submit-diagnosis-01/report.json": "27741aacc74b04bb19380e0c6354f20d8db768414689edcee557674d7567cfa8", + "first-submit-dependency-comparison-01/report.json": "99693bc6140469572d3821b30642b6d3a395c45f12a96a0a8ebd8dd0044aaf1c", + "package-installed-bindings.json": "29e64cdfa39615640cbef7cc0eb8eb25ca04c7a6c29b8d00001d22c3e41f00d9", + "canonical-checks.json": "36fefaf8774eb0b53302640f6779e09bca9293d0c01b34d53a93d1758974299d", + "source-audit.stdout": "0507abc50afeaaf68af460c5d475d106c4749a1fdda75812c327823c36cf59ab" + }, + "guardedSources": { + "package.json": "b8c29dca85263de4a015bfc7cb89255a73c22440b5140616fd92d6441dedf76e", + "package-lock.json": "9951aa3919121d6a1dbd5351ed58ae38b7befcf7a042f9a103919ede57cd23ce", + "bin/nodeagent.mjs": "c8114aaac7bb8eeedfc6be2784ee09b4996b1a3babfc06da84d981e21cc86f4d", + "examples/apps/chat-ui/template/package.json": "1967ba21a4990b73cf2702ada8ced1294a1ceb09feb51f61258c07199a7755c9", + "examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx": "7435e2a9bc6bd9e905fa7ec17d46c05073317556acf741567f58b0bfe064bc15", + "examples/apps/chat-ui/template/src/nodeagent-chat/nodeAgentLocalAdapter.js": "e0932f813c420b5f9c2c76df07a01d7dcd8888c4ad44dac28f4625f395397f14" + } +} diff --git a/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.md.txt b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.md.txt new file mode 100644 index 0000000..60ddc84 --- /dev/null +++ b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_PLAN.md.txt @@ -0,0 +1,20 @@ +# NodeAgent installed-consumer dependency repair plan + +Builder. Repair the installed first-run dependency closure before changing the chat interface. + +**Re your request:** make each repository usable and ready for a developer or user handoff. The real installed CLI generated an app whose smoke and build passed, but typing/submitting its first prompt produced two assistant-ui update-depth errors and no tool result at 390 and 1440 pixels. A new developer cannot complete the promised first run. + +The canonical source lock installs assistant-ui/react 0.14.14, core 0.2.10, store 0.2.13, tap 0.5.14 and React 19.2.7. The generated template has compatible ranges but no lock; its normal install selected react 0.14.29, core 0.2.23, store 0.2.22, tap 0.9.16 and React 19.2.8. With only diagnostic Vite aliases to the canonical installed cohort, the same unchanged generated files produced all four cards and Done, with zero runtime errors at both widths. This proves cohort sensitivity; it does not isolate one upstream package as the sole cause. The alias run is not a repaired installed-consumer certificate. + +Proposed first product delta: add a tested `examples/apps/chat-ui/template/package-lock.json`, deriving its compatible pruned closure from the exact canonical lock. Preserve the existing dependency ranges and installed CLI install owner. No override/config knob/installer is needed. Update only the bounded reusable browser scenario, new HANDOFF and portable evidence. Normal installed CLI scaffolding into a new target must prove the lock works; the broken original remains untouched. + +1. Preserve the failure, resolved versions and source hashes. +2. Construct the compatible template lock without lifecycle execution, preserving the existing lucide dependency and template root metadata. Report if a valid closure cannot be derived without broad changes. +3. Pack the isolated candidate, install that exact tarball and use its installed CLI to create a new retained target. Run normal install, demo, smoke and build. +4. Bind exact package/installed/generated files. Exercise first prompt, all four tool results, burst Enter, repeated turns and reload at 320/390/768/1024/1440/1920 with real DOM, console and pixels. +5. Continue the separate D3 Stop/error/retry baseline and send its genuine labelled boundary and narrowed runtime/UI delta for parent review before those edits. +6. Freeze handoff/evidence for the independent judge. No commit or push. + +The source-root nine development audit findings remain separately recorded; production audit is zero. No provider credentials, Pi merge, original consumer mutation, automatic retry or browser-persistence claim is introduced. UI grades remain null. + +Raw proof: `E6e-nodeagent-current-consumer/first-submit-diagnosis-01/report.json`; diagnostic comparison: `first-submit-dependency-comparison-01/report.json`. Actual viewed images include the generated empty/failed state and source comparison at 390 pixels. The historical whole-body failure annotation is diagnostic only; a tighter composer/empty-state boundary will replace it as the UI scope oracle before any visible edit. diff --git a/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.json b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.json new file mode 100644 index 0000000..f0e89ee --- /dev/null +++ b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.json @@ -0,0 +1,62 @@ +{ + "status": "PASS_SCOPED_DEPENDENCY_REPAIR_D3_OPEN", + "namedProof": "NODEAGENT-CURRENT-CONSUMER-01", + "head": "4e525fd0f84e08a4f8203599d7341c17bf53205e", + "sourcePaths": { + "examples/apps/chat-ui/template/package-lock.json": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "e2e/current-consumer-proof.mjs": "88a30299d05c290299bd38cd32fdad9a876ab941378e1f257fb23d5c365622a0", + "HANDOFF.md": "17e983697edaf77f341bf588e4618e0cb53f46d6e04ef8e8f9f4914c3ab00d98" + }, + "sourcePackageAndRangesUnchanged": true, + "templateLockSha256": "fd1d53e6249ac23ff1eeb4bc8ae9c75a0fdc4d43e699bcc2a133c6127beffba6", + "tarball": "D:\\ProjectRecovery\\NodeAgent current consumer 20260905\\Locked package 01\\nodeagent-0.1.0.tgz", + "tarballSha256": "e57bd0b04c81bda8dd766ef49f0d877de63c882efe40ee982f2e373c05021040", + "sourceTarInstalledFiles": 240, + "generatedLockExact": true, + "generatedTemplateFiles": 15, + "browser": { + "checks": 59, + "captures": 25, + "widths": [ + 320, + 390, + 768, + 1024, + 1440, + 1920 + ], + "consoleErrors": 0, + "sustained": { + "turns": 8, + "toolCards": 32, + "elapsedMs": 13941 + }, + "providerCalls": 0, + "grade": null + }, + "sourceRuntimeUnchanged": true, + "bindingLimit": "The 240-file package contains the earlier browser harness revision captured at packaging. The final 59-check harness is separately frozen and hashed here; all installed CLI/template/runtime input bytes and generated lock remain exactly bound to that package. This is not a final committed package certificate. HANDOFF is later metadata.", + "rawEvidence": { + "locked-installed-consumer.json": "e555920ab2721acffc061072fe60240033b0210473e3ddc2243b91601a2316d9", + "locked-consumer-commands.json": "dba7894afaf603c3ff3b04bc6b2c11023eab9d1faf5d96f707fd776ee01a13b2", + "locked-browser-02/report.json": "0679d7de20d2694aa81c760a6be7637c3307591c81ec18638a47a0d70ab1b71e", + "locked-final-checks.json": "c603d7a3138079428ef76de92aa2299084d415a2a5cff6ede9d63d3b6349391a", + "canonical-checks.json": "36fefaf8774eb0b53302640f6779e09bca9293d0c01b34d53a93d1758974299d", + "frame.json": "679d289510ae9ec0f3042d9cabe470cdf7142746f3282661e9a256a8ee4ecd79", + "durable.json": "1238544f850a472ca59782591a5a1a7a2720492e89b73681f130d9b7ef269272", + "sqlite-reopen.json": "46e8a29bc91f337c1aa4e7de5e913675be6d6f2409df3594ba1edb9e0e0c622d", + "locked-generated-audit.stdout": "4d1456a71597d6eeb8573095e09bb2f7368c85626a769ef5a3e2dac782b8ab47", + "locked-generated-production-audit.stdout": "75206656b5cfd245d6c7e6cd2f4f579d10db9fa0b708b19c6bbc29263526b379", + "source-audit.stdout": "0507abc50afeaaf68af460c5d475d106c4749a1fdda75812c327823c36cf59ab", + "first-submit-diagnosis-01/report.json": "27741aacc74b04bb19380e0c6354f20d8db768414689edcee557674d7567cfa8", + "first-submit-dependency-comparison-01/report.json": "99693bc6140469572d3821b30642b6d3a395c45f12a96a0a8ebd8dd0044aaf1c", + "locked-browser-01/report.json": "c1c9e0f1a4b1b08b3e25d672d76bf3f0954dab40ddcdbf4e8fa6028ef7a2eda3" + }, + "holds": [ + "Source nine development advisories", + "Generated four development advisories", + "D3 response Stop/error/retry not implemented at this checkpoint", + "Full UI grades null; generated browser reset is not SQLite durability", + "Pi draft and original consumers preserved; no commit/push/provider/host activation" + ] +} diff --git a/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.md.txt b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.md.txt new file mode 100644 index 0000000..0d94a3a --- /dev/null +++ b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_DEPENDENCY_REPAIR_RECEIPT.md.txt @@ -0,0 +1,11 @@ +# NodeAgent dependency repair receipt + +**Re your request:** make the repository ready for real developer/user handoff. The installed generated chat's first-prompt failure is repaired by one template lock, with no package-range, installer or runtime changes. + +Normal pack/install/installed doctor/CLI auto setup pass. The 240-file tarball was byte-bound to source and installed files; the generated lock remains exactly equal to the template lock. The final real browser proof passes 59 checks with 25 captures across six widths, zero runtime errors, burst Enter denial, eight sequential turns/32 cards and reload reset. It uses no provider request or alias override. The failed unlocked app, diagnostic alias comparison and early-completion probe failure remain retained. + +The package's browser harness revision predates the final 59-check harness; this receipt separately freezes that tested harness. Installed CLI/template/runtime bytes and lock are exact. No final committed-package certificate is asserted. HANDOFF is later metadata. Source tests remain 41 passing; source build and separate frame/durable/SQLite reopen proof pass. These do not imply browser persistence. + +Both production-only audits report zero. Full source audit has nine development findings; full generated audit has four (three high, one low). They remain open. D3 controls and full visual grades remain open. No Pi integration, provider, host activation, commit or push. + +Exact hashes, commands and limits: matching JSON. Frozen dependency files: `E6e-nodeagent-current-consumer/dependency-repair-freeze/`. UI recovery may now proceed only under its separately approved six-file plan; this receipt must not be overwritten or presented as proof of later UI bytes. diff --git a/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_ENLARGEMENT_ADDENDUM.json b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_ENLARGEMENT_ADDENDUM.json new file mode 100644 index 0000000..b4d56ae --- /dev/null +++ b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_ENLARGEMENT_ADDENDUM.json @@ -0,0 +1,14 @@ +{ + "scope": "Existing template stylesheet only, .naMain and .naThread min-width:0", + "cause": "Grid child .naMain and nested flex child .naThread retain automatic minimum widths from enlarged content; both require min-width:0. Input alone or either parent alone leaves55px overflow. Both parents fix it to0 in current browser; no runtime change.", + "file": "examples/apps/chat-ui/template/src/styles.css", + "beforeSha256": "20a969c5ba58a410ffd1d736693a5f793dbd7a90214c130dee4eb87c6f30ed1a", + "proposedCSS": ".naMain, .naThread { min-width: 0; }", + "boundary": "E6e-nodeagent-current-consumer/d3-enlargement-diagnosis-01/change-boundary.png", + "boundarySha256": "e3a84fa9f8010add7871ab196f8abccfbbaab4046b6aec08bbae8aac4c2f163d", + "proof": [ + "d3-enlargement-diagnosis-01/intrinsic-width-diagnosis.json", + "d3-enlargement-diagnosis-02/intrinsic-width-diagnosis.json" + ], + "protected": "Source header overflow remains disclosed; no branding/card/adapter/graph/lock changes. New pack+fresh scaffold+sixwidth before/after proof required." +} diff --git a/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_KEYBOARD_VISIBILITY_ADDENDUM.json b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_KEYBOARD_VISIBILITY_ADDENDUM.json new file mode 100644 index 0000000..44511d6 --- /dev/null +++ b/evidence/current-consumer-20260905/plans/E6e_NODEAGENT_KEYBOARD_VISIBILITY_ADDENDUM.json @@ -0,0 +1,12 @@ +{ + "scope": "Existing source Retry response onFocus only; required same-tour/citation line relocation if moved", + "sourcePath": "src/features/node-agent/components/NodeAgentThread.tsx", + "beforeSha256": "be83c68d759e836ea92da6971fb8e4f05a107ffc9eb814d7b69963f7ee33c752", + "cause": "Native browser keyboard focus reveals a descendant in the scroll box but ignores the sticky composer; SDK footer measurement controls SDK autoscroll only. Retry remains partly covered after exact200% text.", + "proposed": "On focus-visible only, scroll the existing enclosing recovery region into view with block:start. No focus change, no timer/ref/state. Pointer focus does not move the action. Existing explicit Retry onClick guard unchanged.", + "diagnostic": "d3-keyboard-scroll-diagnosis-01/keyboard-scroll-diagnosis.json", + "boundary": "E6e-nodeagent-current-consumer/d3-keyboard-scroll-diagnosis-01/change-boundary.png", + "boundarySha256": "8559c7727d6c0a1750d7ffe7e6dc4bb2f7ede81c6c0180dfa9c582dff95cdf38", + "observedAfter": "Browser-only diagnostic focused Retry y167..221, footer starts251; visible hit-test and actual PNG. Error and Retry both visible. Source bytes unchanged.", + "protected": "Original source header enlarged overflow21px remains; graph/layout/footer/native runtime/adapter/generated UI unchanged." +} diff --git a/examples/apps/chat-ui/template/package-lock.json b/examples/apps/chat-ui/template/package-lock.json new file mode 100644 index 0000000..6159d99 --- /dev/null +++ b/examples/apps/chat-ui/template/package-lock.json @@ -0,0 +1,6598 @@ +{ + "name": "nodeagent-chat-ui", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "nodeagent-chat-ui", + "version": "0.1.0", + "dependencies": { + "@assistant-ui/react": "^0.14.14", + "lucide-react": "^0.468.0", + "react": "^19.0.0", + "react-dom": "^19.0.0" + }, + "devDependencies": { + "@vitejs/plugin-react": "^4.3.4", + "vite": "^6.0.7" + } + }, + "node_modules/@assistant-ui/core": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/@assistant-ui/core/-/core-0.2.10.tgz", + "integrity": "sha512-0YyqlpZgg1Hoaq2X4jHAaMKXg+lGniLygNt1KrGFTPgbxeo8ZStRjWyyG2xIl+zlFKHiKCGHzflUHvlJi4IurA==", + "license": "MIT", + "dependencies": { + "assistant-stream": "^0.3.20", + "nanoid": "^5.1.11" + }, + "peerDependencies": { + "@assistant-ui/store": "^0.2.13", + "@assistant-ui/tap": "^0.5.14", + "@types/react": "*", + "assistant-cloud": "^0.1.31", + "react": "^18 || ^19", + "zustand": "^5.0.11" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "assistant-cloud": { + "optional": true + }, + "react": { + "optional": true + }, + "zustand": { + "optional": true + } + } + }, + "node_modules/@assistant-ui/core/node_modules/nanoid": { + "version": "5.1.16", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.16.tgz", + "integrity": "sha512-kVrnsrJqMR8+oLJnGEmSWw9BivK5mt7H3FZatVRjrc5wGqFYuBxX1yG7+A7Gi5AefkX6t/oCkizcQgpu0cY1dQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, + "node_modules/@assistant-ui/react": { + "version": "0.14.14", + "resolved": "https://registry.npmjs.org/@assistant-ui/react/-/react-0.14.14.tgz", + "integrity": "sha512-qS7YJewwFbmhs+yte56ZnO9jIOK+8hKo7mOK3cKDcCndn+jGSWTJmoNVIYQgMpB2JYIJ/SKZD+LeWSR6K3LL5g==", + "license": "MIT", + "dependencies": { + "@assistant-ui/core": "^0.2.10", + "@assistant-ui/store": "^0.2.13", + "@assistant-ui/tap": "^0.5.14", + "@radix-ui/primitive": "^1.1.3", + "@radix-ui/react-compose-refs": "^1.1.2", + "@radix-ui/react-context": "^1.1.3", + "@radix-ui/react-primitive": "^2.1.4", + "@radix-ui/react-use-callback-ref": "^1.1.1", + "@radix-ui/react-use-escape-keydown": "^1.1.1", + "assistant-cloud": "^0.1.31", + "assistant-stream": "^0.3.20", + "nanoid": "^5.1.11", + "radix-ui": "^1.4.3", + "react-textarea-autosize": "^8.5.9", + "safe-content-frame": "^0.0.20", + "zod": "^4.4.3", + "zustand": "^5.0.14" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@assistant-ui/react/node_modules/nanoid": { + "version": "5.1.16", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.16.tgz", + "integrity": "sha512-kVrnsrJqMR8+oLJnGEmSWw9BivK5mt7H3FZatVRjrc5wGqFYuBxX1yG7+A7Gi5AefkX6t/oCkizcQgpu0cY1dQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, + "node_modules/@assistant-ui/store": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/@assistant-ui/store/-/store-0.2.13.tgz", + "integrity": "sha512-7NL6HWMBxe1ndLWO4kHkjQ0Syyc0D/Aj+zxdpcy4yrplG71X04CzFimMBBSQAk+AnGBf+d96D7cuUZdjHkTavg==", + "license": "MIT", + "dependencies": { + "use-effect-event": "^2.0.3" + }, + "peerDependencies": { + "@assistant-ui/tap": "^0.5.14", + "@types/react": "*", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@assistant-ui/tap": { + "version": "0.5.14", + "resolved": "https://registry.npmjs.org/@assistant-ui/tap/-/tap-0.5.14.tgz", + "integrity": "sha512-SAy0ip8nKo72U8K9MuU7gYUR4tzoIi6k+HAQgev3zA/sWN7hr/QDDUTblrn5QB9Y/yycRiq8s98WD1vnDy8WMQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "react": { + "optional": true + } + } + }, + "node_modules/@babel/code-frame": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.7.tgz", + "integrity": "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.29.7", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.7.tgz", + "integrity": "sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.7.tgz", + "integrity": "sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helpers": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.29.7.tgz", + "integrity": "sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.29.7", + "@babel/helper-validator-option": "^7.29.7", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz", + "integrity": "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz", + "integrity": "sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.29.7.tgz", + "integrity": "sha512-G7sHYigPY17oO5SYWnfD/0MTBwVR781S/JI643e/JhUYgVgWE/61SoW3NH9KWUKyKq5LVh3npif99Wkt6j86Jw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz", + "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz", + "integrity": "sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.7.tgz", + "integrity": "sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.7.tgz", + "integrity": "sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.7" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.29.7.tgz", + "integrity": "sha512-TL0hMc9xzy86VD31nUiwzd5otRAcyEPcsegCxolO0PvcXuH1v0kECe/UIznYFihpkvU5wg/jk4v0TTEFfm53fw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.29.7.tgz", + "integrity": "sha512-06IyK09H3wi4cGbhDBwp5gUGo0IKtnYa8tyTiephirPCK6fbobVGiXMMI5zLQ4aKEYP3wZ3ArU44o+8KMrSG/Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.7.tgz", + "integrity": "sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.7.5.tgz", + "integrity": "sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ==", + "license": "MIT", + "dependencies": { + "@floating-ui/utils": "^0.2.11" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.6.tgz", + "integrity": "sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.7.5", + "@floating-ui/utils": "^0.2.11" + } + }, + "node_modules/@floating-ui/react-dom": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.8.tgz", + "integrity": "sha512-cC52bHwM/n/CxS87FH0yWdngEZrjdtLW/qVruo68qg+prK7ZQ4YGdut2GyDVpoGeAYe/h899rVeOVm6Oi40k2A==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "^1.7.6" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.11", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.11.tgz", + "integrity": "sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==", + "license": "MIT" + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@radix-ui/number": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.1.tgz", + "integrity": "sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==", + "license": "MIT" + }, + "node_modules/@radix-ui/primitive": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.3.tgz", + "integrity": "sha512-JTF99U/6XIjCBo0wqkU5sK10glYe27MRRsfwoiq5zzOEZLHU3A3KCMa5X/azekYRCJ0HlwI0crAXS/5dEHTzDg==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-accessible-icon": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-accessible-icon/-/react-accessible-icon-1.1.7.tgz", + "integrity": "sha512-XM+E4WXl0OqUJFovy6GjmxxFyx9opfCAIUku4dlKRd5YEPqt4kALOkQOp0Of6reHuUkJuiPBEc5k0o4z4lTC8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-accordion": { + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@radix-ui/react-accordion/-/react-accordion-1.2.12.tgz", + "integrity": "sha512-T4nygeh9YE9dLRPhAHSeOZi7HBXo+0kYIPJXayZfvWOWA0+n3dESrZbjfDPUABkUNym6Hd+f2IR113To8D2GPA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collapsible": "1.1.12", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-accordion/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-accordion/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-accordion/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-alert-dialog/-/react-alert-dialog-1.1.15.tgz", + "integrity": "sha512-oTVLkEw5GpdRe29BqJ0LSDFWI3qu0vR1M0mUkOQWDIUnY/QIkLpgDMWuKxP94c2NAC2LGcgVhG1ImF3jkZ5wXw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dialog": "1.1.15", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-arrow": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.7.tgz", + "integrity": "sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-arrow/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-arrow/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-aspect-ratio": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-aspect-ratio/-/react-aspect-ratio-1.1.7.tgz", + "integrity": "sha512-Yq6lvO9HQyPwev1onK1daHCHqXVLzPhSVjmsNjCa2Zcxy2f7uJD2itDtxknv6FzAKCwD1qQkeVDmX/cev13n/g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-aspect-ratio/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-aspect-ratio/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-avatar/-/react-avatar-1.1.10.tgz", + "integrity": "sha512-V8piFfWapM5OmNCXTzVQY+E1rDa53zY+MQ4Y7356v4fFz6vqCyUtIz2rUD44ZEdwg78/jKmMJHj07+C/Z/rcog==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-is-hydrated": "0.1.0", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-checkbox/-/react-checkbox-1.3.3.tgz", + "integrity": "sha512-wBbpv+NQftHDdG86Qc0pIyXk5IR3tM8Vd0nWLKDcX8nNn4nXFOFwsKuqw2okA/1D/mpaAkmuyndrPJTYDNZtFw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collapsible/-/react-collapsible-1.1.12.tgz", + "integrity": "sha512-Uu+mSh4agx2ib1uIGPP4/CKNULyajb3p92LsVXmH2EHVMTfZWpll88XJ0j4W0z3f8NK1eYl1+Mf/szHPmcHzyA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.7.tgz", + "integrity": "sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.2.tgz", + "integrity": "sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.3.tgz", + "integrity": "sha512-ieIFACdMpYfMEjF0rEf5KLvfVyIkOz6PDGyNnP+u+4xQ6jny3VCgA4OgXOwNx2aUkxn8zx9fiVcM8CfFYv9Lxw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu": { + "version": "2.2.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context-menu/-/react-context-menu-2.2.16.tgz", + "integrity": "sha512-O8morBEW+HsVG28gYDZPTrT9UUovQUlJue5YO836tiTJhuIWBm/zQHc7j388sHWtdH/xUZurK9olD2+pcqx5ww==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.15.tgz", + "integrity": "sha512-TCglVRtzlffRNxRMEyR36DGBLJpeusFcgMVD9PZEzAKnUs1lKCgX5u9BmC2Yg+LL9MgZDugFFs1Vl+Jp4t/PGw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-direction": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.1.tgz", + "integrity": "sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.11.tgz", + "integrity": "sha512-Nqcp+t5cTB8BinFkZgXiMJniQH0PsUt2k51FUhbdfeKvc4ACcG2uQniY/8+h1Yv6Kza4Q7lD7PQV0z0oicE0Mg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-escape-keydown": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu": { + "version": "2.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dropdown-menu/-/react-dropdown-menu-2.1.16.tgz", + "integrity": "sha512-1PLGQEynI/3OX/ftV54COn+3Sud/Mn8vALg2rWnBLnRaGtJDduNW/22XjlGgPdpcIbiQxjKtb7BkcjP00nqfJw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-guards": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.3.tgz", + "integrity": "sha512-0rFg/Rj2Q62NCm62jZw0QX7a3sz6QCQU0LpZdNrJX8byRGaGVTqbrW9jAoIAHyMQqsNpeZ81YgSizOt5WXq0Pw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.7.tgz", + "integrity": "sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-form": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-form/-/react-form-0.1.8.tgz", + "integrity": "sha512-QM70k4Zwjttifr5a4sZFts9fn8FzHYvQ5PiB19O2HsYibaHSVt9fH9rzB0XZo/YcM+b7t/p7lYCT/F5eOeF5yQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-label": "2.1.7", + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-form/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-form/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-form/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-hover-card/-/react-hover-card-1.1.15.tgz", + "integrity": "sha512-qgTkjNT1CfKMoP0rcasmlH2r1DAiYicWsDsufxl940sT2wHNEWWv6FMWIQXWhVdmC1d/HYfbhQx60KYyAtKxjg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-id": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.1.tgz", + "integrity": "sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-label": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-label/-/react-label-2.1.7.tgz", + "integrity": "sha512-YT1GqPSL8kJn20djelMX7/cTRp/Y9w5IZHvfxQTVHrOqa2yMl7i/UfMqKRU5V7mEyKTrUVgJXhNQPVCG8PBLoQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-label/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-label/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu": { + "version": "2.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-2.1.16.tgz", + "integrity": "sha512-72F2T+PLlphrqLcAotYPp0uJMr5SjP5SL01wfEspJbru5Zs5vQaSHb4VB3ZMJPimgHHCHG7gMOeOB9H3Hdmtxg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar": { + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-menubar/-/react-menubar-1.1.16.tgz", + "integrity": "sha512-EB1FktTz5xRRi2Er974AUQZWg2yVBb1yjip38/lgwtCVRd3a+maUoGHN/xs9Yv8SY8QwbSEb+YrxGadVWbEutA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu": { + "version": "1.2.14", + "resolved": "https://registry.npmjs.org/@radix-ui/react-navigation-menu/-/react-navigation-menu-1.2.14.tgz", + "integrity": "sha512-YB9mTFQvCOAQMHU+C/jVl96WmuWeltyUEpRJJky51huhds5W2FQr1J8D/16sQlf0ozxkPK8uF3niQMdUwZPv5w==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-one-time-password-field": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-one-time-password-field/-/react-one-time-password-field-0.1.8.tgz", + "integrity": "sha512-ycS4rbwURavDPVjCb5iS3aG4lURFDILi6sKI/WITUMZ13gMmn/xGjpLoqBAalhJaDk8I3UbCM5GzKHrnzwHbvg==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-is-hydrated": "0.1.0", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-one-time-password-field/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-one-time-password-field/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-one-time-password-field/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-password-toggle-field": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-password-toggle-field/-/react-password-toggle-field-0.1.3.tgz", + "integrity": "sha512-/UuCrDBWravcaMix4TdT+qlNdVwOM1Nck9kWx/vafXsdfj1ChfhOdfi3cy9SGBpWgTXwYCuboT/oYpJy3clqfw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-is-hydrated": "0.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-password-toggle-field/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-password-toggle-field/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-password-toggle-field/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.15.tgz", + "integrity": "sha512-kr0X2+6Yy/vJzLYJUPCZEc8SfQcf+1COFoAqauJm74umQhta9M7lNJHP7QQS3vkvcGLQUbWpMzwrXYwrYztHKA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.8.tgz", + "integrity": "sha512-0NJQ4LFFUuWkE7Oxf0htBKS6zLkkjBH+hM1uk7Ng705ReR8m/uelduy1DBo0PyBXPKVnBA6YBlU94MBGXrSBCw==", + "license": "MIT", + "dependencies": { + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-rect": "1.1.1", + "@radix-ui/react-use-size": "1.1.1", + "@radix-ui/rect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.9.tgz", + "integrity": "sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-presence": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.5.tgz", + "integrity": "sha512-/jfEwNDdQVBCNvjkGit4h6pMOzq8bHkopq458dPt2lMjx+eBQUohZNG9A7DtO/O5ukSbxuaNGXMjHicgwy6rQQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-primitive": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz", + "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-progress/-/react-progress-1.1.7.tgz", + "integrity": "sha512-vPdg/tF6YC/ynuBIJlk1mm7Le0VgW6ub6J2UWnTQ7/D23KXcPI1qy+0vBkgKgd38RCMJavBXpB83HPNFMTb0Fg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-radio-group/-/react-radio-group-1.3.8.tgz", + "integrity": "sha512-VBKYIYImA5zsxACdisNQ3BjCBfmbGH3kQlnFVqlWU4tXwjy7cGX8ta80BcrO+WJXIn5iBylEH3K6ZTlee//lgQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.11.tgz", + "integrity": "sha512-7A6S9jSgm/S+7MdtNDSb+IU859vQqJ/QAtcYQcfFC6W8RS4IxIZDldLR0xqCFZ6DCyrQLjLPsxtTNch5jVA4lA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-scroll-area/-/react-scroll-area-1.2.10.tgz", + "integrity": "sha512-tAXIa1g3sM5CGpVT0uIbUx/U3Gs5N8T52IICuCtObaos1S8fzsrPXG5WObkQN3S6NVl6wKgPhAIiBGbWnvc97A==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-select/-/react-select-2.2.6.tgz", + "integrity": "sha512-I30RydO+bnn2PQztvo25tswPH+wFBjehVGtmagkU78yMdwTwVf12wnAOF+AeP8S2N8xD+5UPbGhkUfPyvT+mwQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-separator": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-separator/-/react-separator-1.1.7.tgz", + "integrity": "sha512-0HEb8R9E8A+jZjvmFCy/J4xhbXy3TV+9XSnGJ3KvTtjlIUy/YQ/p6UYZvi7YbeoeXdyU9+Y3scizK6hkY37baA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-separator/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-separator/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slider/-/react-slider-1.3.6.tgz", + "integrity": "sha512-JPYb1GuM1bxfjMRlNLE+BcmBC8onfCi60Blk7OBqi2MLTFdS+8401U4uFjnwkOr49BLmXxLC6JHkvAsx5OJvHw==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slot": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.4.tgz", + "integrity": "sha512-Jl+bCv8HxKnlTLVrcDE8zTMJ09R9/ukw4qBs/oZClOfoQk/cOTbDn+NceXfV7j09YPVQUryJPHurafcSg6EVKA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-switch/-/react-switch-1.2.6.tgz", + "integrity": "sha512-bByzr1+ep1zk4VubeEVViV592vu2lHE2BZY5OnzehZqOOgogN80+mNtCqPkhn2gklJqOpxWgPoYTSnhBCqpOXQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tabs/-/react-tabs-1.1.13.tgz", + "integrity": "sha512-7xdcatg7/U+7+Udyoj2zodtI9H/IIopqo+YOIcZOq1nJwXWBZ9p8xiu5llXlekDbZkca79a/fozEYQXIA4sW6A==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toast": { + "version": "1.2.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toast/-/react-toast-1.2.15.tgz", + "integrity": "sha512-3OSz3TacUWy4WtOXV38DggwxoqJK4+eDkNMl5Z/MJZaoUPaP4/9lf81xXMe1I2ReTAptverZUpbPY4wWwWyL5g==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle/-/react-toggle-1.1.10.tgz", + "integrity": "sha512-lS1odchhFTeZv3xwHH31YPObmJn8gOg7Lq12inrr0+BH/l3Tsq32VfjqH1oh80ARM3mlkfMic15n0kg4sD1poQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle-group/-/react-toggle-group-1.1.11.tgz", + "integrity": "sha512-5umnS0T8JQzQT6HbPyO7Hh9dgd82NmS36DQr+X/YJ9ctFNCiiQd6IJAYYZ33LUwm8M+taCz5t2ui29fHZc4Y6Q==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-toggle": "1.1.10", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toolbar/-/react-toolbar-1.1.11.tgz", + "integrity": "sha512-4ol06/1bLoFu1nwUqzdD4Y5RZ9oDdKeiHIsntug54Hcr1pgaHiPqHFEaXI1IFP/EsOfROQZ8Mig9VTIRza6Tjg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-separator": "1.1.7", + "@radix-ui/react-toggle-group": "1.1.11" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tooltip/-/react-tooltip-1.2.8.tgz", + "integrity": "sha512-tY7sVt1yL9ozIxvmbtN5qtmH2krXcBCfjEiCgKGLqunJHvgvZG2Pcl2oQ3kbcZARb1BGEHdkLzcYGO8ynVlieg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.1.tgz", + "integrity": "sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.2.2.tgz", + "integrity": "sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-effect-event": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-effect-event/-/react-use-effect-event-0.0.2.tgz", + "integrity": "sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-escape-keydown": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.1.tgz", + "integrity": "sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-is-hydrated": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-is-hydrated/-/react-use-is-hydrated-0.1.0.tgz", + "integrity": "sha512-U+UORVEq+cTnRIaostJv9AGdV3G6Y+zbVd+12e18jQ5A3c0xL03IhnHuiU4UV69wolOQp5GfR58NW/EgdQhwOA==", + "license": "MIT", + "dependencies": { + "use-sync-external-store": "^1.5.0" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.1.tgz", + "integrity": "sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-previous": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-1.1.1.tgz", + "integrity": "sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-rect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.1.tgz", + "integrity": "sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==", + "license": "MIT", + "dependencies": { + "@radix-ui/rect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-size": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.1.tgz", + "integrity": "sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.2.3.tgz", + "integrity": "sha512-pzJq12tEaaIhqjbzpCuv/OypJY/BPavOofm+dbab+MHLajy277+1lLm6JFcGgF5eskJ6mquGirhXY2GD/8u8Ug==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/rect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.1.tgz", + "integrity": "sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==", + "license": "MIT" + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.27.tgz", + "integrity": "sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.61.1.tgz", + "integrity": "sha512-JnBB8MdXj45cajvTuO5FmPlvFVJRQgvrz1uSEl3NwqFnReAPGwb8EanbGi4z2nRaqLzjJSv5/JmycoTKlRZxHA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.61.1.tgz", + "integrity": "sha512-Jx2g7iSjw4AOT0HDPHM9RV3GNjRXwybWtSFZiZAYUTjUwjVrYIwq3kBf+LnhqJlzXFAqTAh2F7IGI+O568exPw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.61.1.tgz", + "integrity": "sha512-0F1L/Z3Eqv8mT2n3dCpeO8GcTvHvVqkP5/t6DMsn0KzhYVcg+s7Ncl5DS8qjKYEeio6Az0Gt6nyBORay5qIlCA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.61.1.tgz", + "integrity": "sha512-qLttcH871ujY4YcVfUSShhOw+CsoTatYz8gRbHO7Bb92QH059/P0y5do1KMs41fY0BpD2x4AJH/gID0zFiqVKQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.61.1.tgz", + "integrity": "sha512-fUI4RapGE0Oh3mb8mgfvC1O2nU1RpDZUKnDQm3xB1Ipg7C2wTs5Kstz7G2uWK99a8S2yTMq8/P4uycwNa0nJyw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.61.1.tgz", + "integrity": "sha512-H5YrdvJaDtI/U9/emrD4b++xkvp3y/JvOe4rizHbxvkyMfRS/CiRYdji+Pl8D0brEaNFWUh1drQxgAGIl6Xudw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.61.1.tgz", + "integrity": "sha512-Q8CBCCQtDFrYtXoeUXSrnFXKOnyUhx6bz+SkL6A0E7V8kAiCJ5pamq1WtbfpVGhR5TSpXY6ak3avmDc5fHTyJA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.61.1.tgz", + "integrity": "sha512-nwnhk1581l0FBVellGcVCAT0Oi06onEA3WB53sf01VO3I0UPBkMH9sXONYME2K0ovXcNayJfNtHfm6mpJElatQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.61.1.tgz", + "integrity": "sha512-x5Xr49hwt3hdW75UOZm3395YwwzPyauktslv29KpWL/T+vVAzoT3azLcTWv0eMciBNrx+DYjH4paehHoLpPvpg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.61.1.tgz", + "integrity": "sha512-unMS3H73DpaoPyyEVPjGKleM/s0mkmsauTENpw4INQY8y4+IuLNjkueQ5QCtC0D3N38Y38yhAU8OoZ20S2Tm6w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.61.1.tgz", + "integrity": "sha512-zNZzGRnAhwjFEYmvphJRV5XaQGjs62cCmeYYHUT//NbvEnHauw+I85nGG+SiVg5ld4GX8D1IbKIX+ozITQnhMQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.61.1.tgz", + "integrity": "sha512-LdpWGL8X209B2SIvWjqlc8VZgM6PKfontSerGepuldQmHYrAOtnMCXeJkxXGbC+PPZVOuu5czJo7fNV6aeW8rQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.61.1.tgz", + "integrity": "sha512-EC5kTtNaNGOmbMGqar8dvJy6y/hg99GAwjfBz++pxZhQATXGcRjd6c5en5wcbru0vkRmiMGsQKdMJOOf6sza4g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.61.1.tgz", + "integrity": "sha512-8hiwp6D4acEcNK78I4rP0/XtS1sknWIAMJBPdR4l6zUtyTm5KiTDr5bXmWt4foY7nAN7AThDHgkLIEZOWKbzWw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.61.1.tgz", + "integrity": "sha512-10dh/h/BqA7DuMPWSxkR8uks18FRwnwOEqr5zOTEl+NOwP/OMzKX8OFR/Of9xxDA7D5qef1Nzar5WDD2kCCr1g==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.61.1.tgz", + "integrity": "sha512-YKJ5lg35DP17gcAOggnihe+APw9HLyj1Xn7gsmGumBJAUDa6NGXNixJzmkWLhcK9TOuuyQjdamzvJefkO7qHZQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.61.1.tgz", + "integrity": "sha512-Mlil5G2Jj6a7B3LWGctg+XPL9vdXYuzCtNXfxOQ0nPjc2m6ueUktocPGH9bnAM0bNRKb/bAWTujUU7IJQdQA+g==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.61.1.tgz", + "integrity": "sha512-bVWIOIk6pV01p4CdUbPP7CJ/434z+OooYjDuFcR+44N35YvKUC66G8MGnvcWx5mWKW3g61J+t74l3Kj15Kwn2Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.61.1.tgz", + "integrity": "sha512-qy5pBvZbqNFheBz61R1rzsezjm0J7O2oNGoWtGoY89SZYLUfxAJTBAqDChqAIdB4rCiIbi9nF7yZ83GnNiLwSw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.61.1.tgz", + "integrity": "sha512-E83TXjI4zm0+5f2qO+UOudaCYIhYwpJ5jq6YCZNIZ+6CbfhKrkAGezeiASBL9ElxAxFsRS9ZhESv8mfnj6TKeg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.61.1.tgz", + "integrity": "sha512-fbWnKqVkjrJN38vNe3ahkbk6iejS/3b0Nt7EEtPpE6RBacZcGXNKbzfHN3GUUlXOPghUg0j6XUGrtjX9z1sIvA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.61.1.tgz", + "integrity": "sha512-ArMl38iVAbk0New1ogihQNY6iphLi4ZaRsa037gUzv5yeKPY8TD3Dmy4x2RNC1VztU/uqm+G+/RwFrSka3Oy2g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.61.1.tgz", + "integrity": "sha512-0mYtjHS9ucAbcATycCNK9IGBk/cCe/ma7EmSLGZdsxnOA8cjRIyU04wDpVAD9NiOfLUR9KTxdiO53uOkherqjQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.61.1.tgz", + "integrity": "sha512-gK1iCEPfpoSG9wfBihXxvBMi8ZfcWffYkEsC/Eih+iFENTaewvNcrEQ69lIOWYO5pePHKLHHO7nq5AILGO/HQQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.61.1.tgz", + "integrity": "sha512-X+zaP2x+j4RXGfbp/seSoRHWnPxzApilDszisZxbYH5C/jTxFhCtDNdPGZb9lJyYPs24wGxruPF7Y+sIXt9Gzw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@standard-schema/spec": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz", + "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==", + "license": "MIT" + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", + "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.2" + } + }, + "node_modules/@types/estree": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz", + "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "22.19.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.20.tgz", + "integrity": "sha512-6tELRwSDYWW9EdZhbeZmYGZ1/7Djkt+Ah3/ScEYT9cDord7UJzasR/4D3VONg9tQI5CDp+/CZC1AXj2pCFOvpw==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/react": { + "version": "19.2.17", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.17.tgz", + "integrity": "sha512-MXfmqaVPEVgkBT/aY0aGCkRWWtByiYQXo3xdQ8r5RzuFrPiRn8Gar2tQdXSUQ2GKV3bkXckek89V8wQBY2Q/Aw==", + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "csstype": "^3.2.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.2.3", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.3.tgz", + "integrity": "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==", + "license": "MIT", + "optional": true, + "peer": true, + "peerDependencies": { + "@types/react": "^19.2.0" + } + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.7.0.tgz", + "integrity": "sha512-gUu9hwfWvvEDBBmgtAowQCojwZmJ5mcLn3aufeCsitijs3+f2NsrPtlAWIR6OPiqljl96GVCUbLe0HyqIpVaoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.28.0", + "@babel/plugin-transform-react-jsx-self": "^7.27.1", + "@babel/plugin-transform-react-jsx-source": "^7.27.1", + "@rolldown/pluginutils": "1.0.0-beta.27", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.17.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" + } + }, + "node_modules/aria-hidden": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.6.tgz", + "integrity": "sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/assistant-cloud": { + "version": "0.1.31", + "resolved": "https://registry.npmjs.org/assistant-cloud/-/assistant-cloud-0.1.31.tgz", + "integrity": "sha512-YBLc79w2EFD/6YjvcZrperpZ+B3TQ9LZ39AbjfcnbIJiSXYAs8cDH+mgy1GrfJBq47nhGaTVEf7ajv+hk084eA==", + "license": "MIT", + "dependencies": { + "assistant-stream": "^0.3.20" + } + }, + "node_modules/assistant-stream": { + "version": "0.3.20", + "resolved": "https://registry.npmjs.org/assistant-stream/-/assistant-stream-0.3.20.tgz", + "integrity": "sha512-CniC84epmE9JrMSDzlZVWJ13O5rYbjoqEzh0jT+QfsrR07LBls42DMJ60XNxKXm8Hrn6MHSZcxqBUqwXRtoutA==", + "license": "MIT", + "dependencies": { + "@standard-schema/spec": "^1.1.0", + "nanoid": "^5.1.11", + "secure-json-parse": "^4.1.0" + }, + "peerDependencies": { + "ioredis": "^5.10.1", + "redis": "^5.12.1" + }, + "peerDependenciesMeta": { + "ioredis": { + "optional": true + }, + "redis": { + "optional": true + } + } + }, + "node_modules/assistant-stream/node_modules/nanoid": { + "version": "5.1.16", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.16.tgz", + "integrity": "sha512-kVrnsrJqMR8+oLJnGEmSWw9BivK5mt7H3FZatVRjrc5wGqFYuBxX1yG7+A7Gi5AefkX6t/oCkizcQgpu0cY1dQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, + "node_modules/baseline-browser-mapping": { + "version": "2.10.34", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.34.tgz", + "integrity": "sha512-IMDedajPifLnHNY0X9n8hKxRTQ6/eTHwr5bDo04WnuqxyKw6LYtQywCuuqPZwhl3aBXMvQpJov42GLCwRRdQzw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/browserslist": { + "version": "4.28.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.2.tgz", + "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.10.12", + "caniuse-lite": "^1.0.30001782", + "electron-to-chromium": "^1.5.328", + "node-releases": "^2.0.36", + "update-browserslist-db": "^1.2.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001793", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001793.tgz", + "integrity": "sha512-iwSsYWaCOoh26cV8NwNRViHlrfUvYsHDfRVcbtmw0Kg6PJIZZXwMkj1442FYLBGkeUf1juAsU3DTfxW579mrPA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "license": "MIT", + "optional": true, + "peer": true + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/detect-node-es": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", + "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.368", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.368.tgz", + "integrity": "sha512-7RckJJK4uESJF9PxvfMWd3TGqIiieUTG4HxnKaKuIpGbcr+r2ZEB3g2gAhCP3Fqm42vJSzLfgab9eva/C4/XVw==", + "dev": true, + "license": "ISC" + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-nonce": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", + "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/jiti": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.7.0.tgz", + "integrity": "sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/lucide-react": { + "version": "0.468.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.468.0.tgz", + "integrity": "sha512-6koYRhnM2N0GGZIdXzSeiNwguv1gt/FAjZOiPl76roBi3xKEXa4WmfpxgQwTTL4KipXjefrnf3oV4IsYhi4JFA==", + "license": "ISC", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz", + "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/node-releases": { + "version": "2.0.47", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.47.tgz", + "integrity": "sha512-Uzmd6LXpouKo8EUK68IjH4+E01w/hXyV3R3g/geCJo+rXLNfh1xucB+LOzYEOQPSiUK3h/xZf0cQGcSsmyL2Og==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.5.15", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.15.tgz", + "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.12", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/radix-ui": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/radix-ui/-/radix-ui-1.4.3.tgz", + "integrity": "sha512-aWizCQiyeAenIdUbqEpXgRA1ya65P13NKn/W8rWkcN0OPkRDxdBVLWnIEDsS2RpwCK2nobI7oMUSmexzTDyAmA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-accessible-icon": "1.1.7", + "@radix-ui/react-accordion": "1.2.12", + "@radix-ui/react-alert-dialog": "1.1.15", + "@radix-ui/react-arrow": "1.1.7", + "@radix-ui/react-aspect-ratio": "1.1.7", + "@radix-ui/react-avatar": "1.1.10", + "@radix-ui/react-checkbox": "1.3.3", + "@radix-ui/react-collapsible": "1.1.12", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-context-menu": "2.2.16", + "@radix-ui/react-dialog": "1.1.15", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-dropdown-menu": "2.1.16", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-form": "0.1.8", + "@radix-ui/react-hover-card": "1.1.15", + "@radix-ui/react-label": "2.1.7", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-menubar": "1.1.16", + "@radix-ui/react-navigation-menu": "1.2.14", + "@radix-ui/react-one-time-password-field": "0.1.8", + "@radix-ui/react-password-toggle-field": "0.1.3", + "@radix-ui/react-popover": "1.1.15", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-progress": "1.1.7", + "@radix-ui/react-radio-group": "1.3.8", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-scroll-area": "1.2.10", + "@radix-ui/react-select": "2.2.6", + "@radix-ui/react-separator": "1.1.7", + "@radix-ui/react-slider": "1.3.6", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-switch": "1.2.6", + "@radix-ui/react-tabs": "1.1.13", + "@radix-ui/react-toast": "1.2.15", + "@radix-ui/react-toggle": "1.1.10", + "@radix-ui/react-toggle-group": "1.1.11", + "@radix-ui/react-toolbar": "1.1.11", + "@radix-ui/react-tooltip": "1.2.8", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-escape-keydown": "1.1.1", + "@radix-ui/react-use-is-hydrated": "0.1.0", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-size": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/radix-ui/node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/radix-ui/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/radix-ui/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react": { + "version": "19.2.7", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.7.tgz", + "integrity": "sha512-HNe9WslTbXmFK8o8cmwgAeJFSBvt1bPdHCVKtaaV+WlAN36mpT4hcRpwbf3fY56ar2oIXzsBpOAiIRHAdY0OlQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "19.2.7", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.7.tgz", + "integrity": "sha512-t0BRVXvbiE/o20Hfw669rLbMCDWtYZLvmJigy2f0MxsXF+71pxhR3xOkspmsO8h3ZlNzyibAmtCa3l4lYKk6gQ==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.27.0" + }, + "peerDependencies": { + "react": "^19.2.7" + } + }, + "node_modules/react-refresh": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz", + "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-remove-scroll": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.7.2.tgz", + "integrity": "sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q==", + "license": "MIT", + "dependencies": { + "react-remove-scroll-bar": "^2.3.7", + "react-style-singleton": "^2.2.3", + "tslib": "^2.1.0", + "use-callback-ref": "^1.3.3", + "use-sidecar": "^1.1.3" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-remove-scroll-bar": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz", + "integrity": "sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==", + "license": "MIT", + "dependencies": { + "react-style-singleton": "^2.2.2", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-style-singleton": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz", + "integrity": "sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==", + "license": "MIT", + "dependencies": { + "get-nonce": "^1.0.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-textarea-autosize": { + "version": "8.5.9", + "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.5.9.tgz", + "integrity": "sha512-U1DGlIQN5AwgjTyOEnI1oCcMuEr1pv1qOtklB2l4nyMGbHzWrI0eFsYK0zos2YWqAolJyG0IWJaqWmWj5ETh0A==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.20.13", + "use-composed-ref": "^1.3.0", + "use-latest": "^1.2.1" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/rollup": { + "version": "4.61.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.61.1.tgz", + "integrity": "sha512-I4KW6iuRpuu2uHBLraZ1wNZe0DP7lnRha+VJ9tNaYVaVgKhW0aI3h4RYnoRPeql0flHm/Co55b7snEDcOfOJrA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.9" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.61.1", + "@rollup/rollup-android-arm64": "4.61.1", + "@rollup/rollup-darwin-arm64": "4.61.1", + "@rollup/rollup-darwin-x64": "4.61.1", + "@rollup/rollup-freebsd-arm64": "4.61.1", + "@rollup/rollup-freebsd-x64": "4.61.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.61.1", + "@rollup/rollup-linux-arm-musleabihf": "4.61.1", + "@rollup/rollup-linux-arm64-gnu": "4.61.1", + "@rollup/rollup-linux-arm64-musl": "4.61.1", + "@rollup/rollup-linux-loong64-gnu": "4.61.1", + "@rollup/rollup-linux-loong64-musl": "4.61.1", + "@rollup/rollup-linux-ppc64-gnu": "4.61.1", + "@rollup/rollup-linux-ppc64-musl": "4.61.1", + "@rollup/rollup-linux-riscv64-gnu": "4.61.1", + "@rollup/rollup-linux-riscv64-musl": "4.61.1", + "@rollup/rollup-linux-s390x-gnu": "4.61.1", + "@rollup/rollup-linux-x64-gnu": "4.61.1", + "@rollup/rollup-linux-x64-musl": "4.61.1", + "@rollup/rollup-openbsd-x64": "4.61.1", + "@rollup/rollup-openharmony-arm64": "4.61.1", + "@rollup/rollup-win32-arm64-msvc": "4.61.1", + "@rollup/rollup-win32-ia32-msvc": "4.61.1", + "@rollup/rollup-win32-x64-gnu": "4.61.1", + "@rollup/rollup-win32-x64-msvc": "4.61.1", + "fsevents": "~2.3.2" + } + }, + "node_modules/safe-content-frame": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/safe-content-frame/-/safe-content-frame-0.0.20.tgz", + "integrity": "sha512-saE3fBeGWOsi04PzTUaRi6RsBIjDYrZX4KzgIZUjbq3xQeOKYMcW1DeTb573Zyx1ggCDVJKoD/THchblISwjiQ==", + "license": "MIT" + }, + "node_modules/scheduler": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", + "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==", + "license": "MIT" + }, + "node_modules/secure-json-parse": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-4.1.0.tgz", + "integrity": "sha512-l4KnYfEyqYJxDwlNVyRfO2E4NTHfMKAWdUuA8J0yve2Dz/E/PdBepY03RvyJpssIpRFwJoCD55wA+mEDs6ByWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz", + "integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/tsx": { + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.22.4.tgz", + "integrity": "sha512-X8EX+XV4QR5xCsrgxaED954zTDfY8KqlDtskKEL0cHhyS/P8b4IFOvGDQpsC9Q1XnLq915wEfwwY/zzskCtmhg==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "esbuild": "~0.28.0" + }, + "bin": { + "tsx": "dist/cli.mjs" + }, + "engines": { + "node": ">=18.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + } + }, + "node_modules/tsx/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "peer": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true + }, + "node_modules/update-browserslist-db": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/use-callback-ref": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.3.tgz", + "integrity": "sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-composed-ref": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.4.0.tgz", + "integrity": "sha512-djviaxuOOh7wkj0paeO1Q/4wMZ8Zrnag5H6yBvzN7AKKe8beOaED9SF5/ByLqsku8NP4zQqsvM2u3ew/tJK8/w==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-effect-event": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/use-effect-event/-/use-effect-event-2.0.3.tgz", + "integrity": "sha512-fz1en+z3fYXCXx3nMB8hXDMuygBltifNKZq29zDx+xNJ+1vEs6oJlYd9sK31vxJ0YI534VUsHEBY0k2BATsmBQ==", + "license": "MIT", + "peerDependencies": { + "react": "^18.3 || ^19.0.0-0" + } + }, + "node_modules/use-isomorphic-layout-effect": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.2.1.tgz", + "integrity": "sha512-tpZZ+EX0gaghDAiFR37hj5MgY6ZN55kLiPkJsKxBMZ6GZdOSPJXiOzPM984oPYZ5AnehYx5WQp1+ME8I/P/pRA==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-latest": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.3.0.tgz", + "integrity": "sha512-mhg3xdm9NaM8q+gLT8KryJPnRFOz1/5XPBhmDEVZK1webPzDjrPk7f/mbpeLqTgB9msytYWANxgALOCJKnLvcQ==", + "license": "MIT", + "dependencies": { + "use-isomorphic-layout-effect": "^1.1.1" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sidecar": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.3.tgz", + "integrity": "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==", + "license": "MIT", + "dependencies": { + "detect-node-es": "^1.1.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sync-external-store": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz", + "integrity": "sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/vite": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.4.3.tgz", + "integrity": "sha512-NTKlcQjlAK7MlQoyb6LgaqHc8sso/pVyUJYWMws3jg21uTJw/LddqIFPcPqP6PzpgbIcZyKI85sFE4HBrQDA8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.25.0", + "fdir": "^6.4.4", + "picomatch": "^4.0.2", + "postcss": "^8.5.3", + "rollup": "^4.34.9", + "tinyglobby": "^0.2.13" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "jiti": ">=1.21.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/vite/node_modules/@esbuild/aix-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", + "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", + "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", + "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/android-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", + "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/darwin-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", + "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/darwin-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", + "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", + "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", + "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", + "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", + "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", + "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-loong64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", + "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-mips64el": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", + "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", + "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-riscv64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", + "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-s390x": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", + "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", + "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", + "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/netbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", + "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", + "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", + "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openharmony-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", + "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/sunos-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", + "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", + "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", + "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", + "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vite/node_modules/esbuild": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz", + "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.12", + "@esbuild/android-arm": "0.25.12", + "@esbuild/android-arm64": "0.25.12", + "@esbuild/android-x64": "0.25.12", + "@esbuild/darwin-arm64": "0.25.12", + "@esbuild/darwin-x64": "0.25.12", + "@esbuild/freebsd-arm64": "0.25.12", + "@esbuild/freebsd-x64": "0.25.12", + "@esbuild/linux-arm": "0.25.12", + "@esbuild/linux-arm64": "0.25.12", + "@esbuild/linux-ia32": "0.25.12", + "@esbuild/linux-loong64": "0.25.12", + "@esbuild/linux-mips64el": "0.25.12", + "@esbuild/linux-ppc64": "0.25.12", + "@esbuild/linux-riscv64": "0.25.12", + "@esbuild/linux-s390x": "0.25.12", + "@esbuild/linux-x64": "0.25.12", + "@esbuild/netbsd-arm64": "0.25.12", + "@esbuild/netbsd-x64": "0.25.12", + "@esbuild/openbsd-arm64": "0.25.12", + "@esbuild/openbsd-x64": "0.25.12", + "@esbuild/openharmony-arm64": "0.25.12", + "@esbuild/sunos-x64": "0.25.12", + "@esbuild/win32-arm64": "0.25.12", + "@esbuild/win32-ia32": "0.25.12", + "@esbuild/win32-x64": "0.25.12" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/zod": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.3.tgz", + "integrity": "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/zustand": { + "version": "5.0.14", + "resolved": "https://registry.npmjs.org/zustand/-/zustand-5.0.14.tgz", + "integrity": "sha512-/8tAspM5LMPr28b3fwLYrtdj77ECpfZviaP75CMTnwO8ISyaE4GDIG/9rDDYq/cH9D2Xw2A2RXglLInmVBQB/g==", + "license": "MIT", + "engines": { + "node": ">=12.20.0" + }, + "peerDependencies": { + "@types/react": ">=18.0.0", + "immer": ">=9.0.6", + "react": ">=18.0.0", + "use-sync-external-store": ">=1.2.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "immer": { + "optional": true + }, + "react": { + "optional": true + }, + "use-sync-external-store": { + "optional": true + } + } + } + } +} diff --git a/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx b/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx index ce241cd..faa437d 100644 --- a/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx +++ b/examples/apps/chat-ui/template/src/nodeagent-chat/NodeAgentChatApp.jsx @@ -1,15 +1,23 @@ +import { useRef } from "react"; import { + ActionBarPrimitive, AuiIf, AssistantRuntimeProvider, ComposerPrimitive, MessagePrimitive, ThreadPrimitive, + useAui, + useAuiState, useLocalRuntime, } from "@assistant-ui/react"; import { Github, KeyRound, SendHorizontal, Sparkles } from "lucide-react"; import { nodeAgentLocalAdapter, SUGGESTED_PROMPT } from "./nodeAgentLocalAdapter.js"; import { NodeAgentToolUIs } from "./toolUIs.jsx"; +function focusComposer(event) { + event.currentTarget.closest(".naThread")?.querySelector("textarea[name=input]")?.focus(); +} + function UserMessage() { return ( @@ -21,6 +29,17 @@ function UserMessage() { } function AssistantMessage() { + const aui = useAui(); + const messageId = useAuiState((s) => s.message.id); + const submittedResponse = useRef(null); + const retryResponse = (event) => { + if (aui.thread().getState().isRunning || submittedResponse.current === messageId) { + event.preventDefault(); + return; + } + submittedResponse.current = messageId; + focusComposer(event); + }; return (
+ s.message.status?.type === "incomplete" && (s.message.status.reason === "cancelled" || s.message.status.reason === "error")}> +
+ s.message.status?.type === "incomplete" && s.message.status.reason === "cancelled"}> +

Stopped this response. Completed work is kept.

+
+ +

This response failed. Earlier results are kept.

+
+ Retry response +
+
); @@ -72,9 +102,16 @@ function NodeAgentThread() { - - + !s.thread.isRunning}> + + + + s.thread.isRunning}> + + Stop + +

Scripted local adapter. Replace it with a server route when credentials exist.

diff --git a/examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx b/examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx index 9bb8e34..053fea0 100644 --- a/examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx +++ b/examples/apps/chat-ui/template/src/nodeagent-chat/toolUIs.jsx @@ -1,11 +1,13 @@ import { makeAssistantToolUI } from "@assistant-ui/react"; -function ToolCard({ children, label, running, sub }) { +function ToolCard({ children, label, running, status, sub }) { + const interrupted = running && status.type === "incomplete"; + const interruptedLabel = interrupted ? (status.reason === "cancelled" ? "stopped" : status.reason === "error" ? "failed" : "interrupted") : null; return ( -
+
{label} - {running ? "working" : sub ?? "done"} + {interruptedLabel ?? (running ? "working" : sub ?? "done")}
{!running && children ?
{children}
: null}
@@ -14,8 +16,8 @@ function ToolCard({ children, label, running, sub }) { export const ContextToolUI = makeAssistantToolUI({ toolName: "collect_context", - render: ({ result }) => ( - + render: ({ result, status }) => ( + {result?.items.map((item, index) => (

{item.relevance.toFixed(2)} @@ -29,8 +31,8 @@ export const ContextToolUI = makeAssistantToolUI({ export const SearchToolUI = makeAssistantToolUI({ toolName: "search_synthesize", - render: ({ result }) => ( - ( + { + render: ({ result, status }) => { const changed = new Set((result?.applied?.changes ?? []).map((change) => change.address)); return ( - ( - + render: ({ result, status }) => ( +

{result?.blocks.map((block) => { if (block.type === "heading") return

{block.text}

; diff --git a/examples/apps/chat-ui/template/src/styles.css b/examples/apps/chat-ui/template/src/styles.css index e0cb9a8..dc50788 100644 --- a/examples/apps/chat-ui/template/src/styles.css +++ b/examples/apps/chat-ui/template/src/styles.css @@ -437,3 +437,13 @@ a { grid-template-columns: 1fr; } } + +/* Response controls retain completed results when native streaming stops. */ +.naMain, .naThread { min-width: 0; } +.naStop { width: auto; min-width: 64px; padding: 0 12px; } +.naRecovery { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line); overflow-wrap: anywhere; } +.naRecovery p { margin: 0 0 10px; line-height: 1.5; } +.naRecovery button { min-height: 44px; padding: 8px 12px; border: 1px solid var(--muted); border-radius: 8px; background: var(--surface); color: var(--text); cursor: pointer; } +.naRecovery button:disabled { cursor: default; } +.naRecovery button:focus-visible, .naStop:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; } +.naTool[data-interrupted="true"] header span { color: var(--muted); } diff --git a/src/app/styles.css b/src/app/styles.css index b6c06d9..e1e4b82 100644 --- a/src/app/styles.css +++ b/src/app/styles.css @@ -234,3 +234,11 @@ button { font-family: inherit; cursor: pointer; } .na-rail-graph button { min-width: 44px; min-height: 44px; } .na-rail-graph label { min-height: 44px; } } + +/* Response controls retain completed results when native streaming stops. */ +.na-stop { width: auto; min-width: 64px; padding: 0 12px; } +.na-recovery { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line); overflow-wrap: anywhere; } +.na-recovery p { margin: 0 0 10px; } +.na-recovery button { min-height: 44px; padding: 8px 12px; border: 1px solid var(--ink-muted); border-radius: var(--r-sm); background: var(--surface); color: var(--ink); } +.na-recovery button:disabled { cursor: default; } +.na-interrupted { color: var(--ink-muted); } diff --git a/src/features/node-agent/components/NodeAgentThread.tsx b/src/features/node-agent/components/NodeAgentThread.tsx index 2b37204..fa5b7e3 100644 --- a/src/features/node-agent/components/NodeAgentThread.tsx +++ b/src/features/node-agent/components/NodeAgentThread.tsx @@ -7,14 +7,22 @@ * four tool UIs inline (registered in toolUIs.tsx). */ +import { useRef, type MouseEvent } from "react"; import { + ActionBarPrimitive, AuiIf, ComposerPrimitive, MessagePrimitive, ThreadPrimitive, + useAui, + useAuiState, } from "@assistant-ui/react"; import { DEMO_QUESTION } from "../demoScenario"; +function focusComposer(event: MouseEvent) { + event.currentTarget.closest(".na-thread")?.querySelector("textarea[name=input]")?.focus(); +} + function UserMessage() { return ( @@ -26,6 +34,17 @@ function UserMessage() { } function AssistantMessage() { + const aui = useAui(); + const messageId = useAuiState((s) => s.message.id); + const submittedResponse = useRef(null); + const retryResponse = (event: MouseEvent) => { + if (aui.thread().getState().isRunning || submittedResponse.current === messageId) { + event.preventDefault(); + return; + } + submittedResponse.current = messageId; + focusComposer(event); + }; return ( @@ -33,6 +52,21 @@ function AssistantMessage() {
+ s.message.status?.type === "incomplete" && (s.message.status.reason === "cancelled" || s.message.status.reason === "error")}> +
+ s.message.status?.type === "incomplete" && s.message.status.reason === "cancelled"}> +

Stopped this response. Completed work is kept.

+
+ +

This response failed. Earlier results are kept.

+
+ { + if (event.currentTarget.matches(":focus-visible")) { + event.currentTarget.parentElement?.scrollIntoView({ block: "start" }); + } + }}>Retry response +
+
); @@ -88,9 +122,16 @@ export function NodeAgentThread() { rows={1} autoFocus /> - - ↑ - + !s.thread.isRunning}> + + ↑ + + + s.thread.isRunning}> + + Stop + +

Deterministic demo — no keys. The agent runs the real ported modules over a fixed diff --git a/src/features/node-agent/components/toolUIs.tsx b/src/features/node-agent/components/toolUIs.tsx index ee2de67..5c43452 100644 --- a/src/features/node-agent/components/toolUIs.tsx +++ b/src/features/node-agent/components/toolUIs.tsx @@ -10,7 +10,7 @@ */ import type { ReactNode } from "react"; -import { makeAssistantToolUI } from "@assistant-ui/react"; +import { makeAssistantToolUI, type ToolCallMessagePartStatus } from "@assistant-ui/react"; import type { ContextToolResult, MemoToolResult, @@ -23,22 +23,28 @@ function ToolCard({ label, sub, running, + status, children, }: { icon: string; label: string; sub?: string; running: boolean; + status: ToolCallMessagePartStatus; children?: ReactNode; }) { + const interrupted = running && status.type === "incomplete"; + const interruptedLabel = interrupted ? (status.reason === "cancelled" ? "stopped" : status.reason === "error" ? "failed" : "interrupted") : null; return ( -

+
{icon} {label} - {running ? ( + {interrupted ? ( + {interruptedLabel} + ) : running ? ( working… @@ -54,8 +60,8 @@ function ToolCard({ /* 1 — collect_context */ const ContextToolUI = makeAssistantToolUI<{ focus: string }, ContextToolResult>({ toolName: "collect_context", - render: ({ result }) => ( - ( + ( /* 2 — search_synthesize */ const SearchToolUI = makeAssistantToolUI<{ query: string }, SearchToolResult>({ toolName: "search_synthesize", - render: ({ result }) => ( - ( + ({ /* 3 — apply_spreadsheet_delta */ const SpreadsheetToolUI = makeAssistantToolUI<{ sheet: string }, ModelToolResult>({ toolName: "apply_spreadsheet_delta", - render: ({ result }) => { + render: ({ result, status }) => { const changed = new Set((result?.applied?.changes ?? []).map((c) => c.address)); return ( - ({ toolName: "write_memo", - render: ({ result }) => ( - ( +