Skip to content

test(ci): adopt harness startup/teardown race fix, drop startup-timeout workarounds (#1139)#1149

Draft
heskew wants to merge 2 commits into
mainfrom
ci/harness-race-fix-1139
Draft

test(ci): adopt harness startup/teardown race fix, drop startup-timeout workarounds (#1139)#1149
heskew wants to merge 2 commits into
mainfrom
ci/harness-race-fix-1139

Conversation

@heskew

@heskew heskew commented Jun 5, 2026

Copy link
Copy Markdown
Member

Summary

Downstream integration of the harness race fix tracked by #1139. The actual fix lives upstream in @harperfast/integration-testing (detail: HarperFast/integration-testing#8, fix: HarperFast/integration-testing#9). This PR adopts it on the harper side:

  • Bump @harperfast/integration-testing ^0.3.1^0.5.0. The old ^0.3.1 caret pins <0.4.0, so harper was resolving 0.3.1 regardless of newer harness releases.
  • Remove both HARPER_INTEGRATION_TEST_STARTUP_TIMEOUT_MS overrides (120000 Linux / 180000 Windows) from integration-tests.yml. Add some unit tests #9 replaces the fixed wall-clock startup deadline with an idle watchdog + CI-aware absolute ceiling, so the overrides are obsolete — and now semantically stale, since under Add some unit tests #9 that env var means the idle / no-output window, not an absolute deadline.

⏳ Blocked on — what we're waiting for

HarperFast/integration-testing#9 must merge and publish a new harness version before this can be finalized and merged. Until then, two things are intentionally left for finalization:

  1. Confirm the published version and adjust the ^0.5.0 pin if it differs. I assumed 0.5.0 per semver-for-0.x (Add some unit tests #9 carries a breaking behavior change). If it ships as 0.4.1, it's a one-line edit.
  2. Regenerate the lockfile: npm install @harperfast/integration-testing@<version>. package-lock.json is intentionally not updated here because ^0.5.0 isn't published yet.

Because of (2), this PR's own CI will fail at the install step (package.json / lockfile out of sync, and the version is unresolvable) until finalization. Expected — that's why it's a draft.

Scope note

This addresses the harness-race contributor only. The dominant Integration Tests flake remains replay-stress.test.ts (#1136), tracked separately — CI won't be green from this change alone.

Related

Closes #1139


🤖 Generated with Claude Code

…ut workarounds

Integrate the integration-testing#9 fix for the two harness races tracked
by #1139 (upstream detail: integration-testing#8):

- Bump @harperfast/integration-testing ^0.3.1 -> ^0.5.0. The ^0.3.1 caret
  pinned <0.4.0, so harper was resolving 0.3.1 regardless of newer releases.
- Remove the HARPER_INTEGRATION_TEST_STARTUP_TIMEOUT_MS overrides
  (120000 Linux / 180000 Windows). #9 replaces the fixed wall-clock startup
  deadline with an idle watchdog + CI-aware absolute ceiling, so the overrides
  are obsolete. They're also now semantically stale: under #9 that env var
  means the idle/no-output window, not an absolute deadline.

GATED on the integration-testing#9 release. Two things to finalize once the
new harness version is published:
  1. Confirm the published version and adjust the ^0.5.0 pin if it differs
     (0.5.0 assumed per semver-for-0.x: #9 carries a breaking behavior change).
  2. Run `npm install @harperfast/integration-testing@<version>` to regenerate
     package-lock.json (lockfile intentionally not updated here -- ^0.5.0 is not
     yet published).

Note: this addresses the harness-race contributor only. The dominant
Integration Tests flake remains replay-stress.test.ts (#1136), tracked
separately.

Refs #1139
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

@gemini-code-assist gemini-code-assist 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.

Code Review

This pull request updates the @harperfast/integration-testing dependency in package.json from version ^0.3.1 to ^0.5.0 under devDependencies. There are no review comments, and I have no additional feedback to provide.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

@claude

claude Bot commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Reviewed; no blockers found.

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.

Integration test harness: startup-deadline and teardown/loopback-recycle races (tracks integration-testing#8)

2 participants