Skip to content

fix compiler failure diagnostics - #157

Draft
arthtyagi wants to merge 1 commit into
vercel-labs:mainfrom
arthtyagi:agent/surface-compiler-failure-details
Draft

fix compiler failure diagnostics#157
arthtyagi wants to merge 1 commit into
vercel-labs:mainfrom
arthtyagi:agent/surface-compiler-failure-details

Conversation

@arthtyagi

Copy link
Copy Markdown
Contributor

What changed

  • retain the exact compiler command and numeric child exit code on CcCompileError
  • preserve actual stderr instead of replacing an empty stream
  • surface captured stdout when a compiler writes diagnostics there
  • include a process-error fallback when both output streams are empty
  • add regression coverage with a deterministic compiler wrapper

Why

The final compiler-driver wrapper used err.stderr ?? String(err). An empty stderr string therefore suppressed every other useful field from Node's child-process error, leaving cross-target failures without the command, exit code, or any fallback diagnostic.

This is intentionally limited to diagnostics. It does not add or change target support.

References #156.

Validation

  • pnpm exec eslint packages/compiler/src/backend/cc.ts packages/compiler/test/cc-driver.test.ts
  • compiler TypeScript build under Node 24.15.0
  • packages/compiler/test/cc-driver.test.ts under Node 24.15.0, plain: 9 passed, 9 skipped
  • same focused suite with SCRIPTC_SAN=1: 9 passed, 9 skipped
  • regression observed failing before the production change and passing afterward

The repository-wide local fallback was attempted but could not complete in this checkout because CMake is not installed; dynamic-engine suites fail at their existing CMake prerequisite.

@vercel

vercel Bot commented Aug 15, 2026

Copy link
Copy Markdown

@arthtyagi is attempting to deploy a commit to the Vercel Labs Team on Vercel.

A member of the Team first needs to authorize it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant