mirror of
https://github.com/getpaseo/paseo.git
synced 2026-11-07 08:54:42 +00:00
Merge remote-tracking branch 'origin/main' into workspace-runtime-poc
# Conflicts: # nix/npm-deps.hash # package.json # packages/client/src/daemon-client.ts # packages/server/src/server/bootstrap.ts # packages/server/src/server/websocket-server.ts
This commit is contained in:
@@ -24,6 +24,7 @@ const migratedOwners = [
|
||||
];
|
||||
const hostModules = new Set(["child_process", "fs", "fs/promises", "module", "which"]);
|
||||
const auditedNonliteralServerLoads = new Set([
|
||||
"packages/server/src/server/plugins/plugin-process.ts|runtimeRequire|nodeRequire|load",
|
||||
"packages/server/src/server/workspace-runtime/command/internal/command-runtime.ts|resolveRuntimeCommand|moduleRequire|resolve",
|
||||
"packages/server/src/server/speech/providers/local/sherpa/sherpa-runtime-env.ts|resolveSherpaLoaderEnv|require|resolve",
|
||||
"packages/server/src/server/speech/providers/local/sherpa/sherpa-onnx-node-loader.ts|loadWithRequire|requireFn|load",
|
||||
|
||||
@@ -328,6 +328,18 @@ test("the AST guard follows direct createRequire property calls", async (t) => {
|
||||
|
||||
test("audited production loader exceptions are narrow", async (t) => {
|
||||
const root = await fixtureRoot(t);
|
||||
await source(
|
||||
root,
|
||||
"packages/server/src/server/plugins/plugin-process.ts",
|
||||
'import { createRequire } from "node:module";\n' +
|
||||
'const nodeRequire = createRequire("package.json");\n' +
|
||||
"function runtimeRequire(target) {\n" +
|
||||
" return nodeRequire(target);\n" +
|
||||
"}\n" +
|
||||
"function unreviewedPluginLoad(target) {\n" +
|
||||
" return nodeRequire(target);\n" +
|
||||
"}\n",
|
||||
);
|
||||
await source(
|
||||
root,
|
||||
"packages/server/src/server/workspace-runtime/command/internal/command-runtime.ts",
|
||||
@@ -359,6 +371,13 @@ test("audited production loader exceptions are narrow", async (t) => {
|
||||
);
|
||||
|
||||
assert.deepEqual(await findWorkspaceBoundaryViolations(root), [
|
||||
{
|
||||
file: "packages/server/src/server/plugins/plugin-process.ts",
|
||||
import: "<computed>",
|
||||
rule: "nonliteral-module-load",
|
||||
message:
|
||||
"packages/server/src/server/plugins/plugin-process.ts: nonliteral-module-load forbids <computed>",
|
||||
},
|
||||
{
|
||||
file: "packages/server/src/server/workspace-runtime/command/internal/command-runtime.ts",
|
||||
import: "<computed>",
|
||||
|
||||
Reference in New Issue
Block a user