Skip to content

fix(e2e): dispatch full plan after PR fixes - #7868

Merged
jyaunches merged 1 commit into
mainfrom
codex/e2e-remediation-full-plan
Jul 30, 2026
Merged

fix(e2e): dispatch full plan after PR fixes#7868
jyaunches merged 1 commit into
mainfrom
codex/e2e-remediation-full-plan

Conversation

@jyaunches

@jyaunches jyaunches commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Summary

After a selected E2E test fails, a fixed internal PR commit now dispatches its complete selected E2E plan when eligible PR CI passes. Evidence from the failed commit cannot satisfy the fixed commit's coordination check.

Changes

  • Remove the same-repository maintainer-approval stop from PR E2E dispatch while preserving fork-only approval.
  • Add a regression test that advances from a failed PR commit to a fixed commit and verifies one dispatch containing the complete new plan.
  • Replace exact head, exact-head, and exact revision language in the PR E2E gate area with PR commit terminology.

Type of Change

  • Code change (feature, bug fix, or refactor)
  • Code change with doc updates
  • Doc only (prose changes, no code sample modifications)
  • Doc only (includes code sample changes)

Quality Gates

  • Tests added or updated for changed behavior
  • Existing tests cover changed behavior — justification:
  • Tests not applicable — justification:
  • Docs updated for user-facing behavior changes
  • Docs not applicable — justification:
  • Sensitive paths changed (security, policy, credentials, preflight, onboarding, inference, runner, sandbox, or messaging)
  • Sensitive-path review completed or maintainer-approved waiver recorded — reviewer/approval link/justification: Maintainer-requested PR gate change. Fork credential protection remains unchanged, and the focused controller tests cover automatic internal dispatch and fork-only approval.
  • Non-success, skipped, or missing CI check accepted by maintainer — check name, approval link, and follow-up issue:

Documentation Writer Review

  • Documentation writer subagent reviewed the completed changes
  • Result: docs-updated
  • Evidence: test/e2e/README.md documents automatic same-repository dispatch, complete-plan dispatch after a fixed commit, commit-bound evidence, and fork-only approval. The review found no remaining terminology or documentation findings.
  • Agent: Codex Desktop

DGX Station Hardware Evidence

  • Tested on DGX Station
  • Tested commit:
  • Station profile/scenario:
  • Result:
  • Supporting evidence:

Verification

  • PR description includes a Signed-off-by: line and every commit appears as Verified in GitHub
  • Normal pre-commit, commit-msg, and pre-push hooks passed, or npm run validate:pr passed after refreshing origin/main when hooks were skipped or unavailable
  • Targeted behavior tests pass for the current change set, or tests are marked not applicable above — command/result or justification: The complete PR gate suite passed 320 tests. The affected E2E-support suites passed 58 tests, and the terminology follow-up rerun passed 27 tests.
  • Applicable broad gate passed — npm test for broad runtime/test-harness changes; npm run check for repo-wide validation/coverage changes — command/result:
  • Quality Gates section completed with required justifications or waivers
  • No secrets, API keys, or credentials committed
  • npm run docs builds without warnings (doc changes only)
  • Doc pages follow the style guide (doc changes only)
  • New doc pages include SPDX header and frontmatter (new pages only)

Signed-off-by: Julie Yaunches jyaunches@nvidia.com

Summary by CodeRabbit

  • New Features

    • Internal pull requests with eligible E2E changes can automatically start deterministic E2E validation after CI passes.
    • Failed E2E gate runs can be retried automatically on a newer pull request revision.
    • Fork pull requests now have clearer approval and reviewed-execution status messages.
  • Bug Fixes

    • Invalid internal approval requests are rejected immediately.
    • E2E coordination now fails safely when required state does not match.
  • Documentation

    • Updated E2E workflow guidance, fallback behavior, approval rules, and recovery scenarios.

@jyaunches jyaunches self-assigned this Jul 30, 2026
@coderabbitai

coderabbitai Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: a8b739c0-4ff3-42dd-8c3d-4e84b519cb36

📥 Commits

Reviewing files that changed from the base of the PR and between 376beb5 and b38f242.

📒 Files selected for processing (17)
  • .github/workflows/e2e.yaml
  • test/e2e/README.md
  • test/e2e/live/rebuild-hermes.test.ts
  • test/e2e/support/trusted-hermes-swap-workflow-boundary.test.ts
  • test/pr-e2e-gate-command.test.ts
  • test/pr-e2e-gate-dispatch-recovery.test.ts
  • test/pr-e2e-gate-fork-approval.test.ts
  • test/pr-e2e-gate-lifecycle.test.ts
  • test/pr-e2e-gate-remediation.test.ts
  • test/pr-e2e-gate-retry-history.test.ts
  • test/pr-e2e-gate-typed-target.test.ts
  • test/pr-e2e-required.test.ts
  • test/pr-risk-plan.test.ts
  • tools/advisors/risk-plan.mts
  • tools/e2e/live-vitest-invocation.mts
  • tools/e2e/pr-e2e-gate.mts
  • tools/e2e/trusted-hermes-swap-workflow-boundary.mts
💤 Files with no reviewable changes (2)
  • test/pr-risk-plan.test.ts
  • tools/advisors/risk-plan.mts

📝 Walkthrough

Walkthrough

The PR E2E controller now dispatches internal revisions automatically, restricts approve-e2e to fork pull requests, updates recorded-SHA coordination semantics, and adds remediation coverage. Trusted Hermes comments, documentation, and related tests adopt PR E2E terminology.

Changes

PR E2E gate behavior

Layer / File(s) Summary
Trusted Hermes and PR E2E terminology
.github/workflows/e2e.yaml, test/e2e/README.md, test/e2e/live/*, test/e2e/support/*, tools/e2e/live-vitest-invocation.mts, tools/e2e/trusted-hermes-swap-workflow-boundary.mts
Updates exact-head terminology and documents PR E2E runner, fallback, and controller semantics.
Fork-only authorization controller
tools/advisors/risk-plan.mts, tools/e2e/pr-e2e-gate.mts, test/pr-risk-plan.test.ts
Removes credentialed control-plane authorization decisions and rejects approve-e2e for internal pull requests.
Internal dispatch and remediation flow
test/e2e/README.md, test/pr-e2e-gate-dispatch-recovery.test.ts, test/pr-e2e-gate-remediation.test.ts, test/pr-e2e-gate-retry-history.test.ts
Documents and tests automatic internal dispatch, retry behavior, and remediation on a later PR revision.
Fork approval and coordination validation
test/e2e/README.md, test/pr-e2e-gate-command.test.ts, test/pr-e2e-gate-fork-approval.test.ts, test/pr-e2e-gate-lifecycle.test.ts, test/pr-e2e-gate-required.test.ts
Updates fork approval wording, recorded SHA inputs, coordination titles, lifecycle fixtures, and rejection coverage.

Estimated code review effort: 4 (Complex) | ~45 minutes

Possibly related PRs

Suggested labels: area: ci, area: e2e, integration: hermes, bug-fix

Suggested reviewers: cv, brandonpelfrey, aasthajh

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: dispatching the full E2E plan after a PR is fixed.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/e2e-remediation-full-plan

Comment @coderabbitai help to get the list of available commands.

@github-code-quality

github-code-quality Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Code Coverage Overview

Languages: TypeScript

TypeScript / code-coverage/plugin

The overall coverage in commit b38f242 in the codex/e2e-remediatio... branch remains at 96%, unchanged from commit 376beb5 in the main branch.

TypeScript / code-coverage/cli

The overall coverage in commit b38f242 in the codex/e2e-remediatio... branch remains at 81%, unchanged from commit 376beb5 in the main branch.

Show a code coverage summary of the most impacted files.
File main 376beb5 codex/e2e-remediatio... b38f242 +/-
src/lib/domain/.../connect-env.ts 97% 89% -8%
src/lib/sandbox...rce-identity.ts 88% 88% 0%
src/lib/tunnel/services.ts 73% 73% 0%

Updated July 30, 2026 02:51 UTC

@github-actions

github-actions Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

PR Review Advisor — No blocking findings reported

Advisor assessment: No blocking advisor findings reported
Next action: No advisor follow-up needed.
Findings: 0 blockers · 0 warnings · 0 suggestions

Model lanes

  • GPT-5.6 Terra (primary): Completed · high confidence · 0 blockers · 0 warnings · 0 suggestions
  • Nemotron 3 Ultra (second opinion): Completed · high confidence · 1 blocker · 1 warning · 2 suggestions
  • Model comparison: normalized findings differ; normalized E2E selections differ; Nemotron reported 1 more blocker, 1 more warning, 2 more suggestions.

Nemotron output stays in workflow artifacts and does not change the assessment above.

E2E guidance

Advisory only. E2E / PR Gate selects and runs jobs independently.

Recommended E2E: cloud-inference, cloud-onboard, security-posture, rebuild-hermes, rebuild-hermes-stale-base

Workflow run details

This automated review informs maintainers. Warnings and suggestions do not require a response. A maintainer decides whether to merge.

@jyaunches
jyaunches merged commit deefc61 into main Jul 30, 2026
74 of 77 checks passed
@jyaunches
jyaunches deleted the codex/e2e-remediation-full-plan branch July 30, 2026 13:46
@jyaunches jyaunches mentioned this pull request Jul 30, 2026
23 tasks
jyaunches added a commit that referenced this pull request Jul 30, 2026
<!-- markdownlint-disable MD041 -->
## Summary

Update the canonical NemoClaw v0.0.98 release entry with the
managed-image security remediation that merged after the original
release documentation.
The entry now records reviewed Perl 5.44.0 packages across OpenClaw,
Hermes, and Deep Agents Code images and the native multi-platform
publication check.

## Changes

- Update `docs/changelog/2026-07-29.mdx` under the existing `## v0.0.98`
heading.
- Record the checksum-pinned Perl 5.44.0 packages and native
`linux/amd64` and `linux/arm64` digest checks from
[#7864](#7864).
- Confirm that the other post-entry merges,
[#7868](#7868) and
[#7866](#7866), change E2E
orchestration or tests without changing user-facing behavior.

### Source Summary

- [#7864](#7864) ->
`docs/changelog/2026-07-29.mdx`: Record the reviewed Perl 5.44.0
packages and native multi-platform publication checks for managed
OpenClaw, Hermes, and Deep Agents Code images.

## Type of Change

- [ ] Code change (feature, bug fix, or refactor)
- [ ] Code change with doc updates
- [x] Doc only (prose changes, no code sample modifications)
- [ ] Doc only (includes code sample changes)

## Quality Gates

- [ ] Tests added or updated for changed behavior
- [x] Existing tests cover changed behavior — justification: The merged
source PR includes security-package, runtime, and publication tests.
`test/changelog-docs.test.ts` validates the release-entry structure.
- [ ] Tests not applicable — justification:
- [x] Docs updated for user-facing behavior changes
- [ ] Docs not applicable — justification:
- [ ] Sensitive paths changed (security, policy, credentials, preflight,
onboarding, inference, runner, sandbox, or messaging)
- [ ] Sensitive-path review completed or maintainer-approved waiver
recorded — reviewer/approval link/justification:
- [ ] Non-success, skipped, or missing CI check accepted by maintainer —
check name, approval link, and follow-up issue:

## Documentation Writer Review

- [ ] Documentation writer subagent reviewed the completed changes
- Result: `blocked`
- Evidence: This side-conversation host does not permit subagents. The
primary author reviewed `docs/changelog/2026-07-29.mdx` against
`WRITING.md`, the controlled word list, and `docs/CONTRIBUTING.md`. The
changelog contract passed 6 tests, and the docs build completed with 0
errors and 2 existing Fern warnings.
- Agent: Codex Desktop side conversation
<!-- docs-review-head-sha: 8e92d96 -->
<!-- docs-review-agents-blob-sha: c052d60 -->

## DGX Station Hardware Evidence

- [ ] Tested on DGX Station
- Tested commit: Not applicable. `scripts/prepare-dgx-station-host.sh`
is unchanged.
- Station profile/scenario: Not applicable.
- Result: Not applicable.
- Supporting evidence: Not applicable.

## Verification

- [x] PR description includes a `Signed-off-by:` line and every commit
appears as `Verified` in GitHub
- [x] Normal `pre-commit`, `commit-msg`, and `pre-push` hooks passed, or
`npm run validate:pr` passed after refreshing `origin/main` when hooks
were skipped or unavailable
- [x] Targeted behavior tests pass for the current change set, or tests
are marked not applicable above — `npm exec -- vitest run
test/changelog-docs.test.ts` passed 6 tests.
- [ ] Applicable broad gate passed — `npm test` for broad
runtime/test-harness changes; `npm run check` for repo-wide
validation/coverage changes — command/result: Not run for this
documentation-only change.
- [x] Quality Gates section completed with required justifications or
waivers
- [x] No secrets, API keys, or credentials committed
- [ ] `npm run docs` builds without warnings (doc changes only) — The
build completed with 0 errors and 2 existing Fern warnings.
- [x] Doc pages follow the [style
guide](https://github.com/NVIDIA/NemoClaw/blob/main/docs/CONTRIBUTING.md)
(doc changes only)
- [ ] New doc pages include SPDX header and frontmatter (new pages only)
— No new page was added.

---
Signed-off-by: Julie Yaunches <jyaunches@nvidia.com>

Signed-off-by: Julie Yaunches <jyaunches@nvidia.com>
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.

2 participants