Skip to content

Fix v0.7.1 release-validation hang with deterministic failure fixture - #23

Merged
eybersjp merged 13 commits into
mainfrom
fix/v071-release-validation-hang
Aug 17, 2026
Merged

Fix v0.7.1 release-validation hang with deterministic failure fixture#23
eybersjp merged 13 commits into
mainfrom
fix/v071-release-validation-hang

Conversation

@eybersjp

@eybersjp eybersjp commented Aug 17, 2026

Copy link
Copy Markdown
Owner

Problem

The controlled v0.8.1 release reached npm run v071:validate after all preceding release gates passed, then remained alive until the release workflow's 25-minute timeout cancelled the job. No tag or package was published.

Targeted process-isolated diagnostics proved that TEST F was the only failing/hanging regression. The test used OS-specific special paths (Z:\\... on Windows and /proc/... on Linux) to simulate an unwritable project root. The Linux /proc pseudo-filesystem made that failure contract non-deterministic in GitHub Actions.

Fix

  • Replace the OS-special-path fixture in TEST F with a portable temporary fixture: create a regular file and attempt to bootstrap beneath it, producing an immediate ENOTDIR/equivalent failure on Windows, Linux, and macOS.
  • Consume and verify the Control Center HTML response in TEST K as normal HTTP test hygiene.
  • Add the canonical npm run v071:validate gate to normal pull-request CI so this suite is exercised before release time.

Verification

  • All TEST A–M regressions passed under isolated diagnostics after the fixture correction.
  • The exact monolithic npm run v071:validate command used by the release pipeline now passes in GitHub Actions.
  • Full PR CI passes, including skills/agents, plugin sync, documentation, OpenCode, platform adapters, research contract, v0.7.1 regressions, and Autopilot/evaluations.
  • Temporary diagnostic runner and speculative Runtime API shutdown change were removed before merge.

Release safety

This does not bypass or weaken the release gate. It makes the existing failure-path test deterministic and moves the same canonical regression suite earlier into PR validation. v0.8.1 will be retried only after this PR is merged.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1e2b4de4e7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .github/workflows/ci.yml
run: npm run research:validate

- name: Validate v0.7.1 regression suite
run: npm run v071:validate

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Fix TEST F before requiring the regression suite in CI

On the Ubuntu/Linux runner configured for this job, this newly required command never completes: v071:validate runs TEST F, where bootstrapProject('/proc/invalid_dir/test') hangs in the recursive fs.mkdirSync call. I verified that TEST K now exits successfully in isolation, but TEST F and the full command time out, so every push and pull request will consume the 15-minute job timeout rather than reaching the remaining validation step. Replace TEST F's /proc fixture with a reliably unwritable, non-hanging fixture before enabling this gate.

AGENTS.md reference: AGENTS.md:L27-L27

Useful? React with 👍 / 👎.

@eybersjp eybersjp changed the title Fix v0.7.1 regression shutdown hang in release validation Fix v0.7.1 release-validation hang with deterministic failure fixture Aug 17, 2026
@eybersjp
eybersjp merged commit 3a5c5fd into main Aug 17, 2026
2 checks passed
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