Skip to content

ci: dump function-server log when an e2e suite fails - #690

Merged
jumski merged 1 commit into
mainfrom
ci/portable-e2e-suite-failure-log
Oct 1, 2026
Merged

jumski merged 1 commit into
mainfrom
ci/portable-e2e-suite-failure-log

Conversation

@jumski

@jumski jumski commented Oct 1, 2026

Copy link
Copy Markdown
Contributor

Why

The portable-runtime e2e job failed on four changeset-release/main CI runs (current PR #687 and its predecessors), always the same way:

Error: Timeout after 60000ms waiting for test_seq to increment by 200
portable runtimes - max_concurrency works in supabase => portable-runtimes.test.ts:507

The other 13 tests pass, including the same 200-message workload under node and bun. The suite passes locally on both the base commit and the exact release diff of #687 (14/14, supabase variant in 3–4s), so the cause is runner-side.

run-e2e.sh keeps the supabase functions serve output in a mktemp file GitHub Actions never prints. That log is the only place worker errors appear (isolate CPU-limit shutdowns, forced sql close on deadline), so CI failures are undiagnosable today.

What

  • run_with_functions_server prints the server log to stderr when the monitored suite command fails; successful suites stay silent.
  • Self-test covers: failing suite dumps the log, passing suite produces no stderr, exit-status propagation unchanged.

Local evidence: edge-worker:test:lifecycle passes (functions-server self-test included), portable suite 14/14, standard e2e 13/13.

The portable-runtime e2e job timed out on four changeset-release/main CI
runs (PR #687 and predecessors) with only 'Timeout after 60000ms waiting
for test_seq to increment by 200'. The same suite passes locally on both
the base commit and the exact release diff, so the runner-side evidence
lives in the supabase functions serve log — which run-e2e.sh keeps in a
mktemp file that GitHub Actions never prints.

Print the server log to stderr from run_with_functions_server when the
monitored command fails, so the next CI failure carries worker errors
(isolate CPU-limit shutdowns, forced sql close) instead of a bare timeout.
Successful suites stay silent to avoid megabytes of noise.

Extend the functions-server self-test: failing suite dumps the log,
passing suite produces no stderr, exit statuses unchanged.
@changeset-bot

changeset-bot Bot commented Oct 1, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: a5285db

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@nx-cloud

nx-cloud Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

View your CI Pipeline Execution ↗ for commit a5285db

Command Status Duration Result
nx run-many -t build --projects=dsl,core,cli ✅ Succeeded 4s View ↗

💡 Verify your cache is correct by running tasks in a sandbox. Read docs ↗


☁️ Nx Cloud last updated this comment at 2026-10-01 17:31:18 UTC

@jumski
jumski merged commit c3e8b63 into main Oct 1, 2026
16 checks passed
@jumski
jumski deleted the ci/portable-e2e-suite-failure-log branch October 1, 2026 17:38
@github-actions

github-actions Bot commented Oct 1, 2026

Copy link
Copy Markdown
Contributor

🚀 Production Deployment: Website

✅ Successfully deployed to production!

🔗 Production URL: https://pgflow.dev

📝 Details:

  • Commit: c3e8b638c3fa0804312f17689f0898239c35b444
  • View Logs

Deployed at: 2026-10-01T19:38:12+02:00

This branch was successfully deployed

1 active deployment
preview — a5285db4 Deployed Oct 1, 2026 by jumski via deploy-website #3411
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