import { readFile } from 'node:fs/promises'; import { resolve } from 'node:path'; import { describe, expect, it } from 'vitest'; describe('Pi packaged release proof wiring', () => { it('keeps extension and proxy Provider scenarios assigned to their own proof entrypoints', async () => { const source = await readFile( resolve('electron/coding-runtime/pi/release-proof.ts'), 'utf8', ); const extensionStart = source.indexOf('export async function runFinalAsarExtensionProof'); const proxyStart = source.indexOf('export async function startFinalAsarProxyCompositionProof'); const resilienceStart = source.indexOf('export async function startFinalAsarResilienceProof'); expect(extensionStart).toBeGreaterThan(-1); expect(proxyStart).toBeGreaterThan(extensionStart); expect(resilienceStart).toBeGreaterThan(proxyStart); expect(source.slice(extensionStart, proxyStart)) .toContain("startLocalProofProvider('subagent')"); expect(source.slice(extensionStart, proxyStart)) .not.toContain("startLocalProofProvider('submit-rejection')"); expect(source.slice(proxyStart, resilienceStart)) .toContain("startLocalProofProvider('submit-rejection')"); expect(source.slice(proxyStart, resilienceStart)) .not.toContain("startLocalProofProvider('subagent')"); }); });