fix(web): take runreport 0.1.2, whose exports point at dist #509

Merged
gmackie merged 1 commit from fix/runreport-0-1-2 into main 2026-08-27 22:44:53 +00:00
Owner

Fixes the deploy blocker at its source, so #507's transpilePackages workaround should not be needed.

What was wrong. @preflight/runreport@0.1.1 published exports: { ".": "./src/index.ts" }, so every resolver got raw TypeScript while a correct compiled dist/ sat unused beside it. next build died on Unknown module type, and that is what has kept main from deploying.

Why it published that way — the part worth recording. The package's manifest was never wrong. The correct map has always been there, in publishConfig:

"publishConfig": { "exports": { ".": { "types": "./dist/index.d.ts", "default": "./dist/index.js" } } }

But npm publish ignores publishConfig.exports; only pnpm publish applies it. And pnpm publish could not run on this package at all: @preflight/tsconfig is private with no version field, so workspace:* was unresolvable and pnpm refused. Publishing therefore fell back to npm, which silently dropped the override. 0.1.0 has correct exports; 0.1.1 does not — that is the whole difference.

Fixed upstream (preflight-app 1569fb1f): gave the private tooling package a version so pnpm publish works, then republished as 0.1.2 with the exports map the package always intended. Verified on the registry:

exports = { '.': { types: './dist/index.d.ts', default: './dist/index.js' } }

This PR takes ^0.1.2. Verified locally, not assumed:

  • turbo run typecheck — 6/6, and the failures on run-report-provider.ts and runs/[testRunId]/page.tsx are gone
  • next build — compiled successfully in 55s, 205 static pages, no Unknown module type

@forgegraph-df: #507 can likely be dropped, or kept and its transpilePackages line removed as you suggested — your call since it is yours. I did not touch it.

🤖 Generated with Claude Code

Fixes the deploy blocker at its source, so #507's `transpilePackages` workaround should not be needed. **What was wrong.** `@preflight/runreport@0.1.1` published `exports: { ".": "./src/index.ts" }`, so every resolver got raw TypeScript while a correct compiled `dist/` sat unused beside it. `next build` died on `Unknown module type`, and that is what has kept main from deploying. **Why it published that way — the part worth recording.** The package's manifest was never wrong. The correct map has always been there, in `publishConfig`: ```json "publishConfig": { "exports": { ".": { "types": "./dist/index.d.ts", "default": "./dist/index.js" } } } ``` But **`npm publish` ignores `publishConfig.exports`; only `pnpm publish` applies it.** And `pnpm publish` could not run on this package at all: `@preflight/tsconfig` is private with **no `version` field**, so `workspace:*` was unresolvable and pnpm refused. Publishing therefore fell back to npm, which silently dropped the override. 0.1.0 has correct exports; 0.1.1 does not — that is the whole difference. **Fixed upstream** (preflight-app `1569fb1f`): gave the private tooling package a version so `pnpm publish` works, then republished as **0.1.2** with the exports map the package always intended. Verified on the registry: ``` exports = { '.': { types: './dist/index.d.ts', default: './dist/index.js' } } ``` **This PR** takes `^0.1.2`. Verified locally, not assumed: - `turbo run typecheck` — 6/6, and the failures on `run-report-provider.ts` and `runs/[testRunId]/page.tsx` are gone - `next build` — **compiled successfully in 55s, 205 static pages**, no `Unknown module type` @forgegraph-df: #507 can likely be dropped, or kept and its `transpilePackages` line removed as you suggested — your call since it is yours. I did not touch it. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
fix(web): take runreport 0.1.2, whose exports point at dist
All checks were successful
CI / gitleaks (pull_request) Successful in 6s
CI / storybook (pull_request) Successful in 1m42s
forgegraph/ci CI passed
CI / ci (pull_request) Successful in 11m36s
ef1d923ac8
0.1.1 shipped exports mapped to ./src/index.ts, so every resolver handed the
build raw TypeScript and next build died on 'Unknown module type'. That is
what has been blocking main from deploying.

Fixed upstream rather than worked around: 0.1.2 is republished with the
exports map the package always intended. Root cause was a publish path, not
the manifest — the override lives in publishConfig, npm publish ignores
publishConfig.exports, and pnpm publish could not run because a private
tooling package had no version to resolve workspace:* against.
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
gmackie/ForgeGraph!509
No description provided.