test(e2e): restore onboard rebuild lifecycle parity - #5809
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (3)
📝 WalkthroughWalkthroughAdds test coverage for onboarding resume state handling and rebuild-related registry credential hashes. It also adds an implicit resume scenario, a fresh-mode override check, and an assertion that curated rebuild registry entries do not carry legacy provider credential hashes. ChangesOnboarding resume and rebuild registry coverage
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related issues
Suggested labels
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
Code Coverage OverviewLanguages: TypeScript TypeScript / code-coverage/pluginThe overall coverage in the Show a code coverage summary of the most covered files.
TypeScript / code-coverage/cliThe overall coverage in the Show a code coverage summary of the most covered files.
Updated |
E2E Advisor RecommendationRequired E2E: None Dispatch hint: Full advisor summaryE2E Recommendation AdvisorBase: Required E2E
Optional E2E
New E2E recommendations
Dispatch hint
|
Vitest E2E Scenario RecommendationRequired Vitest E2E scenarios: Dispatch required Vitest E2E scenarios:
Full Vitest E2E advisor summaryVitest E2E Scenario AdvisorBase: Required Vitest E2E scenarios
Optional Vitest E2E scenarios
Relevant changed files
|
PR Review Advisor — No blocking findingsMerge posture: No blocking advisor findings Action checklist
Test follow-ups to resolve or justifyIf these cover changed behavior, prefer adding them in this PR; otherwise state why existing coverage is enough or link the follow-up.
This is an automated, non-binding review; it still expects maintainers and agents to respond to each required or warning item. Treat suggestions as current-PR improvements when they touch changed code; defer only with maintainer rationale or a linked follow-up. A human maintainer must make the final merge decision. |
Vitest E2E Scenario Results — ✅ All requested jobs passedRun: 28186613360
|
…lifecycle' into e2e-parity/p0-b-onboard-rebuild-lifecycle
|
P0-B selective live validation is green: https://github.com/NVIDIA/NemoClaw/actions/runs/28186613360\n\n- onboard-resume-vitest: success\n- rebuild-hermes-vitest: success\n\nRebased/merged branch forward to current main without force-push and re-ran local target checks after updating:\n- npm test -- src/lib/onboard/machine/handlers/sandbox.test.ts test/helpers/e2e-answer-assertions.test.ts src/lib/actions/sandbox/sandbox-gateway-routing.test.ts src/lib/onboard/entry-options.test.ts src/lib/onboard/sandbox-registration.test.ts src/lib/actions/sandbox/rebuild-messaging-stage.test.ts\n- npm run typecheck:cli\n- npm run build:cli |
|
Addressing PR Review Advisor test follow-ups for P0-B:\n\n- PRA-T1: Scope gate evidence is in issue #5800 and PR body; #5225, #5487, #5410, and #5760 are merged and touched legacy test/e2e bash files. This PR covers only package P0-B contracts from those merged bash deltas.\n- PRA-T2: #5225 persisted gateway resolution is existing covered behavior in src/lib/actions/sandbox/sandbox-gateway-routing.test.ts, src/lib/onboard/gateway-binding.test.ts, and src/lib/onboard/sandbox-registration.test.ts. Re-tested locally in the target command listed above.\n- PRA-T3: #5225 diagnostic-output additions are waived as bash-runner verbosity, not a durable Vitest behavior contract. Functional repair/double-onboard behavior remains covered by existing live targets.\n- PRA-T4: #5760 whitespace-tolerant integer 42 behavior is existing covered behavior in test/helpers/e2e-answer-assertions.test.ts and consumed by the live tests named in the PR body. Re-tested locally in the target command listed above.\n- PRA-T5: #5760 hosted-compatible rebuild stabilization is validated by the selective live run: https://github.com/NVIDIA/NemoClaw/actions/runs/28186613360 (onboard-resume-vitest and rebuild-hermes-vitest both passed). Full/sandbox/launchable targets are not changed by this PR and are referenced as existing coverage, not required new assertions.\n\nNo additional P0-B code changes are needed from these advisory follow-ups. |
Summary
Restore issue #5800 parity package
P0-Bfor merged onboard/rebuild/lifecycle bash-suite deltas only.Related Issues
Refs #5800
Refs #5098
Refs #5225
Refs #5487
Refs #5410
Refs #5760
Scope gate
P0-B — Onboard/rebuild/lifecycle paritytest/e2e: yes — fix(sandbox): resolve gateway from persisted sandbox entry #5225, fix(onboard): auto-detect resume from an in_progress session #5487, refactor(messaging): clean up provider credential hashes from SandboxEntry (registry) #5410, fix(e2e): stabilize hosted inference and messaging rebuild #5760Parity map
nonesrc/lib/actions/sandbox/sandbox-gateway-routing.test.ts,src/lib/onboard/gateway-binding.test.ts,src/lib/onboard/sandbox-registration.test.tsnonetest/e2e-scenario/live/onboard-repair.test.ts,test/e2e-scenario/live/double-onboard.test.ts; diagnostics are bash-runner-only verbosity and not a durable Vitest assertion.nemoclaw onboardauto-detects anin_progresssession and resumes without--resume;--freshsuppresses auto-resume.hosted-compatible capabletest/e2e-scenario/live/onboard-resume.test.tsPhase 3.5 mutates the completed session toin_progress, asserts(resume mode)+ cached skips, then asserts--freshfails at injected preflight without resume banner.messaging.planrather than legacyproviderCredentialHashes; stale top-level provider hash state is not used.nonetest/e2e-scenario/live/rebuild-hermes.test.tscurated registry omitsproviderCredentialHashes;src/lib/onboard/machine/handlers/sandbox.test.tsrefreshes registry-plan credential hashes from env on rebuild resume.nonesrc/lib/actions/sandbox/rebuild-messaging-stage.test.tsandsrc/lib/onboard/machine/handlers/sandbox.test.ts.42.hosted-compatible capabletest/helpers/e2e-answer-assertions.test.ts, consumed byagent-turn-latency,full-e2e,launchable-smoke, andsandbox-operationslive Vitests.hosted-compatible capableInference mode support
hosted-compatible capablefor onboard-resume/rebuild-hermes/full/sandbox/launchable answer paths;nonefor unit/process registry and gateway routing tests.NEMOCLAW_RUN_E2E_SCENARIOS=1 npx vitest run --project e2e-scenarios-live test/e2e-scenario/live/onboard-resume.test.ts test/e2e-scenario/live/rebuild-hermes.test.tsfailed at prereq Docker daemon check before scenario assertions.Validation
git diff --checknpm test -- src/lib/onboard/machine/handlers/sandbox.test.ts test/helpers/e2e-answer-assertions.test.ts src/lib/actions/sandbox/sandbox-gateway-routing.test.ts src/lib/onboard/entry-options.test.ts src/lib/onboard/sandbox-registration.test.ts src/lib/actions/sandbox/rebuild-messaging-stage.test.tsnpm run typecheck:clinpm run build:clinpm run test-size:checkFollow-ups / waivers
Summary by CodeRabbit