@pome-sh/cli 0.21.14 → 0.21.15

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "package": "pome-sh",
3
- "version": "0.21.14",
4
- "git_sha": "a10831c796ed4f4dd26bf82f7b2dbc9db906a390",
5
- "build_time": "2026-08-07T23:35:58.555Z"
3
+ "version": "0.21.15",
4
+ "git_sha": "38acaf971b6be8d5cdffaa62a9e077dbc0e54ff7",
5
+ "build_time": "2026-08-08T01:16:03.754Z"
6
6
  }
@@ -183,7 +183,7 @@ async function checkTwinReachable(_configDir) {
183
183
  });
184
184
  let harness;
185
185
  try {
186
- const { bootTwin } = await import('./twinHarness-AHRNZB6Y.js');
186
+ const { bootTwin } = await import('./twinHarness-QGMYTU5N.js');
187
187
  harness = await bootTwin({
188
188
  twin: "github",
189
189
  seedState: void 0,
@@ -1,4 +1,4 @@
1
- import { oneOf, statePath, defineCheck, VACUITY_SENTINEL, childStatePath } from './chunk-NY55QTVQ.js';
1
+ import { oneOf, statePath, defineCheck, VACUITY_SENTINEL, childStatePath } from './chunk-JWJYNAWI.js';
2
2
 
3
3
  // ../packages/twin-slack/dist/src/check-params.js
4
4
  var channelName = {
@@ -177,7 +177,23 @@ var noReactionAdded = defineCheck({
177
177
  params: { reaction: emojiName, channel: channelName },
178
178
  substrate: "final",
179
179
  polarity: () => "negative",
180
- subject: () => null,
180
+ // The reaction name, because that is the literal this predicate compares
181
+ // against `reactions[].name` — the line below has said so since the check
182
+ // shipped, and this field said `null` anyway (F-1157).
183
+ //
184
+ // It is the sharpest case in the vocabulary for why that mattered. A NEGATIVE
185
+ // criterion asserting a scanned literal is absent reads a redactor's work as
186
+ // its own verdict: mask `reactions[].name` and the filter matches nothing, so
187
+ // `No "white_check_mark" reaction was added` passes — over an export where the
188
+ // agent added exactly that reaction. `probeRedactionSurvival` found it by
189
+ // destroying this literal in the FAILING world declared below and watching
190
+ // that world start to pass; it was the one `vacuous_pass` across all five
191
+ // twins' 45 declarations.
192
+ //
193
+ // Contrast `slack.no-message-posted` above, whose null is deliberate: its only
194
+ // literal RESOLVES a channel and the count it asserts on is derived. This one
195
+ // scans.
196
+ subject: ({ reaction }) => reaction,
181
197
  // The channel RESOLVES (a miss already skips); the reaction name is SCANNED.
182
198
  // D10: falsify the scanned one.
183
199
  vacuityMutant: (args) => ({ ...args, reaction: VACUITY_SENTINEL }),
@@ -4,7 +4,7 @@ var package_default = {
4
4
 
5
5
  // ../packages/twin-slack/package.json
6
6
  var package_default2 = {
7
- version: "0.3.5"};
7
+ version: "0.3.6"};
8
8
 
9
9
  // ../packages/twin-stripe/package.json
10
10
  var package_default3 = {
@@ -12,7 +12,7 @@ var package_default3 = {
12
12
 
13
13
  // ../packages/twin-gmail/package.json
14
14
  var package_default4 = {
15
- version: "0.3.5"};
15
+ version: "0.3.6"};
16
16
 
17
17
  // ../packages/twin-linear/package.json
18
18
  var package_default5 = {
@@ -59,9 +59,9 @@ var TWIN_REGISTRY = {
59
59
  envName: "SLACK",
60
60
  defaultPort: 3333,
61
61
  version: package_default2.version,
62
- defaultSeed: async () => (await import('./src-MX3THU4R.js')).defaultSeedState(),
62
+ defaultSeed: async () => (await import('./src-V5JLDT6T.js')).defaultSeedState(),
63
63
  async boot({ seedState, runId, recorder }) {
64
- const { createSlackTwinApp, openSlackTwinDatabase, SlackDomain } = await import('./src-MX3THU4R.js');
64
+ const { createSlackTwinApp, openSlackTwinDatabase, SlackDomain } = await import('./src-V5JLDT6T.js');
65
65
  const db = openSlackTwinDatabase(":memory:");
66
66
  const domain = new SlackDomain(db);
67
67
  domain.applySeed(seedState);
@@ -128,9 +128,9 @@ var TWIN_REGISTRY = {
128
128
  portEnvName: "GMAIL_TWIN_PORT",
129
129
  tokenEnvName: "POME_GMAIL_TOKEN",
130
130
  version: package_default4.version,
131
- defaultSeed: async () => (await import('./src-WS5PCGRC.js')).defaultSeedState(),
131
+ defaultSeed: async () => (await import('./src-PUE6CMDF.js')).defaultSeedState(),
132
132
  async boot({ seedState, runId, recorder }) {
133
- const { createGmailTwinApp, GmailDomain, openGmailTwinDatabase, parseSeed } = await import('./src-WS5PCGRC.js');
133
+ const { createGmailTwinApp, GmailDomain, openGmailTwinDatabase, parseSeed } = await import('./src-PUE6CMDF.js');
134
134
  const db = openGmailTwinDatabase(":memory:");
135
135
  const seed = parseSeed(seedState);
136
136
  const domain = new GmailDomain(db);
@@ -149,7 +149,7 @@ var TWIN_REGISTRY = {
149
149
  portEnvName: "LINEAR_TWIN_PORT",
150
150
  tokenEnvName: "POME_LINEAR_TOKEN",
151
151
  version: package_default5.version,
152
- defaultSeed: async () => (await import('./src-EAA6L4CV.js')).defaultSeedState(),
152
+ defaultSeed: async () => (await import('./src-ECRGORXR.js')).defaultSeedState(),
153
153
  async boot({ seedState, runId, recorder }) {
154
154
  const {
155
155
  createLinearTwinApp,
@@ -157,7 +157,7 @@ var TWIN_REGISTRY = {
157
157
  LinearDomain,
158
158
  openLinearTwinDatabase,
159
159
  parseSeed
160
- } = await import('./src-EAA6L4CV.js');
160
+ } = await import('./src-ECRGORXR.js');
161
161
  const db = openLinearTwinDatabase(":memory:");
162
162
  const seed = parseSeed(seedState);
163
163
  const domain = new LinearDomain(db);
@@ -1,7 +1,7 @@
1
1
  import { getAvailablePort } from './chunk-XDU6TD4O.js';
2
2
  import { buildEgressAllowlist, readBlockedEgress } from './chunk-CBFKZZBR.js';
3
- import { parseTaskFile, seedStateForTwin, runAgentCommand, writeRunArtifactsCore } from './chunk-LKN7DYCG.js';
4
- import { createRecorder, bootTwin } from './chunk-TIY2TZAD.js';
3
+ import { parseTaskFile, seedStateForTwin, runAgentCommand, writeRunArtifactsCore } from './chunk-OQWXMHRG.js';
4
+ import { createRecorder, bootTwin } from './chunk-IYDTDANH.js';
5
5
  import { eventSchema } from './chunk-VBATFCWR.js';
6
6
  import { redactSecrets, redactEvent } from './chunk-SG6ZTIMT.js';
7
7
  import { serve } from '@hono/node-server';
@@ -1,5 +1,5 @@
1
1
  import { readManifest, normalizeManifestTwins } from './chunk-KUVTL4NZ.js';
2
- import { createHostedClient, perTwinReturnedByCloud, parseTaskFile, runAgentCommand, writeRunArtifactsCore, toTwinHttpEvent, redactJsonl, uploadRunBlobs, scoreFromFinalizeResponse, scoreStatus } from './chunk-LKN7DYCG.js';
2
+ import { createHostedClient, perTwinReturnedByCloud, parseTaskFile, runAgentCommand, writeRunArtifactsCore, toTwinHttpEvent, redactJsonl, uploadRunBlobs, scoreFromFinalizeResponse, scoreStatus } from './chunk-OQWXMHRG.js';
3
3
  import { MOUNTED_TWINS, HostedAuthError, HostedDiscardRefusedError, HostedQuotaError, HostedOrchError, HostedTrialError, agentResponseSchema } from './chunk-PQYIAA6K.js';
4
4
  import { redactSecrets, redactEvent } from './chunk-SG6ZTIMT.js';
5
5
  import { existsSync } from 'node:fs';
@@ -1,4 +1,4 @@
1
- import { TWIN_NAMES, isTwinName, TWIN_REGISTRY } from './chunk-BTDWCUMP.js';
1
+ import { TWIN_NAMES, isTwinName, TWIN_REGISTRY } from './chunk-BA4N7AOZ.js';
2
2
  import { createFileBackedRecorderStore, createRecorderStore } from './chunk-TV5S6WQV.js';
3
3
 
4
4
  // src/recorder/recorder.ts
@@ -13,6 +13,12 @@ function childStatePath(base, ...segments) {
13
13
  return `${base}${statePath(...segments)}`;
14
14
  }
15
15
 
16
+ // ../packages/sdk/dist/check-redaction.js
17
+ var REDACTION_PLACEHOLDER = "[REDACTED]";
18
+ function isRedacted(value) {
19
+ return value === REDACTION_PLACEHOLDER;
20
+ }
21
+
16
22
  // ../packages/sdk/dist/checks.js
17
23
  var VACUITY_SENTINEL = "pome-vacuity-never";
18
24
  var VACUITY_SENTINEL_NUMBER = 987654321;
@@ -117,4 +123,4 @@ function checkNearMissPattern(def) {
117
123
  return buildPattern(def.template, () => ".+?");
118
124
  }
119
125
 
120
- export { VACUITY_SENTINEL, VACUITY_SENTINEL_NUMBER, checkNearMissPattern, checkPattern, checksDigest, childStatePath, defineCheck, oneOf, renderCheck, repoRef, statePath, templateSlots };
126
+ export { VACUITY_SENTINEL, VACUITY_SENTINEL_NUMBER, checkNearMissPattern, checkPattern, checksDigest, childStatePath, defineCheck, isRedacted, oneOf, renderCheck, repoRef, statePath, templateSlots };
@@ -2,7 +2,7 @@ import { criterionSchema, finalizeResponseSchema, HostedDiscardRefusedError, Hos
2
2
  import { seedSchema, parseSeed, defaultSeedState as defaultSeedState$2 } from './chunk-SGDUD7KK.js';
3
3
  import { gmailSeedSchema, defaultSeedState } from './chunk-NJ246QPJ.js';
4
4
  import { linearSeedSchema, defaultSeedState as defaultSeedState$1 } from './chunk-ZKID2HS3.js';
5
- import { isTwinName, TWIN_REGISTRY } from './chunk-BTDWCUMP.js';
5
+ import { isTwinName, TWIN_REGISTRY } from './chunk-BA4N7AOZ.js';
6
6
  import { toTwinHttpEventRow } from './chunk-TV5S6WQV.js';
7
7
  import { redactEvent, redactSecrets } from './chunk-SG6ZTIMT.js';
8
8
  import { mkdir, appendFile, writeFile, readFile } from 'node:fs/promises';
@@ -1,4 +1,4 @@
1
- import { statePath, defineCheck, VACUITY_SENTINEL, childStatePath, VACUITY_SENTINEL_NUMBER } from './chunk-NY55QTVQ.js';
1
+ import { statePath, defineCheck, VACUITY_SENTINEL, childStatePath, VACUITY_SENTINEL_NUMBER, isRedacted } from './chunk-JWJYNAWI.js';
2
2
 
3
3
  // ../packages/twin-gmail/dist/src/check-params.js
4
4
  var messageId = {
@@ -436,7 +436,12 @@ var mailboxLabelCount = defineCheck({
436
436
  return { passed: false, status: "skipped", reason: "collection_truncated" };
437
437
  }
438
438
  if (final.mailboxes != null && !final.mailboxes.some((mb) => (mb.email ?? "").toLowerCase() === mailbox.toLowerCase())) {
439
- return { passed: false, status: "skipped", reason: `mailbox_not_found ("${mailbox}")` };
439
+ const eaten = final.mailboxes.some((mb) => isRedacted(mb.email));
440
+ return {
441
+ passed: false,
442
+ status: "skipped",
443
+ reason: eaten ? `mailbox_redacted ("${mailbox}")` : `mailbox_not_found ("${mailbox}")`
444
+ };
440
445
  }
441
446
  const ids = labelIdsFor(final, label);
442
447
  const labeled = new Set(final.messageLabels.filter((row) => ids.has((row.labelId ?? "").toLowerCase())).map((row) => (row.messageId ?? "").toLowerCase()));
@@ -1,4 +1,4 @@
1
- import { statePath, defineCheck, VACUITY_SENTINEL, VACUITY_SENTINEL_NUMBER, childStatePath } from './chunk-NY55QTVQ.js';
1
+ import { statePath, defineCheck, VACUITY_SENTINEL, VACUITY_SENTINEL_NUMBER, childStatePath } from './chunk-JWJYNAWI.js';
2
2
 
3
3
  // ../packages/twin-linear/dist/src/check-params.js
4
4
  var issueTitle = {
@@ -1,16 +1,16 @@
1
1
  import { newGroupId, reassuranceBox, twinReadyLine, trialsHeaderLine, trialLine, summaryLines, evaluatingLine, criterionPhrase } from './chunk-RGZBC7NF.js';
2
2
  import { DemoCapacityError, capacityLabel, parseCapacityMarker, capacityKindFrom } from './chunk-ZX4WNSZ5.js';
3
- import { runTask, demoTaskPath, DEMO_TASK_NAME, DEMO_REPO } from './chunk-DSQNW2ZT.js';
3
+ import { runTask, demoTaskPath, DEMO_TASK_NAME, DEMO_REPO } from './chunk-F4RV373I.js';
4
4
  import { getAvailablePort } from './chunk-XDU6TD4O.js';
5
5
  import './chunk-CBFKZZBR.js';
6
- import { createHostedClient, parseTaskFile, uploadRunBlobs, scoreFromFinalizeResponse, scoreStatus, outcomeOf } from './chunk-LKN7DYCG.js';
6
+ import { createHostedClient, parseTaskFile, uploadRunBlobs, scoreFromFinalizeResponse, scoreStatus, outcomeOf } from './chunk-OQWXMHRG.js';
7
7
  import './chunk-NW7HGA2K.js';
8
8
  import { HostedQuotaError, HostedOrchError } from './chunk-PQYIAA6K.js';
9
9
  import './chunk-SGDUD7KK.js';
10
10
  import './chunk-NJ246QPJ.js';
11
11
  import './chunk-ZKID2HS3.js';
12
- import { bootTwin } from './chunk-TIY2TZAD.js';
13
- import './chunk-BTDWCUMP.js';
12
+ import { bootTwin } from './chunk-IYDTDANH.js';
13
+ import './chunk-BA4N7AOZ.js';
14
14
  import './chunk-TV5S6WQV.js';
15
15
  import './chunk-VBATFCWR.js';
16
16
  import './chunk-SG6ZTIMT.js';
@@ -1,13 +1,13 @@
1
1
  import { newGroupId, criterionPhrase } from './chunk-RGZBC7NF.js';
2
- import { runTaskHosted, resolveRunAgentIdentity } from './chunk-P6RAEIIU.js';
2
+ import { runTaskHosted, resolveRunAgentIdentity } from './chunk-GDZ6Z3B2.js';
3
3
  import './chunk-KUVTL4NZ.js';
4
- import { createHostedClient, parseTaskFile, outcomeOf } from './chunk-LKN7DYCG.js';
4
+ import { createHostedClient, parseTaskFile, outcomeOf } from './chunk-OQWXMHRG.js';
5
5
  import './chunk-NW7HGA2K.js';
6
6
  import { HostedQuotaError, HostedTrialError } from './chunk-PQYIAA6K.js';
7
7
  import './chunk-SGDUD7KK.js';
8
8
  import './chunk-NJ246QPJ.js';
9
9
  import './chunk-ZKID2HS3.js';
10
- import './chunk-BTDWCUMP.js';
10
+ import './chunk-BA4N7AOZ.js';
11
11
  import './chunk-TV5S6WQV.js';
12
12
  import './chunk-VBATFCWR.js';
13
13
  import './chunk-SG6ZTIMT.js';
@@ -1,22 +1,22 @@
1
1
  #!/usr/bin/env node
2
- import { DEFAULT_CONTROL_PLANE_URL, DEFAULT_DASHBOARD_URL, clearLocalCredentials, friendlyHostedError, runSessionCreate, runSessionList, runSessionStop, resolveCredentials, runTaskHosted, discoverRunSet, loadTrialEvents, persistCredentialsAfterLogin, DEFAULT_DOCS_SITE_ORIGIN, resolveSeams, resolveCachedAgentId, readLinkCache, postAgentResolver, writeLinkCache, ensurePomeGitignored } from '../../chunk-P6RAEIIU.js';
2
+ import { DEFAULT_CONTROL_PLANE_URL, DEFAULT_DASHBOARD_URL, clearLocalCredentials, friendlyHostedError, runSessionCreate, runSessionList, runSessionStop, resolveCredentials, runTaskHosted, discoverRunSet, loadTrialEvents, persistCredentialsAfterLogin, DEFAULT_DOCS_SITE_ORIGIN, resolveSeams, resolveCachedAgentId, readLinkCache, postAgentResolver, writeLinkCache, ensurePomeGitignored } from '../../chunk-GDZ6Z3B2.js';
3
3
  import { readManifest, writeManifest, MANIFEST_JSON, readRequiredManifest, normalizeManifestTwins } from '../../chunk-KUVTL4NZ.js';
4
- import { assetPath, runTask, resolvePackageRoot, DEMO_TASK_NAME, demoTaskPath } from '../../chunk-DSQNW2ZT.js';
4
+ import { assetPath, runTask, resolvePackageRoot, DEMO_TASK_NAME, demoTaskPath } from '../../chunk-F4RV373I.js';
5
5
  import '../../chunk-XDU6TD4O.js';
6
6
  import '../../chunk-CBFKZZBR.js';
7
- import { parseTaskFile, scoreStatus, runScoreLine, readLatestRun, readMetaSummary, readConfigTwins, scoreCountsSummary, markerFor, outcomeOf, criterionMarkerLabel, twinSkipSuffix, readCodeCriteria, createHostedClient, toTwinHttpEvent, redactJsonl, scoreFromFinalizeResponse, parseGitHubSeedState, uploadRunBlobs } from '../../chunk-LKN7DYCG.js';
7
+ import { parseTaskFile, scoreStatus, runScoreLine, readLatestRun, readMetaSummary, readConfigTwins, scoreCountsSummary, markerFor, outcomeOf, criterionMarkerLabel, twinSkipSuffix, readCodeCriteria, createHostedClient, toTwinHttpEvent, redactJsonl, scoreFromFinalizeResponse, parseGitHubSeedState, uploadRunBlobs } from '../../chunk-OQWXMHRG.js';
8
8
  import '../../chunk-NW7HGA2K.js';
9
9
  import { MOUNTED_TWINS, deriveAgentSlug, exitCodeFor, HostedUsageError, HostedOrchError, HostedAuthError, HostedQuotaError } from '../../chunk-PQYIAA6K.js';
10
10
  import { TAPE_ASSERTABLE_TOOLS } from '../../chunk-FKZZWWYC.js';
11
11
  import { seedSchema } from '../../chunk-SGDUD7KK.js';
12
- import { SLACK_CHECKS } from '../../chunk-LH4EGGQW.js';
13
- import { GMAIL_CHECKS } from '../../chunk-EU6SGN7A.js';
12
+ import { SLACK_CHECKS } from '../../chunk-6OT4IW25.js';
13
+ import { GMAIL_CHECKS } from '../../chunk-SE44FKWH.js';
14
14
  import '../../chunk-NJ246QPJ.js';
15
- import { LINEAR_CHECKS } from '../../chunk-3QVSXFJI.js';
15
+ import { LINEAR_CHECKS } from '../../chunk-XBT6ZLBG.js';
16
16
  import '../../chunk-ZKID2HS3.js';
17
- import { oneOf, defineCheck, repoRef, VACUITY_SENTINEL_NUMBER, childStatePath, VACUITY_SENTINEL, statePath, templateSlots, renderCheck, checksDigest, checkPattern, checkNearMissPattern } from '../../chunk-NY55QTVQ.js';
18
- import '../../chunk-TIY2TZAD.js';
19
- import { TWIN_NAME_LIST, isTwinName, createGitHubSmokeApp } from '../../chunk-BTDWCUMP.js';
17
+ import { oneOf, defineCheck, repoRef, VACUITY_SENTINEL_NUMBER, childStatePath, VACUITY_SENTINEL, statePath, templateSlots, renderCheck, checksDigest, checkPattern, checkNearMissPattern } from '../../chunk-JWJYNAWI.js';
18
+ import '../../chunk-IYDTDANH.js';
19
+ import { TWIN_NAME_LIST, isTwinName, createGitHubSmokeApp } from '../../chunk-BA4N7AOZ.js';
20
20
  import '../../chunk-TV5S6WQV.js';
21
21
  import { isLegacyEventRow, eventSchema } from '../../chunk-VBATFCWR.js';
22
22
  import { redactEvent, redactSecrets } from '../../chunk-SG6ZTIMT.js';
@@ -4490,7 +4490,7 @@ var DEFAULT_AGENT_FILE = "examples/agents/scripted-triage-agent.ts";
4490
4490
  var DEFAULT_AGENT_COMMAND = `node ${DEFAULT_AGENT_FILE}`;
4491
4491
  var MANIFEST_SCHEMA_URL = "https://pome.sh/schemas/v1/pome.json";
4492
4492
  function readPackageVersion() {
4493
- if ("0.21.14".length > 0) return "0.21.14";
4493
+ if ("0.21.15".length > 0) return "0.21.15";
4494
4494
  try {
4495
4495
  const here = dirname(fileURLToPath(import.meta.url));
4496
4496
  const candidates = [
@@ -4945,7 +4945,7 @@ function createProgram() {
4945
4945
  return;
4946
4946
  }
4947
4947
  {
4948
- const { runDoctorChecks } = await import('../../checks-6E6OKTHQ.js');
4948
+ const { runDoctorChecks } = await import('../../checks-OFV75GDL.js');
4949
4949
  const { renderDoctorReport } = await import('../../render-ZQQ4UMNO.js');
4950
4950
  const doctorReport = await runDoctorChecks({ mode: useLocal ? "full" : "hosted" });
4951
4951
  if (!doctorReport.ok) {
@@ -4983,7 +4983,7 @@ function createProgram() {
4983
4983
  taskForRuns.config.runs
4984
4984
  );
4985
4985
  if (k > 1) {
4986
- const { runTrialGroup } = await import('../../runTrialGroup-JHZ4LPKF.js');
4986
+ const { runTrialGroup } = await import('../../runTrialGroup-WEBKLT7T.js');
4987
4987
  const fileForRerun = relative(process.cwd(), file);
4988
4988
  const rerunCommand = defaultTask ? options.trials !== void 0 ? `pome run -n ${k}` : "pome run" : `pome run ${fileForRerun && !fileForRerun.startsWith("..") ? fileForRerun : file} -n ${k}`;
4989
4989
  const groupResult = await runTrialGroup({
@@ -5077,7 +5077,7 @@ function createProgram() {
5077
5077
  process.exitCode = 5;
5078
5078
  return;
5079
5079
  }
5080
- const { runDemo } = await import('../../runDemo-JPIZBQ2W.js');
5080
+ const { runDemo } = await import('../../runDemo-ELZN7OT2.js');
5081
5081
  const result = await runDemo({
5082
5082
  apiBase: opts.apiUrl.replace(/\/$/, ""),
5083
5083
  dashboardBase: process.env.POME_DASHBOARD_URL ?? DEFAULT_DASHBOARD_URL,
@@ -5095,7 +5095,7 @@ function createProgram() {
5095
5095
  program.command("doctor").description(
5096
5096
  "Check the agent\u2194twin wiring: pome.json (or pome.yaml) present + valid, the local twin boots + serves, requests routed to the twin (not a hardcoded production host), egress floor active. On failure prints one named cause (file:line where knowable) + one concrete fix and exits non-zero."
5097
5097
  ).action(async () => {
5098
- const { runDoctorChecks } = await import('../../checks-6E6OKTHQ.js');
5098
+ const { runDoctorChecks } = await import('../../checks-OFV75GDL.js');
5099
5099
  const { renderDoctorReport } = await import('../../render-ZQQ4UMNO.js');
5100
5100
  const report = await runDoctorChecks();
5101
5101
  for (const line of renderDoctorReport(report, { passNote: true })) console.error(line);
@@ -5227,7 +5227,7 @@ function createProgram() {
5227
5227
  ).description(
5228
5228
  "Start a standalone twin as a long-lived foreground server (Ctrl-C to stop)"
5229
5229
  ).action(async (name, options) => {
5230
- const { runTwinStartCommand } = await import('../../twinStart-4EYV577J.js');
5230
+ const { runTwinStartCommand } = await import('../../twinStart-36ZSLZE7.js');
5231
5231
  await runTwinStartCommand(name, options);
5232
5232
  });
5233
5233
  twin.command("reset").argument("[name]", "Twin name (default: github)", "github").description("Reset standalone twin state").action(async (name) => {
@@ -1,7 +1,7 @@
1
- export { LINEAR_CHECKS } from './chunk-3QVSXFJI.js';
1
+ export { LINEAR_CHECKS } from './chunk-XBT6ZLBG.js';
2
2
  import { MCP_PAGE_MAX, defaultSeedState, linearSeedSchema, notFound, badUserInput, MCP_PAGE_DEFAULT, DEFAULT_LINEAR_EMAIL, RELAY_PAGE_MAX, RELAY_PAGE_DEFAULT, STATE_EXPORT_CAP, parseSeed, DEFAULT_LINEAR_CLOCK, LINEAR_PROVIDER_TOKEN_PREFIX, DEFAULT_LINEAR_SID, DEFAULT_SCOPES, linearErrorEnvelope, unauthorizedEnvelope, unsupportedEnvelope, assertWebhookUrl, ACCESS_TOKEN_TTL_SECONDS, OAUTH_CODE_TTL_SECONDS, TITLE_MAX_BYTES, BODY_MAX_BYTES, LinearTwinError, GRAPHQL_QUERY_MAX_BYTES, GRAPHQL_SELECTION_DEPTH_MAX } from './chunk-ZKID2HS3.js';
3
3
  export { DEFAULT_LINEAR_CLOCK, DEFAULT_LINEAR_EMAIL, DEFAULT_LINEAR_PORT, DEFAULT_LINEAR_SID, DEFAULT_LINEAR_TOKEN, LINEAR_PROVIDER_TOKEN_PREFIX, LinearTwinError, STATE_EXPORT_CAP, assertWebhookUrl, defaultSeedState, linearErrorEnvelope, linearSeedSchema, loadSeedFromEnv, parseSeed, unauthorizedEnvelope, unsupportedEnvelope, webhookUrlError } from './chunk-ZKID2HS3.js';
4
- import './chunk-NY55QTVQ.js';
4
+ import './chunk-JWJYNAWI.js';
5
5
  import { declareRouteInputs, mountDeclaredRoute, UndeclaredInputError } from './chunk-4MQULI7E.js';
6
6
  import { loadMcpToolFixture, deriveMcpToolTable, openTwinDatabase, defineTwin, createApp } from './chunk-TV5S6WQV.js';
7
7
  import './chunk-VBATFCWR.js';
@@ -1,7 +1,7 @@
1
- export { GMAIL_CHECKS } from './chunk-EU6SGN7A.js';
1
+ export { GMAIL_CHECKS } from './chunk-SE44FKWH.js';
2
2
  import { gmailErrorEnvelope, gmailSeedSchema, parseSeed, defaultSeedState, notFound, invalidArgument, checkFault, unsupported, validateSearchQuery, SEARCH_MAILBOX_MESSAGE_BUDGET, GmailError, parseSearchQuery, CATEGORY_LABELS, parseDate, parseSize, KNOWN_FIELDS, parseDuration, assertHasOperator } from './chunk-NJ246QPJ.js';
3
3
  export { DEFAULT_GMAIL_AGENT_EMAIL, GmailError, SEARCH_MAILBOX_MESSAGE_BUDGET, agentPathInboxMailbox, defaultSeedState, gmailErrorEnvelope, gmailSeedSchema, loadSeedFromEnv, parseSearchQuery, parseSeed, validateSearchQuery } from './chunk-NJ246QPJ.js';
4
- import './chunk-NY55QTVQ.js';
4
+ import './chunk-JWJYNAWI.js';
5
5
  import { integerInput, booleanInput, repeatedInput, declareRouteInputs, mountDeclaredRoute, UndeclaredInputError, MalformedBodyError } from './chunk-4MQULI7E.js';
6
6
  import { loadMcpToolFixture, deriveMcpToolTable, defineTwin, openTwinDatabase, createApp } from './chunk-TV5S6WQV.js';
7
7
  import './chunk-VBATFCWR.js';
@@ -1,5 +1,5 @@
1
- export { SLACK_CHECKS } from './chunk-LH4EGGQW.js';
2
- import './chunk-NY55QTVQ.js';
1
+ export { SLACK_CHECKS } from './chunk-6OT4IW25.js';
2
+ import './chunk-JWJYNAWI.js';
3
3
  import { declareRouteInputs, booleanInput, integerInput, mountDeclaredRoute, UndeclaredInputError } from './chunk-4MQULI7E.js';
4
4
  import { loadMcpToolFixture, defineTwin, queryTokenResolver, formTokenResolver, deriveMcpToolTable, UnknownToolError, openTwinDatabase, createApp } from './chunk-TV5S6WQV.js';
5
5
  import './chunk-VBATFCWR.js';
@@ -0,0 +1,5 @@
1
+ export { UnsupportedTwinError, bootTwin } from './chunk-IYDTDANH.js';
2
+ export { STRIPE_LOCAL_ACCOUNT_ID } from './chunk-BA4N7AOZ.js';
3
+ import './chunk-TV5S6WQV.js';
4
+ import './chunk-VBATFCWR.js';
5
+ import './chunk-SG6ZTIMT.js';
@@ -1,5 +1,5 @@
1
- import { bootTwin } from './chunk-TIY2TZAD.js';
2
- import { isTwinName, TWIN_NAMES, defaultPortFor, TWIN_REGISTRY } from './chunk-BTDWCUMP.js';
1
+ import { bootTwin } from './chunk-IYDTDANH.js';
2
+ import { isTwinName, TWIN_NAMES, defaultPortFor, TWIN_REGISTRY } from './chunk-BA4N7AOZ.js';
3
3
  import './chunk-TV5S6WQV.js';
4
4
  import './chunk-VBATFCWR.js';
5
5
  import './chunk-SG6ZTIMT.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pome-sh/cli",
3
- "version": "0.21.14",
3
+ "version": "0.21.15",
4
4
  "description": "Digital-twin testing for AI agents \u2014 run tasks against resettable local or hosted twins and record tool-call traces for evaluation on pome.sh.",
5
5
  "keywords": [
6
6
  "ai",
@@ -1,5 +0,0 @@
1
- export { UnsupportedTwinError, bootTwin } from './chunk-TIY2TZAD.js';
2
- export { STRIPE_LOCAL_ACCOUNT_ID } from './chunk-BTDWCUMP.js';
3
- import './chunk-TV5S6WQV.js';
4
- import './chunk-VBATFCWR.js';
5
- import './chunk-SG6ZTIMT.js';