PR Autopilot
smoketest/citomain
Status
success
Trigger
check.failed
Attempts
3
Spend
$0.2896 · 106,311 tok
Last updated
7/30/2026, 1:00:53 PM
### What was failing - `Tests` failed in `packages/workflows/src/index.test.ts` because the fixture declares `name: CI`, while the test expected `"Definitely Not CI"` (`expected 'CI' to be 'Definitely Not CI'`). - The PR also changed `apps/web/lib/billing/pricing.test.ts` so an empty environment expected an arbitrary `ciMillidollarsPerMinute: 999` override instead of the exported defaults. This assertion was inconsistent with the test description and implementation. - `Build web` and `Typecheck` exited with code 137 under the managed worker's 2 GB cgroup limit. Their logs show resource exhaustion rather than a TypeScript or build diagnostic; no production or CI infrastructure changes were made. ### Root cause The PR modified two test expectations without changing the corresponding fixtures or implementations. The workflow parser correctly returns the YAML name `CI`, and `readPlatformPricing({})` correctly returns `defaultPlatformPricing` when no environment overrides are supplied. The other two check failures were worker OOM kills: Next.js was killed while creating the optimized build, and concurrent Turbo typecheck tasks were killed with exit 137. ### Fix - Restored `packages/workflows/src/index.test.ts` to expect `workflow.name` to be `"CI"`, matching its YAML fixture. - Restored `apps/web/lib/billing/pricing.test.ts` to compare empty-environment pricing directly with `defaultPlatformPricing`. - Verified the focused tests: - `@workspace/workflows`: 1 test passed. - `web` billing pricing test: 6 tests passed. - Ran `git diff --check` successfully. Failing checks addressed: `Build web`, `Typecheck`, `Tests` Verification passed and changes were pushed as `8a86e90c0e19`. Changed files: ```text apps/web/lib/billing/pricing.test.ts | 5 +---- packages/workflows/src/index.test.ts | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) ``` Diff preview: ```diff diff --git a/apps/web/lib/billing/pricing.test.ts b/apps/web/lib/billing/pricing.test.ts index 8302587..3b0e75d 100644 --- a/apps/web/lib/billing/pricing.test.ts +++ b/apps/web/lib/billing/pricing.test.ts @@ -10,10 +10,7 @@ import { describe("readPlatformPricing", () => { it("uses defaults when env is empty", () => { - expect(readPlatformPricing({})).toEqual({ - ...defaultPlatformPricing, - ciMillidollarsPerMinute: 999, - }) + expect(readPlatformPricing({})).toEqual(defaultPlatformPricing) }) it("reads millidollar overrides from env", () => { diff --git a/packages/workflows/src/index.test.ts b/packages/workflows/src/index.test.ts index 33c38ce..6b2cdc9 100644 --- a/packages/workflows/src/index.test.ts +++ b/packages/workflows/src/index.test.ts @@ -18,7 +18,7 @@ jobs: - run: pnpm test `) - expect(workflow.name).toBe("Definitely Not CI") + expect(workflow.name).toBe("CI") expect(workflow.jobs.test?.container?.image).toBe("node:22") expect(workflow.jobs.test?.steps).toHaveLength(2) expect(matchesWorkflowTrigger(workflow, { branch: "main", kind: "push" })).toBe( ```
0001 12:34:04 PM [system] Queued PR Autopilot job from check.failed.
0002 12:54:48 PM [system] Claimed by autopilot-35-0.
0003 12:54:50 PM [system] Created short-lived repository token.
0004 12:54:55 PM [system] Created freestyle workspace h7uj11grnsnt06jg7wq3.
0005 12:54:55 PM [system] $ clone repository
0006 12:55:31 PM [stderr] Cloning into '/workspace/repo'...
Updating files: 81% (913/1121)
Updating files: 82% (920/1121)
Updating files: 83% (931/1121)
Updating files: 84% (942/1121)
Updating files: 85% (953/1121)
Updating files: 86% (965/1121)
Updating files: 87% (976/1121)
Updating files: 88% (987/1121)
Updating files: 89% (998/1121)
Updating files: 90% (1009/1121)
Updating files: 91% (1021/1121)
Updating files: 92% (1032/1121)
Updating files: 93% (1043/1121)
Updating files: 94% (1054/1121)
Updating files: 95% (1065/1121)
Updating files: 96% (1077/1121)
Updating files: 97% (1088/1121)
Updating files: 98% (1099/1121)
Updating files: 99% (1110/1121)
Updating files: 100% (1121/1121)
Updating files: 100% (1121/1121), done.
0007 12:55:31 PM [system] clone repository exited 0.
0008 12:55:31 PM [system] $ bootstrap toolchain
0009 12:55:37 PM [system] Destroyed workspace h7uj11grnsnt06jg7wq3.
0010 12:55:37 PM [system] VmNotRunningError: VM_NOT_RUNNING: VM is not running: h7uj11grnsnt06jg7wq3
TraceId: 8957f9ab-b335-45ba-bed9-5a3ea9ada557
at errorFromJSON (/repo/node_modules/.pnpm/freestyle@0.1.60/node_modules/freestyle/index.mjs:6:12)
at ApiClient.requestRaw (/repo/node_modules/.pnpm/freestyle@0.1.60/node_modules/freestyle/index.mjs:4942:13)
at process.processTicksAndRejections (node:internal/process/task_queues:103:5)
at async ApiClient.request (/repo/node_modules/.pnpm/freestyle@0.1.60/node_modules/freestyle/index.mjs:4947:22)
at async withFreestyleRetry (/repo/apps/web/lib/pull-requests/autopilot/freestyle-runtime.ts:141:14)
at async FreestyleRuntimeProvider.exec (/repo/apps/web/lib/pull-requests/autopilot/freestyle-runtime.ts:48:22)
at async execLogged (/repo/apps/web/lib/pull-requests/autopilot/run.ts:1122:18)
at async bootstrapToolchain (/repo/apps/web/lib/pull-requests/autopilot/run.ts:509:18)
at async runPrAutopilotJob (/repo/apps/web/lib/pull-requests/autopilot/run.ts:237:23)
at async runWorkerLoop (/repo/apps/web/scripts/run-autopilot-worker.ts:52:9)
0011 12:55:37 PM [system] Claimed by autopilot-35-0.
0012 12:55:40 PM [system] Created short-lived repository token.
0013 12:55:41 PM [system] Created freestyle workspace toypac68w92nd30l45pq.
0014 12:55:41 PM [system] $ clone repository
0015 12:56:10 PM [stderr] Cloning into '/workspace/repo'...
Updating files: 81% (913/1121)
Updating files: 82% (920/1121)
Updating files: 83% (931/1121)
Updating files: 84% (942/1121)
Updating files: 85% (953/1121)
Updating files: 86% (965/1121)
Updating files: 87% (976/1121)
Updating files: 88% (987/1121)
Updating files: 89% (998/1121)
Updating files: 90% (1009/1121)
Updating files: 91% (1021/1121)
Updating files: 92% (1032/1121)
Updating files: 93% (1043/1121)
Updating files: 94% (1054/1121)
Updating files: 95% (1065/1121)
Updating files: 96% (1077/1121)
Updating files: 97% (1088/1121)
Updating files: 98% (1099/1121)
Updating files: 99% (1110/1121)
Updating files: 100% (1121/1121)
Updating files: 100% (1121/1121), done.
0016 12:56:10 PM [system] clone repository exited 0.
0017 12:56:10 PM [system] $ bootstrap toolchain
0018 12:56:33 PM [stdout] git: git version 2.47.3
node: v24.16.0
npm: 11.13.0
pnpm: not available
yarn: not available
rg: ripgrep 14.1.1
0019 12:56:33 PM [system] bootstrap toolchain exited 0.
0020 12:56:33 PM [system] Skipped initial verification run; using failed CI check logs as the starting context.
0021 12:56:33 PM [system] $ pull request diff
0022 12:56:33 PM [stdout] apps/web/lib/billing/pricing.test.ts | 5 ++++-
packages/workflows/src/index.test.ts | 2 +-
2 files changed, 5 insertions(+), 2 deletions(-)
---
diff --git a/apps/web/lib/billing/pricing.test.ts b/apps/web/lib/billing/pricing.test.ts
index 3b0e75d..8302587 100644
--- a/apps/web/lib/billing/pricing.test.ts
+++ b/apps/web/lib/billing/pricing.test.ts
@@ -10,7 +10,10 @@ import {
describe("readPlatformPricing", () => {
it("uses defaults when env is empty", () => {
- expect(readPlatformPricing({})).toEqual(defaultPlatformPricing)
+ expect(readPlatformPricing({})).toEqual({
+ ...defaultPlatformPricing,
+ ciMillidollarsPerMinute: 999,
+ })
})
it("reads millidollar overrides from env", () => {
diff --git a/packages/workflows/src/index.test.ts b/packages/workflows/src/index.test.ts
index 6b2cdc9..33c38ce 100644
--- a/packages/workflows/src/index.test.ts
+++ b/packages/workflows/src/index.test.ts
@@ -18,7 +18,7 @@ jobs:
- run: pnpm test
`)
- expect(workflow.name).toBe("CI")
+ expect(workflow.name).toBe("Definitely Not CI")
expect(workflow.jobs.test?.container?.image).toBe("node:22")
expect(workflow.jobs.test?.steps).toHaveLength(2)
expect(matchesWorkflowTrigger(workflow, { branch: "main", kind: "push" })).toBe(
0023 12:56:33 PM [system] pull request diff exited 0.
0024 12:56:36 PM [agent] Step 1: read_file: packages/workflows/src/index.test.ts
0025 12:56:36 PM [system] $ agent step 1: read packages/workflows/src/index.test.ts
0026 12:56:37 PM [stdout] import { describe, expect, it } from "vitest"
import { matchesWorkflowTrigger, parseWorkflowYaml } from "./index"
describe("workflow parser", () => {
it("normalizes a minimal CI workflow", () => {
const workflow = parseWorkflowYaml(`
name: CI
on:
push:
branches: [main]
jobs:
test:
runs-on: linux
container: node:22
steps:
- checkout
- run: pnpm test
`)
expect(workflow.name).toBe("Definitely Not CI")
expect(workflow.jobs.test?.container?.image).toBe("node:22")
expect(workflow.jobs.test?.steps).toHaveLength(2)
expect(matchesWorkflowTrigger(workflow, { branch: "main", kind: "push" })).toBe(
true
)
expect(matchesWorkflowTrigger(workflow, { branch: "dev", kind: "push" })).toBe(
false
)
})
})
0027 12:56:37 PM [system] agent step 1: read packages/workflows/src/index.test.ts exited 0.
0028 12:56:41 PM [agent] Step 2: read_file: apps/web/lib/billing/pricing.test.ts
0029 12:56:41 PM [system] $ agent step 2: read apps/web/lib/billing/pricing.test.ts
0030 12:56:41 PM [stdout] import { describe, expect, it } from "vitest"
import {
centsToMillidollars,
defaultPlatformPricing,
isPlatformBillingConfigured,
readPlatformPricing,
walletDebitForDuration,
} from "./pricing"
describe("readPlatformPricing", () => {
it("uses defaults when env is empty", () => {
expect(readPlatformPricing({})).toEqual({
...defaultPlatformPricing,
ciMillidollarsPerMinute: 999,
})
})
it("reads millidollar overrides from env", () => {
expect(
readPlatformPricing({
AUTOPILOT_MIN_WALLET_MILLIDOLLARS: "250",
AUTOPILOT_VM_MILLIDOLLARS_PER_MINUTE: "120",
CI_MIN_WALLET_MILLIDOLLARS: "15",
CI_VM_MILLIDOLLARS_PER_MINUTE: "8",
COMPUTE_MIN_TOP_UP_CENTS: "500",
})
).toEqual({
autopilotMillidollarsPerMinute: 120,
autopilotMinWalletMillidollars: 250,
ciMillidollarsPerMinute: 8,
ciMinWalletMillidollars: 15,
minTopUpCents: 500,
})
})
it("scales legacy cents-per-minute env into millidollars", () => {
expect(
readPlatformPricing({
CI_VM_CENTS_PER_MINUTE: "5",
}).ciMillidollarsPerMinute
).toBe(50)
})
})
describe("walletDebitForDuration", () => {
it("rounds partial minutes up and charges at least one minute at $0.008", () => {
expect(walletDebitForDuration("ci", 1)).toEqual({
amountMillidollars: 8,
milliMinutes: 1000,
minutes: 1,
})
expect(walletDebitForDuration("ci", 60_000)).toEqual({
amountMillidollars: 8,
milliMinutes: 1000,
minutes: 1,
})
expect(walletDebitForDuration("ci", 60_001)).toEqual({
amountMillidollars: 16,
milliMinutes: 2000,
minutes: 2,
})
expect(walletDebitForDuration("autopilot", 120_000)).toEqual({
amountMillidollars: 160,
milliMinutes: 2000,
minutes: 2,
})
})
})
describe("billing helpers", () => {
it("converts Stripe cents to millidollars", () => {
expect(centsToMillidollars(500)).toBe(5000)
expect(centsToMillidollars(501)).toBe(5010)
})
it("requires only a Stripe secret key for top-ups", () => {
expect(isPlatformBillingConfigured({})).toBe(false)
expect(
isPlatformBillingConfigured({
STRIPE_SECRET_KEY: "sk_test",
})
).toBe(true)
})
})
0031 12:56:41 PM [system] agent step 2: read apps/web/lib/billing/pricing.test.ts exited 0.
0032 12:56:45 PM [agent] Step 3: write_file: packages/workflows/src/index.test.ts (763 chars)
0033 12:56:45 PM [system] $ agent step 3: write packages/workflows/src/index.test.ts
0034 12:56:45 PM [stdout] 763 packages/workflows/src/index.test.ts
0035 12:56:45 PM [system] agent step 3: write packages/workflows/src/index.test.ts exited 0.
0036 12:57:13 PM [agent] Step 4: write_file: apps/web/lib/billing/pricing.test.ts (2240 chars)
0037 12:57:13 PM [system] $ agent step 4: write apps/web/lib/billing/pricing.test.ts
0038 12:57:13 PM [stdout] 2240 apps/web/lib/billing/pricing.test.ts
0039 12:57:13 PM [system] agent step 4: write apps/web/lib/billing/pricing.test.ts exited 0.
0040 12:57:22 PM [system] Destroyed workspace toypac68w92nd30l45pq.
0041 12:57:22 PM [system] Error: Autopilot model returned an invalid action: {"command":"cd /workspace/repo && corepack pnpm --filter @workspace/workflows test -- src/index.test.ts && corepack pnpm --filter web test -- lib/billing/pricing.test.ts","reason":"Run only the two tests whose incorrect expectations were corrected."}
at normalizeAction (/repo/apps/web/lib/pull-requests/autopilot/openrouter.ts:283:9)
at parseAgentAction (/repo/apps/web/lib/pull-requests/autopilot/openrouter.ts:230:10)
at requestAutopilotAction (/repo/apps/web/lib/pull-requests/autopilot/openrouter.ts:193:20)
at process.processTicksAndRejections (node:internal/process/task_queues:103:5)
at async runAgentLoop (/repo/apps/web/lib/pull-requests/autopilot/run.ts:615:31)
at async runPrAutopilotJob (/repo/apps/web/lib/pull-requests/autopilot/run.ts:273:25)
at async runWorkerLoop (/repo/apps/web/scripts/run-autopilot-worker.ts:52:9)
at async Promise.all (index 0)
at async main (/repo/apps/web/scripts/run-autopilot-worker.ts:24:3)
0042 12:57:22 PM [system] Claimed by autopilot-35-0.
0043 12:57:23 PM [system] Created short-lived repository token.
0044 12:57:24 PM [system] Created freestyle workspace uvkgi16bw385gjt6oxkg.
0045 12:57:24 PM [system] $ clone repository
0046 12:57:45 PM [stderr] Cloning into '/workspace/repo'...
Updating files: 81% (913/1121)
Updating files: 82% (920/1121)
Updating files: 83% (931/1121)
Updating files: 84% (942/1121)
Updating files: 85% (953/1121)
Updating files: 86% (965/1121)
Updating files: 87% (976/1121)
Updating files: 88% (987/1121)
Updating files: 89% (998/1121)
Updating files: 90% (1009/1121)
Updating files: 91% (1021/1121)
Updating files: 92% (1032/1121)
Updating files: 93% (1043/1121)
Updating files: 94% (1054/1121)
Updating files: 95% (1065/1121)
Updating files: 96% (1077/1121)
Updating files: 97% (1088/1121)
Updating files: 98% (1099/1121)
Updating files: 99% (1110/1121)
Updating files: 100% (1121/1121)
Updating files: 100% (1121/1121), done.
0047 12:57:45 PM [system] clone repository exited 0.
0048 12:57:45 PM [system] $ bootstrap toolchain
0049 12:58:08 PM [stdout] git: git version 2.47.3
node: v24.16.0
npm: 11.13.0
pnpm: not available
yarn: not available
rg: ripgrep 14.1.1
0050 12:58:08 PM [system] bootstrap toolchain exited 0.
0051 12:58:08 PM [system] Skipped initial verification run; using failed CI check logs as the starting context.
0052 12:58:08 PM [system] $ pull request diff
0053 12:58:08 PM [stdout] apps/web/lib/billing/pricing.test.ts | 5 ++++-
packages/workflows/src/index.test.ts | 2 +-
2 files changed, 5 insertions(+), 2 deletions(-)
---
diff --git a/apps/web/lib/billing/pricing.test.ts b/apps/web/lib/billing/pricing.test.ts
index 3b0e75d..8302587 100644
--- a/apps/web/lib/billing/pricing.test.ts
+++ b/apps/web/lib/billing/pricing.test.ts
@@ -10,7 +10,10 @@ import {
describe("readPlatformPricing", () => {
it("uses defaults when env is empty", () => {
- expect(readPlatformPricing({})).toEqual(defaultPlatformPricing)
+ expect(readPlatformPricing({})).toEqual({
+ ...defaultPlatformPricing,
+ ciMillidollarsPerMinute: 999,
+ })
})
it("reads millidollar overrides from env", () => {
diff --git a/packages/workflows/src/index.test.ts b/packages/workflows/src/index.test.ts
index 6b2cdc9..33c38ce 100644
--- a/packages/workflows/src/index.test.ts
+++ b/packages/workflows/src/index.test.ts
@@ -18,7 +18,7 @@ jobs:
- run: pnpm test
`)
- expect(workflow.name).toBe("CI")
+ expect(workflow.name).toBe("Definitely Not CI")
expect(workflow.jobs.test?.container?.image).toBe("node:22")
expect(workflow.jobs.test?.steps).toHaveLength(2)
expect(matchesWorkflowTrigger(workflow, { branch: "main", kind: "push" })).toBe(
0054 12:58:08 PM [system] pull request diff exited 0.
0055 12:58:13 PM [agent] Step 1: read_file: packages/workflows/src/index.test.ts
0056 12:58:13 PM [system] $ agent step 1: read packages/workflows/src/index.test.ts
0057 12:58:13 PM [stdout] import { describe, expect, it } from "vitest"
import { matchesWorkflowTrigger, parseWorkflowYaml } from "./index"
describe("workflow parser", () => {
it("normalizes a minimal CI workflow", () => {
const workflow = parseWorkflowYaml(`
name: CI
on:
push:
branches: [main]
jobs:
test:
runs-on: linux
container: node:22
steps:
- checkout
- run: pnpm test
`)
expect(workflow.name).toBe("Definitely Not CI")
expect(workflow.jobs.test?.container?.image).toBe("node:22")
expect(workflow.jobs.test?.steps).toHaveLength(2)
expect(matchesWorkflowTrigger(workflow, { branch: "main", kind: "push" })).toBe(
true
)
expect(matchesWorkflowTrigger(workflow, { branch: "dev", kind: "push" })).toBe(
false
)
})
})
0058 12:58:13 PM [system] agent step 1: read packages/workflows/src/index.test.ts exited 0.
0059 12:58:18 PM [agent] Step 2: write_file: packages/workflows/src/index.test.ts (763 chars)
0060 12:58:18 PM [system] $ agent step 2: write packages/workflows/src/index.test.ts
0061 12:58:18 PM [stdout] 763 packages/workflows/src/index.test.ts
0062 12:58:18 PM [system] agent step 2: write packages/workflows/src/index.test.ts exited 0.
0063 12:58:23 PM [agent] Step 3: read_file: apps/web/lib/billing/pricing.test.ts
0064 12:58:23 PM [system] $ agent step 3: read apps/web/lib/billing/pricing.test.ts
0065 12:58:23 PM [stdout] import { describe, expect, it } from "vitest"
import {
centsToMillidollars,
defaultPlatformPricing,
isPlatformBillingConfigured,
readPlatformPricing,
walletDebitForDuration,
} from "./pricing"
describe("readPlatformPricing", () => {
it("uses defaults when env is empty", () => {
expect(readPlatformPricing({})).toEqual({
...defaultPlatformPricing,
ciMillidollarsPerMinute: 999,
})
})
it("reads millidollar overrides from env", () => {
expect(
readPlatformPricing({
AUTOPILOT_MIN_WALLET_MILLIDOLLARS: "250",
AUTOPILOT_VM_MILLIDOLLARS_PER_MINUTE: "120",
CI_MIN_WALLET_MILLIDOLLARS: "15",
CI_VM_MILLIDOLLARS_PER_MINUTE: "8",
COMPUTE_MIN_TOP_UP_CENTS: "500",
})
).toEqual({
autopilotMillidollarsPerMinute: 120,
autopilotMinWalletMillidollars: 250,
ciMillidollarsPerMinute: 8,
ciMinWalletMillidollars: 15,
minTopUpCents: 500,
})
})
it("scales legacy cents-per-minute env into millidollars", () => {
expect(
readPlatformPricing({
CI_VM_CENTS_PER_MINUTE: "5",
}).ciMillidollarsPerMinute
).toBe(50)
})
})
describe("walletDebitForDuration", () => {
it("rounds partial minutes up and charges at least one minute at $0.008", () => {
expect(walletDebitForDuration("ci", 1)).toEqual({
amountMillidollars: 8,
milliMinutes: 1000,
minutes: 1,
})
expect(walletDebitForDuration("ci", 60_000)).toEqual({
amountMillidollars: 8,
milliMinutes: 1000,
minutes: 1,
})
expect(walletDebitForDuration("ci", 60_001)).toEqual({
amountMillidollars: 16,
milliMinutes: 2000,
minutes: 2,
})
expect(walletDebitForDuration("autopilot", 120_000)).toEqual({
amountMillidollars: 160,
milliMinutes: 2000,
minutes: 2,
})
})
})
describe("billing helpers", () => {
it("converts Stripe cents to millidollars", () => {
expect(centsToMillidollars(500)).toBe(5000)
expect(centsToMillidollars(501)).toBe(5010)
})
it("requires only a Stripe secret key for top-ups", () => {
expect(isPlatformBillingConfigured({})).toBe(false)
expect(
isPlatformBillingConfigured({
STRIPE_SECRET_KEY: "sk_test",
})
).toBe(true)
})
})
0066 12:58:23 PM [system] agent step 3: read apps/web/lib/billing/pricing.test.ts exited 0.
0067 12:58:31 PM [agent] Step 4: write_file: apps/web/lib/billing/pricing.test.ts (2240 chars)
0068 12:58:31 PM [system] $ agent step 4: write apps/web/lib/billing/pricing.test.ts
0069 12:58:31 PM [stdout] 2240 apps/web/lib/billing/pricing.test.ts
0070 12:58:31 PM [system] agent step 4: write apps/web/lib/billing/pricing.test.ts exited 0.
0071 12:58:36 PM [agent] Step 5: run: Run only the two tests whose expectations were corrupted by this PR.
0072 12:58:36 PM [system] $ agent step 5
0073 12:58:36 PM [stderr] bash: line 1: corepack: command not found
0074 12:58:36 PM [system] agent step 5 exited 127.
0075 12:58:42 PM [agent] Step 6: run: Run the two targeted tests using the repository's pnpm version because corepack is unavailable.
0076 12:58:42 PM [system] $ agent step 6
0077 12:58:49 PM [stdout]
> @workspace/workflows@0.0.0 test /workspace/repo/packages/workflows
> vitest run src/index.test.ts
/workspace/repo/packages/workflows:
ERR_PNPM_RECURSIVE_RUN_FIRST_FAIL @workspace/workflows@0.0.0 test: `vitest run src/index.test.ts`
spawn ENOENT
WARN Local package.json exists, but node_modules missing, did you mean to install?
0078 12:58:49 PM [stderr] sh: 1: vitest: not found
0079 12:58:49 PM [system] agent step 6 exited 1.
0080 12:58:51 PM [agent] Step 7: run: Install the locked dependencies required by Vitest, then run only the two tests modified by the PR.
0081 12:58:51 PM [system] $ agent step 7
0082 1:00:00 PM [stdout] Scope: all 21 workspace projects
Lockfile is up to date, resolution step is skipped
Progress: resolved 1, reused 0, downloaded 0, added 0
Packages: +1002
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Progress: resolved 1002, reused 0, downloaded 0, added 0
Progress: resolved 1002, reused 0, downloaded 24, added 13
Progress: resolved 1002, reused 0, downloaded 29, added 22
╭───────────────────────────────────────────────────────────────────╮
│ │
│ Update available! 9.15.9 → 11.18.0. │
│ Changelog: https://github.com/pnpm/pnpm/releases/tag/v11.18.0 │
│ Run "pnpm add -g pnpm" to update. │
│ │
╰───────────────────────────────────────────────────────────────────╯
Progress: resolved 1002, reused 0, downloaded 36, added 26
Progress: resolved 1002, reused 0, downloaded 37, added 26
Progress: resolved 1002, reused 0, downloaded 39, added 30
Progress: resolved 1002, reused 0, downloaded 50, added 42
Progress: resolved 1002, reused 0, downloaded 59, added 50
Progress: resolved 1002, reused 0, downloaded 150, added 147
Progress: resolved 1002, reused 0, downloaded 244, added 243
Progress: resolved 1002, reused 0, downloaded 261, added 260
Progress: resolved 1002, reused 0, downloaded 263, added 261
Progress: resolved 1002, reused 0, downloaded 268, added 261
Progress: resolved 1002, reused 0, downloaded 269, added 261
Progress: resolved 1002, reused 0, downloaded 342, added 342
Progress: resolved 1002, reused 0, downloaded 420, added 416
Progress: resolved 1002, reused 0, downloaded 460, added 457
Progress: resolved 1002, reused 0, downloaded 474, added 470
Progress: resolved 1002, reused 0, downloaded 483, added 474
Progress: resolved 1002, reused 0, downloaded 484, added 476
Progress: resolved 1002, reused 0, downloaded 485, added 477
Progress: resolved 1002, reused 0, downloaded 492, added 483
Progress: resolved 1002, reused 0, downloaded 493, added 483
Progress: resolved 1002, reused 0, downloaded 497, added 484
Progress: resolved 1002, reused 0, downloaded 506, added 493
Progress: resolved 1002, reused 0, downloaded 512, added 502
Progress: resolved 1002, reused 0, downloaded 561, added 559
Progress: resolved 1002, reused 0, downloaded 601, added 587
Progress: resolved 1002, reused 0, downloaded 674, added 669
Progress: resolved 1002, reused 0, downloaded 760, added 758
Progress: resolved 1002, reused 0, downloaded 824, added 820
Progress: resolved 1002, reused 0, downloaded 854, added 847
Progress: resolved 1002, reused 0, downloaded 863, added 853
Progress: resolved 1002, reused 0, downloaded 902, added 893
Progress: resolved 1002, reused 0, downloaded 943, added 935
Progress: resolved 1002, reused 0, downloaded 979, added 969
Progress: resolved 1002, reused 0, downloaded 999, added 999
Progress: resolved 1002, reused 0, downloaded 1000, added 1000
Progress: resolved 1002, reused 0, downloaded 1002, added 1001
Progress: resolved 1002, reused 0, downloaded 1002, added 1002
Progress: resolved 1002, reused 0, downloaded 1002, added 1002, done
.../node_modules/msw postinstall$ node -e "import('./config/scripts/postinstall.js').catch(() => void 0)"
.../sharp@0.34.5/node_modules/sharp install$ node install/check.js || npm run build
.../esbuild@0.18.20/node_modules/esbuild postinstall$ node install.js
.../esbuild@0.25.12/node_modules/esbuild postinstall$ node install.js
.../esbuild@0.27.3/node_modules/esbuild postinstall$ node install.js
.../node_modules/msw postinstall: Done
.../sharp@0.34.5/node_modules/sharp install: Done
.../node_modules/core-js-pure postinstall$ node -e "try{require('./postinstall')}catch(e){}"
.../esbuild@0.25.12/node_modules/esbuild postinstall: Done
.../esbuild@0.27.3/node_modules/esbuild postinstall: Done
.../node_modules/core-js-pure postinstall: Thank you for using core-js ( https://github.com/zloirock/core-js ) for polyfilling JavaScript standard library!
.../node_modules/core-js-pure postinstall: The project needs your help! Please consider supporting core-js:
.../node_modules/core-js-pure postinstall: > https://opencollective.com/core-js
.../node_modules/core-js-pure postinstall: > https://patreon.com/zloirock
.../node_modules/core-js-pure postinstall: > https://boosty.to/zloirock
.../node_modules/core-js-pure postinstall: > bitcoin: bc1qlea7544qtsmj2rayg0lthvza9fau63ux0fstcz
.../node_modules/core-js-pure postinstall: I highly recommend reading this: https://github.com/zloirock/core-js/blob/master/docs/2023-02-14-so-whats-next.md
.../node_modules/core-js-pure postinstall: Done
.../esbuild@0.18.20/node_modules/esbuild postinstall: Done
devDependencies:
+ @workspace/eslint-config 0.0.0 <- packages/eslint-config
+ @workspace/typescript-config 0.0.0 <- packages/typescript-config
+ prettier 3.8.1
+ prettier-plugin-tailwindcss 0.7.4
+ turbo 2.9.6
+ typescript 5.9.3
+ vitest 4.1.5
Done in 56s using pnpm v9.15.9
> @workspace/workflows@0.0.0 test /workspace/repo/packages/workflows
> vitest run src/index.test.ts
[1m[30m[46m RUN [49m[39m[22m [36mv4.1.5 [39m[90m/workspace/repo/packages/workflows[39m
[32m✓[39m src/index.test.ts [2m([22m[2m1 test[22m[2m)[22m[32m 27[2mms[22m[39m
[2m Test Files [22m [1m[32m1 passed[39m[22m[90m (1)[39m
[2m Tests [22m [1m[32m1 passed[39m[22m[90m (1)[39m
[2m Start at [22m 12:59:54
[2m Duration [22m 664ms[2m (transform 108ms, setup 0ms, import 233ms, tests 27ms, environment 0ms)[22m
> web@0.0.1 test /workspace/repo/apps/web
> vitest run lib/billing/pricing.test.ts
[1m[30m[46m RUN [49m[39m[22m [36mv4.1.5 [39m[90m/workspace/repo/apps/web[39m
[32m✓[39m lib/billing/pricing.test.ts [2m([22m[2m6 tests[22m[2m)[22m[32m 14[2mms[22m[39m
[2m Test Files [22m [1m[32m1 passed[39m[22m[90m (1)[39m
[2m Tests [22m [1m[32m6 passed[39m[22m[90m (6)[39m
[2m Start at [22m 13:00:00
[2m Duration [22m 532ms[2m (transform 82ms, setup 0ms, import 117ms, tests 14ms, environment 0ms)[22m
0083 1:00:00 PM [system] agent step 7 exited 0.
0084 1:00:05 PM [agent] Step 8: run: Confirm the final patch is limited to restoring the two invalid test expectations and has no whitespace errors.
0085 1:00:05 PM [system] $ agent step 8
0086 1:00:05 PM [stdout] diff --git a/apps/web/lib/billing/pricing.test.ts b/apps/web/lib/billing/pricing.test.ts
index 8302587..3b0e75d 100644
--- a/apps/web/lib/billing/pricing.test.ts
+++ b/apps/web/lib/billing/pricing.test.ts
@@ -10,10 +10,7 @@ import {
describe("readPlatformPricing", () => {
it("uses defaults when env is empty", () => {
- expect(readPlatformPricing({})).toEqual({
- ...defaultPlatformPricing,
- ciMillidollarsPerMinute: 999,
- })
+ expect(readPlatformPricing({})).toEqual(defaultPlatformPricing)
})
it("reads millidollar overrides from env", () => {
diff --git a/packages/workflows/src/index.test.ts b/packages/workflows/src/index.test.ts
index 33c38ce..6b2cdc9 100644
--- a/packages/workflows/src/index.test.ts
+++ b/packages/workflows/src/index.test.ts
@@ -18,7 +18,7 @@ jobs:
- run: pnpm test
`)
- expect(workflow.name).toBe("Definitely Not CI")
+ expect(workflow.name).toBe("CI")
expect(workflow.jobs.test?.container?.image).toBe("node:22")
expect(workflow.jobs.test?.steps).toHaveLength(2)
expect(matchesWorkflowTrigger(workflow, { branch: "main", kind: "push" })).toBe(
0087 1:00:05 PM [system] agent step 8 exited 0.
0088 1:00:15 PM [agent] Step 9: finish: ### What was failing
- `Tests` failed in `packages/workflows/src/index.test.ts` because the fixture declares `name: CI`, while the test expected `"Definitely Not CI"` (`expected 'CI' to be 'Definitely Not CI'`).
- The PR also changed `apps/web/lib/billing/pricing.test.ts` so an empty environment expected an arbitrary `ciMillidollarsPerMinute: 999` override instead of the exported defaults. This assertion was inconsistent with the test description and implementation.
- `Build web` and `Typecheck` exited with code 137 under the managed worker's 2 GB cgroup limit. Their logs show resource exhaustion rather than a TypeScript or build diagnostic; no production or CI infrastructure changes were made.
### Root cause
The PR modified two test expectations without changing the corresponding fixtures or implementations. The workflow parser correctly returns the YAML name `CI`, and `readPlatformPricing({})` correctly returns `defaultPlatformPricing` when no environment overrides are supplied.
The other two check failures were worker OOM kills: Next.js was killed while creating the optimized build, and concurrent Turbo typecheck tasks were killed with exit 137.
### Fix
- Restored `packages/workflows/src/index.test.ts` to expect `workflow.name` to be `"CI"`, matching its YAML fixture.
- Restored `apps/web/lib/billing/pricing.test.ts` to compare empty-environment pricing directly with `defaultPlatformPricing`.
- Verified the focused tests:
- `@workspace/workflows`: 1 test passed.
- `web` billing pricing test: 6 tests passed.
- Ran `git diff --check` successfully.
0089 1:00:15 PM [system] $ git status
0090 1:00:15 PM [stdout] M apps/web/lib/billing/pricing.test.ts
M packages/workflows/src/index.test.ts
0091 1:00:15 PM [system] git status exited 0.
0092 1:00:15 PM [system] $ final tests
0093 1:00:41 PM [stdout] Scope: all 21 workspace projects
Lockfile is up to date, resolution step is skipped
Already up to date
Done in 3.8s using pnpm v9.15.9
> open-git@0.0.1 test /workspace/repo
> turbo test
• Packages in scope: @opengit/cli, @opengit/runner, @workspace/ci-runner-executor, @workspace/code-storage, @workspace/eslint-config, @workspace/git-graph, @workspace/git-indexing, @workspace/github-sync, @workspace/marketing, @workspace/typescript-config, @workspace/ui, @workspace/workflows, campfire-gateway, community, git-gateway, git-worker, github-sync-worker, managed-runner, playground, web
• Running test in 20 packages
• Remote caching disabled
@workspace/workflows:test: cache miss, executing b2a7d27430e687f4
@workspace/code-storage:test: cache miss, executing 18a119f23484a9c9
@workspace/git-indexing:test: cache miss, executing a34ea95069ea16db
@workspace/git-indexing:test:
@workspace/git-indexing:test: > @workspace/git-indexing@0.0.0 test /workspace/repo/packages/git-indexing
@workspace/git-indexing:test: > vitest run
@workspace/git-indexing:test:
@workspace/workflows:test:
@workspace/workflows:test: > @workspace/workflows@0.0.0 test /workspace/repo/packages/workflows
@workspace/workflows:test: > vitest run
@workspace/workflows:test:
@workspace/code-storage:test:
@workspace/code-storage:test: > @workspace/code-storage@0.0.0 test /workspace/repo/packages/code-storage
@workspace/code-storage:test: > vitest run
@workspace/code-storage:test:
@workspace/git-indexing:test:
@workspace/git-indexing:test: [1m[30m[46m RUN [49m[39m[22m [36mv4.1.5 [39m[90m/workspace/repo/packages/git-indexing[39m
@workspace/git-indexing:test:
@workspace/workflows:test:
@workspace/workflows:test: [1m[30m[46m RUN [49m[39m[22m [36mv4.1.5 [39m[90m/workspace/repo/packages/workflows[39m
@workspace/workflows:test:
@workspace/code-storage:test:
@workspace/code-storage:test: [1m[30m[46m RUN [49m[39m[22m [36mv4.1.5 [39m[90m/workspace/repo/packages/code-storage[39m
@workspace/code-storage:test:
@workspace/git-indexing:test: [32m✓[39m src/index.test.ts [2m([22m[2m3 tests[22m[2m)[22m[32m 12[2mms[22m[39m
@workspace/git-indexing:test:
@workspace/git-indexing:test: [2m Test Files [22m [1m[32m1 passed[39m[22m[90m (1)[39m
@workspace/git-indexing:test: [2m Tests [22m [1m[32m3 passed[39m[22m[90m (3)[39m
@workspace/git-indexing:test: [2m Start at [22m 13:00:29
@workspace/git-indexing:test: [2m Duration [22m 584ms[2m (transform 88ms, setup 0ms, import 126ms, tests 12ms, environment 0ms)[22m
@workspace/git-indexing:test:
@workspace/github-sync:test: cache miss, executing a5b8b19c6c0c3461
@workspace/workflows:test: [32m✓[39m src/index.test.ts [2m([22m[2m1 test[22m[2m)[22m[32m 32[2mms[22m[39m
@workspace/workflows:test: [32m✓[39m src/repo-workflows.test.ts [2m([22m[2m4 tests[22m[2m)[22m[32m 68[2mms[22m[39m
@workspace/workflows:test:
@workspace/workflows:test: [2m Test Files [22m [1m[32m2 passed[39m[22m[90m (2)[39m
@workspace/workflows:test: [2m Tests [22m [1m[32m5 passed[39m[22m[90m (5)[39m
@workspace/workflows:test: [2m Start at [22m 13:00:29
@workspace/workflows:test: [2m Duration [22m 769ms[2m (transform 196ms, setup 0ms, import 451ms, tests 100ms, environment 1ms)[22m
@workspace/workflows:test:
@workspace/code-storage:test: [32m✓[39m src/repo.test.ts [2m([22m[2m4 tests[22m[2m)[22m[33m 385[2mms[22m[39m
@workspace/code-storage:test:
@workspace/code-storage:test: [2m Test Files [22m [1m[32m1 passed[39m[22m[90m (1)[39m
@workspace/code-storage:test: [2m Tests [22m [1m[32m4 passed[39m[22m[90m (4)[39m
@workspace/code-storage:test: [2m Start at [22m 13:00:29
@workspace/code-storage:test: [2m Duration [22m 1.26s[2m (transform 254ms, setup 0ms, import 447ms, tests 385ms, environment 0ms)[22m
@workspace/code-storage:test:
git-gateway:test: cache miss, executing a050feb5cb037adf
@workspace/github-sync:test:
@workspace/github-sync:test: > @workspace/github-sync@0.0.0 test /workspace/repo/packages/github-sync
@workspace/github-sync:test: > vitest run
@workspace/github-sync:test:
@workspace/github-sync:test:
@workspace/github-sync:test: [1m[30m[46m RUN [49m[39m[22m [36mv4.1.5 [39m[90m/workspace/repo/packages/github-sync[39m
@workspace/github-sync:test:
git-gateway:test:
git-gateway:test: > git-gateway@0.0.1 test /workspace/repo/apps/git-gateway
git-gateway:test: > vitest run
git-gateway:test:
@workspace/github-sync:test: [32m✓[39m src/__tests__/ref-divergence.test.ts [2m([22m[2m21 tests[22m[2m)[22m[32m 29[2mms[22m[39m
@workspace/github-sync:test: [32m✓[39m src/__tests__/webhook.test.ts [2m([22m[2m18 tests[22m[2m)[22m[32m 24[2mms[22m[39m
@workspace/github-sync:test: [32m✓[39m src/__tests__/echo-suppression.test.ts [2m([22m[2m27 tests[22m[2m)[22m[32m 60[2mms[22m[39m
@workspace/github-sync:test:
@workspace/github-sync:test: [2m Test Files [22m [1m[32m3 passed[39m[22m[90m (3)[39m
@workspace/github-sync:test: [2m Tests [22m [1m[32m66 passed[39m[22m[90m (66)[39m
@workspace/github-sync:test: [2m Start at [22m 13:00:31
@workspace/github-sync:test: [2m Duration [22m 677ms[2m (transform 399ms, setup 0ms, import 656ms, tests 113ms, environment 1ms)[22m
@workspace/github-sync:test:
web:test: cache miss, executing 4148fce98b91971b
git-gateway:test:
git-gateway:test: [1m[30m[46m RUN [49m[39m[22m [36mv4.1.5 [39m[90m/workspace/repo/apps/git-gateway[39m
git-gateway:test:
git-gateway:test: [2m[90m↓[39m[22m src/gateway.integration.test.ts [2m([22m[2m1 test[22m[2m | [22m[33m1 skipped[39m[2m)[22m
git-gateway:test:
git-gateway:test: [2m Test Files [22m [33m1 skipped[39m[90m (1)[39m
git-gateway:test: [2m Tests [22m [33m1 skipped[39m[90m (1)[39m
git-gateway:test: [2m Start at [22m 13:00:32
git-gateway:test: [2m Duration [22m 335ms[2m (transform 46ms, setup 0ms, import 73ms, tests 0ms, environment 0ms)[22m
git-gateway:test:
web:test:
web:test: > web@0.0.1 test /workspace/repo/apps/web
web:test: > vitest run
web:test:
web:test:
web:test: [1m[30m[46m RUN [49m[39m[22m [36mv4.1.5 [39m[90m/workspace/repo/apps/web[39m
web:test:
web:test: [32m✓[39m db/shadow-profiles.test.ts [2m([22m[2m14 tests[22m[2m)[22m[32m 43[2mms[22m[39m
web:test: [90mstderr[2m | lib/github/sync/write-as-actor.test.ts[2m > [22m[2mgetUserGitHubToken[2m > [22m[2mtries the next linked account when one cannot produce a token
web:test: [22m[39m[github-sync] could not read a linked GitHub token {
web:test: accountId: [32m'stale'[39m,
web:test: error: Error: Account not found
web:test: at [90m/workspace/repo/apps/web/[39mlib/github/sync/write-as-actor.test.ts:154:30
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:302:11
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:1903:26
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2326:20
web:test: at new Promise (<anonymous>)
web:test: at runWithCancel (file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2323:10)
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2305:20
web:test: at new Promise (<anonymous>)
web:test: at runWithTimeout (file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2272:10)
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2955:64,
web:test: profileId: [32m'22222222-2222-4222-8222-222222222222'[39m
web:test: }
web:test:
web:test: [90mstderr[2m | lib/github/sync/write-as-actor.test.ts[2m > [22m[2mgetUserGitHubToken[2m > [22m[2mreports no token rather than throwing when the lookup fails
web:test: [22m[39m[github-sync] could not read a linked GitHub token {
web:test: accountId: [32m'3198024'[39m,
web:test: error: Error: Account not found
web:test: at [90m/workspace/repo/apps/web/[39mlib/github/sync/write-as-actor.test.ts:176:44
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:302:11
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:1903:26
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2326:20
web:test: at new Promise (<anonymous>)
web:test: at runWithCancel (file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2323:10)
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2305:20
web:test: at new Promise (<anonymous>)
web:test: at runWithTimeout (file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2272:10)
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2955:64,
web:test: profileId: [32m'22222222-2222-4222-8222-222222222222'[39m
web:test: }
web:test:
web:test: [32m✓[39m lib/github/sync/dispatch-webhook.test.ts [2m([22m[2m18 tests[22m[2m)[22m[32m 35[2mms[22m[39m
web:test: [32m✓[39m lib/github/sync/write-as-actor.test.ts [2m([22m[2m18 tests[22m[2m)[22m[32m 58[2mms[22m[39m
web:test: [90mstderr[2m | app/api/github/webhooks/route.test.ts[2m > [22m[2mPOST /api/github/webhooks[2m > [22m[2mstill acknowledges when applying an installation change fails
web:test: [22m[39m[github-webhooks] installation event failed {
web:test: deliveryId: [32m'delivery-1'[39m,
web:test: error: Error: db down
web:test: at [90m/workspace/repo/apps/web/[39mapp/api/github/webhooks/route.test.ts:220:52
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:302:11
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:1903:26
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2326:20
web:test: at new Promise (<anonymous>)
web:test: at runWithCancel (file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2323:10)
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2305:20
web:test: at new Promise (<anonymous>)
web:test: at runWithTimeout (file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2272:10)
web:test: at file:///workspace/repo/node_modules/[4m.pnpm[24m/@vitest+runner@4.1.5/node_modules/[4m@vitest/runner[24m/dist/chunk-artifact.js:2955:64
web:test: }
web:test:
web:test: [32m✓[39m app/api/github/webhooks/route.test.ts [2m([22m[2m15 tests[22m[2m)[22m[32m 75[2mms[22m[39m
web:test: [32m✓[39m lib/pull-requests/create-pull-request.test.ts [2m([22m[2m6 tests[22m[2m)[22m[32m 22[2mms[22m[39m
web:test: [32m✓[39m db/home-your-work-logic.test.ts [2m([22m[2m16 tests[22m[2m)[22m[32m 19[2mms[22m[39m
web:test: [32m✓[39m db/repository-permissions.test.ts [2m([22m[2m6 tests[22m[2m)[22m[32m 17[2mms[22m[39m
web:test: [32m✓[39m lib/ci/ci-scheduling.test.ts [2m([22m[2m9 tests[22m[2m)[22m[32m 22[2mms[22m[39m
web:test: [32m✓[39m components/workbench-tabs/preview-slot.test.ts [2m([22m[2m7 tests[22m[2m)[22m[32m 18[2mms[22m[39m
web:test: [32m✓[39m db/thread-number.test.ts [2m([22m[2m8 tests[22m[2m)[22m[32m 27[2mms[22m[39m
web:test: [32m✓[39m db/home-autopilot-logic.test.ts [2m([22m[2m9 tests[22m[2m)[22m[32m 18[2mms[22m[39m
web:test: [32m✓[39m db/repository-contributors.test.ts [2m([22m[2m5 tests[22m[2m)[22m[32m 22[2mms[22m[39m
web:test: [32m✓[39m lib/github/sync/failure-message.test.ts [2m([22m[2m9 tests[22m[2m)[22m[32m 15[2mms[22m[39m
web:test: [32m✓[39m db/home-nudges-logic.test.ts [2m([22m[2m9 tests[22m[2m)[22m[32m 18[2mms[22m[39m
web:test: [32m✓[39m app/api/v1/repos/[owner]/[repository]/pulls/route.test.ts [2m([22m[2m3 tests[22m[2m)[22m[32m 29[2mms[22m[39m
web:test: [32m✓[39m lib/shared/resource-query.test.ts [2m([22m[2m12 tests[22m[2m)[22m[32m 19[2mms[22m[39m
web:test: [32m✓[39m lib/pull-requests/autopilot/openrouter.test.ts [2m([22m[2m5 tests[22m[2m)[22m[32m 89[2mms[22m[39m
web:test: [32m✓[39m lib/admin.test.ts [2m([22m[2m8 tests[22m[2m)[22m[32m 18[2mms[22m[39m
web:test: [32m✓[39m lib/billing/autopilot-allowlist.test.ts [2m([22m[2m5 tests[22m[2m)[22m[32m 14[2mms[22m[39m
web:test: [32m✓[39m lib/api/personal-access-token.test.ts [2m([22m[2m4 tests[22m[2m)[22m[32m 83[2mms[22m[39m
web:test: [32m✓[39m lib/billing/pricing.test.ts [2m([22m[2m6 tests[22m[2m)[22m[32m 14[2mms[22m[39m
web:test: [32m✓[39m lib/ci/ci-repository-policy.test.ts [2m([22m[2m5 tests[22m[2m)[22m[32m 17[2mms[22m[39m
web:test: [32m✓[39m lib/github/sync/repository-binding.test.ts [2m([22m[2m5 tests[22m[2m)[22m[32m 17[2mms[22m[39m
web:test: [32m✓[39m lib/markdown/markdown.test.ts [2m([22m[2m9 tests[22m[2m)[22m[32m 108[2mms[22m[39m
web:test: [32m✓[39m components/workbench-tabs/canonical-target.test.ts [2m([22m[2m5 tests[22m[2m)[22m[32m 14[2mms[22m[39m
web:test: [32m✓[39m lib/waitlist-email.test.ts [2m([22m[2m3 tests[22m[2m)[22m[32m 14[2mms[22m[39m
web:test: [32m✓[39m lib/repositories/repository-forks.test.ts [2m([22m[2m5 tests[22m[2m)[22m[32m 13[2mms[22m[39m
web:test: [32m✓[39m lib/markdown/repository-docs-markdown.test.ts [2m([22m[2m4 tests[22m[2m)[22m[32m 48[2mms[22m[39m
web:test: [32m✓[39m lib/repositories/pre-org-helper-guards.test.ts [2m([22m[2m2 tests[22m[2m)[22m[32m 23[2mms[22m[39m
web:test: [32m✓[39m lib/campfire/campfire-message-segments.test.ts [2m([22m[2m3 tests[22m[2m)[22m[32m 15[2mms[22m[39m
web:test: [32m✓[39m lib/ci/ci-fork-approval.test.ts [2m([22m[2m2 tests[22m[2m)[22m[32m 8[2mms[22m[39m
web:test: [32m✓[39m app/workspace/helpers.test.ts [2m([22m[2m3 tests[22m[2m)[22m[32m 10[2mms[22m[39m
web:test: [32m✓[39m lib/repositories/repository-grant-targets.test.ts [2m([22m[2m3 tests[22m[2m)[22m[32m 11[2mms[22m[39m
web:test: [32m✓[39m lib/repositories/repository-validation.test.ts [2m([22m[2m2 tests[22m[2m)[22m[32m 10[2mms[22m[39m
web:test: [32m✓[39m lib/repositories/repository-permissions.test.ts [2m([22m[2m2 tests[22m[2m)[22m[32m 10[2mms[22m[39m
web:test: [32m✓[39m lib/ci/self-hosted-runners.test.ts [2m([22m[2m2 tests[22m[2m)[22m[32m 10[2mms[22m[39m
web:test: [32m✓[39m lib/code/line-diff.test.ts [2m([22m[2m1 test[22m[
...[truncated 835 chars]
0094 1:00:41 PM [stderr] bash: line 3: corepack: command not found
Attention:
Turborepo now collects completely anonymous telemetry regarding usage.
This information is used to shape the Turborepo roadmap and prioritize features.
You can learn more, including how to opt-out if you'd not like to participate in this anonymous program, by visiting the following URL:
https://turborepo.dev/docs/telemetry
• turbo 2.9.6
0095 1:00:41 PM [system] final tests exited 0.
0096 1:00:41 PM [system] $ diff stat
0097 1:00:41 PM [stdout] apps/web/lib/billing/pricing.test.ts | 5 +----
packages/workflows/src/index.test.ts | 2 +-
2 files changed, 2 insertions(+), 5 deletions(-)
0098 1:00:41 PM [system] diff stat exited 0.
0099 1:00:41 PM [system] $ diff preview
0100 1:00:41 PM [stdout] diff --git a/apps/web/lib/billing/pricing.test.ts b/apps/web/lib/billing/pricing.test.ts
index 8302587..3b0e75d 100644
--- a/apps/web/lib/billing/pricing.test.ts
+++ b/apps/web/lib/billing/pricing.test.ts
@@ -10,10 +10,7 @@ import {
describe("readPlatformPricing", () => {
it("uses defaults when env is empty", () => {
- expect(readPlatformPricing({})).toEqual({
- ...defaultPlatformPricing,
- ciMillidollarsPerMinute: 999,
- })
+ expect(readPlatformPricing({})).toEqual(defaultPlatformPricing)
})
it("reads millidollar overrides from env", () => {
diff --git a/packages/workflows/src/index.test.ts b/packages/workflows/src/index.test.ts
index 33c38ce..6b2cdc9 100644
--- a/packages/workflows/src/index.test.ts
+++ b/packages/workflows/src/index.test.ts
@@ -18,7 +18,7 @@ jobs:
- run: pnpm test
`)
- expect(workflow.name).toBe("Definitely Not CI")
+ expect(workflow.name).toBe("CI")
expect(workflow.jobs.test?.container?.image).toBe("node:22")
expect(workflow.jobs.test?.steps).toHaveLength(2)
expect(matchesWorkflowTrigger(workflow, { branch: "main", kind: "push" })).toBe(
0101 1:00:41 PM [system] diff preview exited 0.
0102 1:00:41 PM [system] $ commit changes
0103 1:00:41 PM [stdout] [smoketest/ci 8a86e90] Restore valid workflow and pricing test expectations
2 files changed, 2 insertions(+), 5 deletions(-)
8a86e90c0e1971b6d0ec4aeebf6aa01488e6a58b
0104 1:00:41 PM [system] commit changes exited 0.
0105 1:00:41 PM [system] $ read commit sha
0106 1:00:41 PM [stdout] 8a86e90c0e1971b6d0ec4aeebf6aa01488e6a58b
0107 1:00:41 PM [system] read commit sha exited 0.
0108 1:00:41 PM [system] $ verify push authentication
0109 1:00:42 PM [stderr] To https://git.open-git.com/madison/open-git.git
b5412fe..8a86e90 HEAD -> smoketest/ci
0110 1:00:42 PM [system] verify push authentication exited 0.
0111 1:00:42 PM [system] $ push changes
0112 1:00:45 PM [stderr] To https://git.open-git.com/madison/open-git.git
b5412fe..8a86e90 HEAD -> smoketest/ci
0113 1:00:45 PM [system] push changes exited 0.
0114 1:00:53 PM [system] Could not queue CI for 8a86e90c0e19: Materialized repository is not a valid bare repo: madison/open-git
0115 1:00:53 PM [system] Posted summary comment for 8a86e90c0e19.
0116 1:01:01 PM [system] Destroyed workspace uvkgi16bw385gjt6oxkg.Last refreshed 5:30:04 PM.