Skip to content

ci(e2e): omit Jetson from automatic PR plans - #8230

Merged
prekshivyas merged 2 commits into
mainfrom
ci/temporarily-skip-jetson-pr-gate
Aug 4, 2026
Merged

ci(e2e): omit Jetson from automatic PR plans#8230
prekshivyas merged 2 commits into
mainfrom
ci/temporarily-skip-jetson-pr-gate

Conversation

@sandl99

@sandl99 sandl99 commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

Summary

Automatic PR E2E planning and PR Review Advisor recommendations selected jetson-nvmap-gpu, but the E2E workflow rejects that job unless an administrator confirms an online Jetson runner. This change omits only that job from both automatic surfaces until the Colossus-backed runner path can confirm runner availability; explicit manual dispatch remains available.

Related Issue

Relates to #7610.

Changes

  • Apply one trusted PR-planning rule to omit jetson-nvmap-gpu from automatic gate selections, advisor deterministic context, and advisor recommendation allowlists while leaving the generic focused-job selector and explicit manual workflow dispatch unchanged.
  • Add regression coverage for automatic omission, generic selector retention, preservation of other risk-selected jobs, required and optional model guidance, and dynamic credential-free selector discovery.
  • Document the temporary exception, guarded manual dispatch, and Colossus-backed removal condition in test/e2e/README.md.

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: The nine-category focused review found no issues. Trusted normalization rejects Jetson from deterministic, model-selected, and dynamically discovered advisor guidance; explicit administrator-guarded dispatch and every other risk-selected job remain unchanged.
  • 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: The reviewer covered all six changed files at b404713c5, reported no findings, and confirmed that automatic gate planning, advisor guidance, generic selector discovery, guarded manual dispatch, and the Colossus-backed restoration condition are consistent. The focused suite passed 107 tests; CLI type-checking, Biome, test-size, Markdown lint, and diff checks passed.
  • Agent: Codex CLI

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

  • 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: npx vitest run --project integration test/pr-e2e-gate.test.ts test/pr-e2e-gate-jetson-exclusion.test.ts test/e2e-recommendations.test.ts test/pr-review-advisor.test.ts passed 107 tests; npm run typecheck:cli and npm run test-size:check passed.
  • 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: San Dang sdang@nvidia.com

Summary by CodeRabbit

  • Bug Fixes

    • Automatic PR E2E planning and review recommendations now exclude the Jetson GPU job.
    • Required checks pass without running E2E when no eligible jobs or targets remain.
    • Other applicable cloud E2E jobs continue to run as required.
  • Documentation

    • Clarified that Jetson E2E runs remain available through manual dispatch with administrator confirmation that the runner is online.

Signed-off-by: San Dang <sdang@nvidia.com>
@sandl99 sandl99 self-assigned this Aug 4, 2026
@coderabbitai

coderabbitai Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

The PR-gate E2E planner and PR Review Advisor now exclude jetson-nvmap-gpu from automatic selections. Empty plans pass without E2E execution. Manual Jetson dispatch remains available with administrator confirmation.

Changes

Jetson PR-gate selection

Layer / File(s) Summary
PR planning eligibility predicate
tools/advisors/risk-plan.mts
Defines the omitted Jetson job and exports isPrE2ePlanningJob.
PR-gate selector and plan wiring
tools/e2e/pr-e2e-gate.mts
Adds a filtered selector and uses it for risk-plan validation, standard startup, and authorized fork execution.
Advisor filtering and exclusion validation
tools/advisors/e2e-recommendations.mts, tools/pr-review-advisor/analyze.mts, test/pr-e2e-gate-jetson-exclusion.test.ts, test/e2e/README.md
Filters Jetson from advisor results and validates exclusion across gate and recommendation paths. Documents manual dispatch behavior.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

Suggested labels: area: ci, area: e2e, platform: jetson

Suggested reviewers: jyaunches, cv, apurvvkumaria

🚥 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
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.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title directly and concisely describes the main change: omitting Jetson from automatic PR E2E plans, which is the central objective of the 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 ci/temporarily-skip-jetson-pr-gate

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

@github-code-quality

github-code-quality Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Code Coverage Overview

Languages: TypeScript

TypeScript / code-coverage/plugin

The overall coverage in commit b404713 in the ci/temporarily-skip-... branch remains at 96%, unchanged from commit bef5d0b in the main branch.

TypeScript / code-coverage/cli

The overall coverage in commit b404713 in the ci/temporarily-skip-... branch remains at 81%, unchanged from commit bef5d0b in the main branch.

Show a code coverage summary of the most impacted files.
File main bef5d0b ci/temporarily-skip-... b404713 +/-
src/lib/policy/...ne-exclusion.ts 96% 92% -4%
src/lib/private-networks.ts 93% 90% -3%
src/lib/shields/index.ts 68% 68% 0%
src/lib/sandbox...rce-identity.ts 87% 87% 0%
src/lib/tunnel/services.ts 76% 76% 0%
src/lib/inferen...er-discovery.ts 87% 88% +1%

Updated August 04, 2026 15:51 UTC

@sandl99
sandl99 requested review from cjagwani and jyaunches and removed request for cjagwani August 4, 2026 15:22
@github-actions

github-actions Bot commented Aug 4, 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 · 0 blockers · 0 warnings · 0 suggestions
  • Model comparison: normalized findings match; normalized terminology decisions differ; normalized E2E selections match; severity counts match.
4 terminology differences from the second opinion

Advisory only. These are normalized differences from the primary terminology receipt.

  • Colossus at test/e2e/README.md:653: selected only by the second-opinion lane as justified.
  • guarded at test/pr-e2e-gate-jetson-exclusion.test.ts:17: selected only by the second-opinion lane as established.
  • PR E2E planning at test/e2e/README.md:641: selected only by the second-opinion lane as justified.
  • automatic PR planning at tools/advisors/risk-plan.mts:158: selected only by the second-opinion lane as justified.

Second-opinion terminology and E2E selections are advisory. They do not change the primary assessment or E2E / PR Gate.

3 semantic terminology decisions

Terminology decisions are advisory. They affect the assessment only when a separate finding identifies concrete semantic impact.

  • justified — automatic PR E2E planning at test/e2e/README.md:641: Keep this term. The modifier distinguishes automatic PR selection from explicit manual dispatch.
  • define — Jetson omission at test/e2e/README.md:646: Define the omission by naming jetson-nvmap-gpu at first use, as the surrounding changed text does.
  • define — Colossus-backed Jetson runner path at test/e2e/README.md:653: Keep the term with its adjacent availability and online-state removal conditions.

E2E guidance

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

Recommended E2E: cloud-inference, cloud-onboard, security-posture

Workflow run details

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

Signed-off-by: San Dang <sdang@nvidia.com>

@cjagwani cjagwani left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Approved for the exact code revision b404713c55e5fe5a7e3539b9fd51a67f90645af6, subject to required CI completing successfully.

Nine-category security review: PASS with no findings.

  1. Secrets/credentials: no credential handling changes.
  2. Input validation: the omission is a fixed trusted job ID, not PR-controlled input.
  3. Authentication/authorization: explicit manual E2E main dispatch and its administrator/runner guard remain unchanged.
  4. Dependencies: none.
  5. Error handling/logging: no new sensitive output or failure suppression outside the named automatic selection.
  6. Cryptography/data protection: not applicable.
  7. Secure configuration: automatic planning, deterministic validation, advisor normalization, and dynamic credential-free discovery share one predicate and omit only jetson-nvmap-gpu.
  8. Security tests: focused tests prove the ordinary inventory still sees Jetson, the PR plan omits it while retaining other risk-selected jobs, and required/optional/dynamic advisor paths cannot reintroduce it.
  9. System/sandbox security: no runner, workflow credential, sandbox, or host policy is changed.

Cross-issue sweep: #8142 is the formal design/ownership track for restoring trusted Jetson execution, and #8099 remains the exact-head hardware-validation consumer. Please add Refs #8142 to the PR body so the temporary omission and its removal condition are connected to that accepted design work. This PR does not replace #8099's required manual Jetson evidence.

@prekshivyas
prekshivyas merged commit 83870a9 into main Aug 4, 2026
98 checks passed
@prekshivyas
prekshivyas deleted the ci/temporarily-skip-jetson-pr-gate branch August 4, 2026 16:16
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.

4 participants