poe-code 9.0.1 → 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,7 @@ import path from "node:path";
2
2
  import { readFile } from "node:fs/promises";
3
3
  import { Argument } from "commander";
4
4
  import { discoverHarnesses, listBuiltinTemplates, MissingPairError, resolvePair, runHarnessPair } from "@poe-code/agent-harness";
5
- import { makeAgentModule, makeFailModule, makeFsModule, makeGitModule, makeHarnessModule, makeLogModule, makeMetricModule, makeMcpModule, parseMcpConfig, restore, splitFrontmatter } from "@poe-code/safejs";
5
+ import { makeAgentModule, makeEnvModule, parseEnvConfig, makeFailModule, makeFsModule, makeGitModule, makeHarnessModule, makeLogModule, makeMetricModule, makeMcpModule, parseMcpConfig, restore, splitFrontmatter } from "@poe-code/safejs";
6
6
  import { cancel, getTheme, isCancel, promptText, renderTable, select, withSpinner } from "toolcraft-design";
7
7
  import { OperationCancelledError, ReportedError, ValidationError } from "../errors.js";
8
8
  import { createExecutionResources, resolveCommandFlags } from "./shared.js";
@@ -23,6 +23,7 @@ export function registerHarnessCommand(program, container) {
23
23
  .option("--fs-root <path>", "Directory --fs confines the harness to (default: the harness directory).")
24
24
  .option("--snapshot-path <path>", "File to write/read harness snapshots.")
25
25
  .option("--mcp-config <path>", "Give the harness named MCP servers from a JSON config.")
26
+ .option("--env-config <path>", "Grant environment reads from an explicit JSON config.")
26
27
  .option("--resume", "Resume from the snapshot file when it exists.")
27
28
  .option("--agent <name>", "Override the agent id from the harness frontmatter agent block.")
28
29
  .option("--model <name>", "Override the model from the harness frontmatter agent block.")
@@ -55,6 +56,13 @@ async function executeHarnessRun(program, container, mdPath, options) {
55
56
  const flags = resolveHarnessFlags(program, options.yes);
56
57
  const resources = createExecutionResources(container, flags, "harness:run");
57
58
  const fsOptions = resolveHarnessFsOptions(container, options);
59
+ let envOptions;
60
+ if (options.envConfig !== undefined) {
61
+ if (options.envConfig.trim().length === 0)
62
+ throw new ValidationError("--env-config needs a JSON file path.");
63
+ const configPath = path.resolve(container.env.cwd, options.envConfig);
64
+ envOptions = parseEnvConfig(await container.fs.readFile(configPath, "utf8"));
65
+ }
58
66
  let mcpOptions;
59
67
  if (options.mcpConfig !== undefined) {
60
68
  if (options.mcpConfig.trim().length === 0)
@@ -112,7 +120,7 @@ async function executeHarnessRun(program, container, mdPath, options) {
112
120
  signal: abortController.signal,
113
121
  modulesFor: (frontmatter, meta) => createHarnessModules(container, resources.logger, frontmatter, meta, (error) => {
114
122
  reportedSpawnFailures.add(error);
115
- }, runFsOptions, mcpOptions),
123
+ }, runFsOptions, mcpOptions, envOptions),
116
124
  onDiagnostics: (diagnostics) => {
117
125
  lintDiagnostics.push(...diagnostics);
118
126
  },
@@ -658,7 +666,7 @@ function resolveHarnessFsOptions(container, options) {
658
666
  function resolveFsRoot(fsOptions, harnessDir) {
659
667
  return fsOptions.root ?? harnessDir;
660
668
  }
661
- function createHarnessModules(container, logger, frontmatter, meta, onSpawnFailure, fsOptions, mcpOptions) {
669
+ function createHarnessModules(container, logger, frontmatter, meta, onSpawnFailure, fsOptions, mcpOptions, envOptions) {
662
670
  const harnessMeta = {
663
671
  kind: meta.kind,
664
672
  version: meta.version,
@@ -709,6 +717,11 @@ function createHarnessModules(container, logger, frontmatter, meta, onSpawnFailu
709
717
  return {
710
718
  agent: toModuleExports(agent),
711
719
  ...(mcpOptions === undefined ? {} : { mcp: toModuleExports(makeMcpModule(mcpOptions)) }),
720
+ ...(envOptions === undefined
721
+ ? {}
722
+ : {
723
+ env: toModuleExports(makeEnvModule({ ...envOptions, values: envOptions.values ?? container.env.variables }))
724
+ }),
712
725
  fail: toModuleExports(new Map([["default", fail]])),
713
726
  ...(fsOptions === undefined
714
727
  ? {}
@@ -1 +1 @@
1
- {"version":3,"file":"harness.js","sourceRoot":"","sources":["../../../src/cli/commands/harness.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harness.js","sourceRoot":"","sources":["../../../src/cli/commands/harness.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -141378,7 +141378,7 @@ function wrapCallerInjectedFunction(name, value, options, state) {
141378
141378
  hostOperationReplayHandlers.get(value)?.bind(void 0, hostArgs)
141379
141379
  );
141380
141380
  } catch (error3) {
141381
- if (isFatalBridgeError(error3)) {
141381
+ if (isFatalBridgeError(error3) || typeof error3 === "object" && error3 !== null && sandboxErrorTypes.has(error3)) {
141382
141382
  throw error3;
141383
141383
  }
141384
141384
  throw createHostErrorValue(error3, context?.stack ?? [], options.budget, context?.span);
@@ -149450,9 +149450,93 @@ var init_agent3 = __esm({
149450
149450
  });
149451
149451
 
149452
149452
  // packages/safejs/src/modules/env.ts
149453
+ function makeEnvModule(input) {
149454
+ const options = normalizeEnvOptions(Array.isArray(input) ? { allow: input } : input);
149455
+ const allowedNames = new Set(options.allow);
149456
+ const values = options.values ?? process.env;
149457
+ return {
149458
+ get(name) {
149459
+ const variable = readEnvName(name, "Environment variable name");
149460
+ if (!allowedNames.has(variable)) throw new EnvAccessError(variable);
149461
+ return readEnvValue(values, variable);
149462
+ }
149463
+ };
149464
+ }
149465
+ function parseEnvConfig(json) {
149466
+ return normalizeEnvOptions(JSON.parse(json));
149467
+ }
149468
+ function normalizeEnvOptions(input) {
149469
+ if (input === null || typeof input !== "object" || Array.isArray(input)) {
149470
+ throw new TypeError("Environment options must be an object.");
149471
+ }
149472
+ const fields = Object.getOwnPropertyDescriptors(input);
149473
+ for (const key3 of Reflect.ownKeys(fields)) {
149474
+ if (key3 !== "allow" && key3 !== "values") {
149475
+ throw new TypeError("Unknown environment option.");
149476
+ }
149477
+ if (!("value" in fields[key3])) {
149478
+ throw new TypeError("Environment options must not contain accessors.");
149479
+ }
149480
+ }
149481
+ const inputAllow = Object.getOwnPropertyDescriptor(input, "allow")?.value;
149482
+ if (!Array.isArray(inputAllow)) {
149483
+ throw new TypeError("Environment allow list must be an array of non-empty strings.");
149484
+ }
149485
+ const allow = [];
149486
+ for (let index = 0; index < inputAllow.length; index += 1) {
149487
+ const descriptor = Object.getOwnPropertyDescriptor(inputAllow, index);
149488
+ if (descriptor === void 0 || !("value" in descriptor)) {
149489
+ throw new TypeError("Environment allow list must contain only own data entries.");
149490
+ }
149491
+ allow.push(readEnvName(descriptor.value, `Environment allow list[${index}]`));
149492
+ }
149493
+ const inputValues = Object.getOwnPropertyDescriptor(input, "values")?.value;
149494
+ if (inputValues === void 0) return { allow };
149495
+ if (inputValues === null || typeof inputValues !== "object" || Array.isArray(inputValues)) {
149496
+ throw new TypeError("Environment values must be an object.");
149497
+ }
149498
+ return {
149499
+ allow,
149500
+ values: Object.fromEntries(allow.map((name) => [name, readEnvValue(inputValues, name)]))
149501
+ };
149502
+ }
149503
+ function readEnvValue(values, name) {
149504
+ const descriptor = Object.getOwnPropertyDescriptor(values, name);
149505
+ if (descriptor === void 0) return void 0;
149506
+ if (!("value" in descriptor)) {
149507
+ throw new TypeError(`Environment value for ${JSON.stringify(name)} must not be an accessor.`);
149508
+ }
149509
+ if (descriptor.value !== void 0 && typeof descriptor.value !== "string") {
149510
+ throw new TypeError(
149511
+ `Environment value for ${JSON.stringify(name)} must be a string or undefined.`
149512
+ );
149513
+ }
149514
+ return descriptor.value;
149515
+ }
149516
+ function readEnvName(value, label) {
149517
+ if (typeof value !== "string" || value.length === 0) {
149518
+ throw new TypeError(`${label} must be a non-empty string.`);
149519
+ }
149520
+ if (value.includes("\0") || value.includes("=")) {
149521
+ throw new TypeError(`${label} must not contain NUL or equals signs.`);
149522
+ }
149523
+ return value;
149524
+ }
149525
+ var EnvAccessError;
149453
149526
  var init_env = __esm({
149454
149527
  "packages/safejs/src/modules/env.ts"() {
149455
149528
  "use strict";
149529
+ init_shape();
149530
+ EnvAccessError = class extends Error {
149531
+ code = "ENV_ACCESS_DENIED";
149532
+ variable;
149533
+ constructor(variable) {
149534
+ super(`Environment access denied for ${JSON.stringify(variable)}.`);
149535
+ this.name = "EnvAccessError";
149536
+ this.variable = variable;
149537
+ hostErrorData.set(this, { code: this.code, variable });
149538
+ }
149539
+ };
149456
149540
  }
149457
149541
  });
149458
149542
 
@@ -152290,7 +152374,7 @@ function registerHarnessCommand(program, container) {
152290
152374
  harness.command("run").description("Run a harness pair.").argument("[md-paths...]", "Paths to harness .md files to run sequentially").option("--dir <path>", "Directory to search for harness pairs when no md-path is given.").option("--fix", "Apply supported lint fixes to the harness .ajs file before running.").option("--fs", "Give the harness a real filesystem module, confined to --fs-root.").option(
152291
152375
  "--fs-root <path>",
152292
152376
  "Directory --fs confines the harness to (default: the harness directory)."
152293
- ).option("--snapshot-path <path>", "File to write/read harness snapshots.").option("--mcp-config <path>", "Give the harness named MCP servers from a JSON config.").option("--resume", "Resume from the snapshot file when it exists.").option("--agent <name>", "Override the agent id from the harness frontmatter agent block.").option("--model <name>", "Override the model from the harness frontmatter agent block.").option(
152377
+ ).option("--snapshot-path <path>", "File to write/read harness snapshots.").option("--mcp-config <path>", "Give the harness named MCP servers from a JSON config.").option("--env-config <path>", "Grant environment reads from an explicit JSON config.").option("--resume", "Resume from the snapshot file when it exists.").option("--agent <name>", "Override the agent id from the harness frontmatter agent block.").option("--model <name>", "Override the model from the harness frontmatter agent block.").option(
152294
152378
  "--mode <mode>",
152295
152379
  "Override the mode from the harness frontmatter agent block (read|edit|auto|yolo)."
152296
152380
  ).option("-y, --yes", "Accept defaults without prompting.")
@@ -152311,6 +152395,13 @@ async function executeHarnessRun(program, container, mdPath, options) {
152311
152395
  const flags = resolveHarnessFlags(program, options.yes);
152312
152396
  const resources = createExecutionResources(container, flags, "harness:run");
152313
152397
  const fsOptions = resolveHarnessFsOptions(container, options);
152398
+ let envOptions;
152399
+ if (options.envConfig !== void 0) {
152400
+ if (options.envConfig.trim().length === 0)
152401
+ throw new ValidationError("--env-config needs a JSON file path.");
152402
+ const configPath = path186.resolve(container.env.cwd, options.envConfig);
152403
+ envOptions = parseEnvConfig(await container.fs.readFile(configPath, "utf8"));
152404
+ }
152314
152405
  let mcpOptions;
152315
152406
  if (options.mcpConfig !== void 0) {
152316
152407
  if (options.mcpConfig.trim().length === 0)
@@ -152384,7 +152475,8 @@ async function executeHarnessRun(program, container, mdPath, options) {
152384
152475
  reportedSpawnFailures.add(error3);
152385
152476
  },
152386
152477
  runFsOptions,
152387
- mcpOptions
152478
+ mcpOptions,
152479
+ envOptions
152388
152480
  ),
152389
152481
  onDiagnostics: (diagnostics) => {
152390
152482
  lintDiagnostics.push(...diagnostics);
@@ -152923,7 +153015,7 @@ function resolveHarnessFsOptions(container, options) {
152923
153015
  function resolveFsRoot(fsOptions, harnessDir) {
152924
153016
  return fsOptions.root ?? harnessDir;
152925
153017
  }
152926
- function createHarnessModules(container, logger2, frontmatter, meta, onSpawnFailure, fsOptions, mcpOptions) {
153018
+ function createHarnessModules(container, logger2, frontmatter, meta, onSpawnFailure, fsOptions, mcpOptions, envOptions) {
152927
153019
  const harnessMeta = {
152928
153020
  kind: meta.kind,
152929
153021
  version: meta.version,
@@ -152977,6 +153069,11 @@ function createHarnessModules(container, logger2, frontmatter, meta, onSpawnFail
152977
153069
  return {
152978
153070
  agent: toModuleExports(agent3),
152979
153071
  ...mcpOptions === void 0 ? {} : { mcp: toModuleExports(makeMcpModule(mcpOptions)) },
153072
+ ...envOptions === void 0 ? {} : {
153073
+ env: toModuleExports(
153074
+ makeEnvModule({ ...envOptions, values: envOptions.values ?? container.env.variables })
153075
+ )
153076
+ },
152980
153077
  fail: toModuleExports(/* @__PURE__ */ new Map([["default", fail3]])),
152981
153078
  ...fsOptions === void 0 ? {} : { fs: toModuleExports(makeFsModule({ root: resolveFsRoot(fsOptions, meta.dirname) })) },
152982
153079
  git: toModuleExports(git2),
@@ -155070,7 +155167,7 @@ var init_package2 = __esm({
155070
155167
  "package.json"() {
155071
155168
  package_default2 = {
155072
155169
  name: "poe-code",
155073
- version: "9.0.1",
155170
+ version: "10.0.0",
155074
155171
  description: "CLI tool to configure Poe API for developer workflows.",
155075
155172
  license: "MIT",
155076
155173
  type: "module",