Acquire installed portable operations with explicit authority and input coverage
This commit is contained in:
@@ -4,6 +4,8 @@ import { loadReaderWorkspace } from "./reader-fixture.js";
|
||||
import { compileKernelProgram } from "../src/execution-world/kernel.js";
|
||||
import { compileExecutionPlan } from "../src/execution-world/plan.js";
|
||||
import { generatePortableTypeScriptBindings } from "../src/bindings/portable.js";
|
||||
import { generatePortableClientBindings } from "../src/bindings/portable-client.js";
|
||||
import { loadCompositeWorkspace } from "./composite-fixture.js";
|
||||
const plan = compileExecutionPlan(await loadReaderWorkspace());
|
||||
await mkdir("dist/portable-reader", { recursive: true });
|
||||
for (const target of ["browser", "server"])
|
||||
@@ -13,6 +15,7 @@ for (const target of ["browser", "server"])
|
||||
);
|
||||
await writeFile("dist/portable-reader/plan.json", JSON.stringify(plan));
|
||||
await writeFile("dist/portable-reader/kernel.json", JSON.stringify(compileKernelProgram(plan)));
|
||||
await writeFile("dist/portable-reader/client.ts", generatePortableClientBindings(plan, { target: "browser" }));
|
||||
const serviceWorkspace = structuredClone(plan.definition.workspace);
|
||||
serviceWorkspace.atoms = [];
|
||||
serviceWorkspace.conformances = [];
|
||||
@@ -33,3 +36,16 @@ serviceWorkspace.packageImports[0]!.exports = [
|
||||
},
|
||||
];
|
||||
await writeFile("dist/portable-reader/service-plan.json", JSON.stringify(compileExecutionPlan(serviceWorkspace)));
|
||||
const composite = compileExecutionPlan(await loadCompositeWorkspace());
|
||||
await mkdir("dist/portable-reader/composite", { recursive: true });
|
||||
await writeFile("dist/portable-reader/composite/plan.json", JSON.stringify(composite));
|
||||
await writeFile("dist/portable-reader/composite/kernel.json", JSON.stringify(compileKernelProgram(composite)));
|
||||
for (const target of ["browser", "server"])
|
||||
for (const [name, revision] of [
|
||||
["reader", "package:reader-runtime@1"],
|
||||
["comment", "package:comment-runtime@1"],
|
||||
] as const)
|
||||
await writeFile(
|
||||
`dist/portable-reader/composite/${name}-${target}.ts`,
|
||||
generatePortableTypeScriptBindings(composite.definition.bindingSchema, revision, { target }),
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user