Skip to content

test(e2e): hermeticize DCode fresh re-onboard inference#6581

Closed
apurvvkumaria wants to merge 2 commits into
mainfrom
codex/pr6530-hermetic-reonboard-replacement
Closed

test(e2e): hermeticize DCode fresh re-onboard inference#6581
apurvvkumaria wants to merge 2 commits into
mainfrom
codex/pr6530-hermetic-reonboard-replacement

Conversation

@apurvvkumaria

@apurvvkumaria apurvvkumaria commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

Summary

Move the Deep Agents Code fresh re-onboard live check to the existing hermetic OpenAI-compatible endpoint instead of forwarding a hosted inference key into that path. This is a clean, verified replacement for #6530; Ho Lim's original implementation is preserved and credited as co-author.

Related Issue

Supersedes #6530 because its published branch conflicts with current main and its PR description cannot satisfy the current DCO declaration gate.

Changes

  • Use the hermetic compatible-inference fixture for fresh DCode re-onboarding.
  • Refuse leaked hosted inference environment in that check and record the expected fake inference request.
  • Preserve current-main credential-canary, config-read, mutation-boundary, and safe shell-quoting coverage while reconciling the original change.

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: this changes only internal live-E2E validation and does not alter commands, configuration, defaults, APIs, or policy behavior.
  • Sensitive paths changed (security, policy, credentials, preflight, onboarding, inference, runner, sandbox, or messaging)
  • Sensitive-path review completed or maintainer-approved waiver recorded — the check now fails on hosted-key leakage and uses only the hermetic fake endpoint; the current-main credential-canary and quoting boundaries remain intact.
  • Non-success, skipped, or missing CI check accepted by maintainer — check name, approval link, and follow-up issue:

Verification

  • PR description includes the DCO sign-off declaration and every commit appears as Verified in GitHub
  • Normal pre-commit, commit-msg, and pre-push hooks passed, or npm run check:diff passed when hooks were skipped or unavailable
  • Targeted behavior tests pass for the current change set, or tests are marked not applicable above — focused e2e-support validation passed 25/25 tests.
  • Applicable broad gate passed — npm run check:diff, CLI build, and CLI type-check passed on the replacement commit.
  • 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: Apurv Kumaria akumaria@nvidia.com

Summary by CodeRabbit

  • Bug Fixes

    • Updated the cloud experimental “fresh re-onboard” flow to run without a hosted inference API key, while still using the correct endpoint wiring.
    • Added stronger verification that the hermetic-compatible inference endpoint was actually consulted during re-onboarding.
  • Tests

    • Expanded end-to-end coverage for the fresh re-onboard scenario using a fake endpoint and stubbed executables.
    • Added assertions for authenticated model requests and ensured hosted inference secrets never appear in logs.

Co-authored-by: Ho Lim <subhoya@gmail.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
@apurvvkumaria apurvvkumaria added area: e2e End-to-end tests, nightly failures, or validation infrastructure chore Build, CI, dependency, or tooling maintenance v0.0.79 Release target labels Jul 9, 2026
@apurvvkumaria apurvvkumaria self-assigned this Jul 9, 2026
@github-code-quality

github-code-quality Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Code Coverage Overview

Languages: TypeScript

TypeScript / code-coverage/plugin

The overall coverage remains at 96%, unchanged from the main branch.

TypeScript / code-coverage/cli

The overall coverage in the codex/pr6530-hermeti... branch remains at 77%, unchanged from the main branch.

Show a code coverage summary of the most impacted files.
File main 4970809 codex/pr6530-hermeti... e4165b4 +/-
src/lib/onboard...ndbox-create.ts 60% 64% +4%
src/lib/actions...flight-phase.ts 94% 98% +4%
src/lib/actions...estore-phase.ts 87% 93% +6%
src/lib/onboard...ovider-reuse.ts 94% 100% +6%
src/lib/actions...de-preflight.ts 51% 60% +9%
src/lib/onboard...e-patch-flow.ts 61% 71% +10%
src/lib/actions...try-rollback.ts 74% 85% +11%
src/lib/actions...confirmation.ts 69% 81% +12%
src/lib/actions...saging-stage.ts 88% 100% +12%
src/lib/actions...light-guards.ts 71% 88% +17%

Updated July 09, 2026 16:51 UTC
Code Coverage is in Public Preview. Learn more and provide us with your feedback.

@coderabbitai

coderabbitai Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

The fresh re-onboard e2e check script now starts hermetic compatible inference, uses that endpoint during re-onboarding, and verifies the endpoint was consulted. The cloud-experimental runner withholds API keys for that script, and the e2e support tests cover the new key handling and request behavior.

Changes

Fresh re-onboard hermetic inference flow

Layer / File(s) Summary
Fresh re-onboard script: hermetic inference setup and cleanup
test/e2e/e2e-cloud-experimental/checks/04-deepagents-code-fresh-reonboard.sh
Relocates CREDENTIAL_CANARY, adds a cleanup() trap to stop hermetic inference on exit, removes the COMPATIBLE_API_KEY requirement, starts hermetic compatible inference, wires NEMOCLAW_ENDPOINT_URL into the re-onboard command, asserts hermetic inference usage, and updates the passed count to 12.
API key withholding helper and runner wiring
test/e2e/live/cloud-experimental-checks.ts
Adds cloudExperimentalApiKeyForCheck to withhold the API key for the fresh re-onboard script and updates runE2eCloudExperimentalChecks to compute and conditionally redact a per-script API key.
Hermetic inference support helpers
test/e2e/lib/hermetic-compatible-inference.sh, test/e2e/lib/openai-compatible-api-proof.sh
Hermetic-compatible inference startup now requires authenticated model endpoint access, and the fake OpenAI-compatible API readiness probe now accepts both 200 and 401 responses from GET /v1/models.
Tests: fresh re-onboard against fake endpoint and API key withholding
test/e2e/support/platform-parity-cloud-experimental.test.ts
The platform-parity test adds a writeExecutable helper and shared script constant wiring, runs the fresh re-onboard check against stubbed binaries and a fake endpoint while asserting secret values do not leak and model requests are authenticated, and verifies the withholding helper returns an empty key only for the fresh re-onboard script.

Estimated code review effort: 3 (Moderate) | ~25 minutes

Sequence Diagram(s)

sequenceDiagram
  participant Script as 04-deepagents-code-fresh-reonboard.sh
  participant Hermetic as HermeticCompatibleInference
  participant Onboard as onboard --fresh

  Script->>Hermetic: nemoclaw_e2e_start_hermetic_compatible_inference
  Hermetic-->>Script: startup result
  Script->>Onboard: run with NEMOCLAW_ENDPOINT_URL
  Onboard-->>Script: re-onboard complete
  Script->>Hermetic: nemoclaw_e2e_assert_hermetic_compatible_inference_used
  Script->>Hermetic: cleanup() on EXIT trap
Loading

Suggested reviewers: jyaunches, cv

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title is clear, concise, and matches the main change: hermeticizing the DCode fresh re-onboard inference path.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
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
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/pr6530-hermetic-reonboard-replacement

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

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

PR Review Advisor (Nemotron Ultra) — Informational

Merge posture: Informational / low confidence
Primary next action: Resolve or justify PRA-1: PR review advisor unavailable.
Open items: 0 required · 1 warning · 0 suggestions · 0 test follow-ups
Top item: PR review advisor unavailable

Action checklist

  • PRA-1 Resolve or justify: PR review advisor unavailable

Findings index

ID Severity Category Location Required action
PRA-1 Resolve/justify correctness Re-run the PR Review Advisor or perform a manual review.
Review findings by urgency: 0 required fixes, 1 item to resolve/justify, 0 in-scope improvements

⚠️ Resolve or justify before merge

Investigate these in the current review; either fix them, explain why they are not applicable, or document the accepted risk.

PRA-1 Resolve/justify — PR review advisor unavailable

  • Location: not file-specific
  • Category: correctness
  • Problem: The automated advisor could not complete: PR review advisor SDK execution failed: session: omitted required tool result(s): pr_review_scope_risk_context, pr_review_git_diff; scope-risk-map-analysis omitted required analysis; turn: scope-risk-map-analysis: 429 status code (no body)
  • Impact: Automated review evidence is incomplete, so human review must cover the changed code manually.
  • Recommended action: Re-run the PR Review Advisor or perform a manual review.
  • Expected follow-up: Resolve in this PR or explain why the risk is acceptable.
  • Verification: Inspect the workflow logs and raw advisor artifact for the execution failure.
  • Missing regression test: No regression test recommendation is available because the advisor did not complete.
  • Done when: The risk is fixed or explicitly justified in the PR. Verification: Inspect the workflow logs and raw advisor artifact for the execution failure.
  • Evidence: PR review advisor SDK execution failed: session: omitted required tool result(s): pr_review_scope_risk_context, pr_review_git_diff; scope-risk-map-analysis omitted required analysis; turn: scope-risk-map-analysis: 429 status code (no body)

💡 In-scope improvements

These are lower-risk, not throwaway. Prefer fixing them in this PR when they are local to changed code; defer only with rationale or a linked follow-up.

  • None.

Workflow run details

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.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

E2E Advisor Recommendation

Required E2E: None
Optional E2E: None

Workflow run

Full advisor summary

E2E Recommendation Advisor

Failed: Advisor SDK provider error: session: 429 status code (no body); turn: analysis: 429 status code (no body)

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

E2E Target Recommendation

Required E2E targets: None
Optional E2E targets: None

Workflow run

Full E2E target advisor summary

E2E Target Advisor

Failed: Target advisor SDK provider error: session: omitted required tool result(s): e2e_target_metadata, e2e_target_changed_files, e2e_target_risk_plan, e2e_target_git_diff, e2e_target_response_schema; turn: target-analysis: 429 status code (no body)

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

PR Review Advisor — Informational

Merge posture: Informational / low confidence
Primary next action: Resolve or justify PRA-1: PR review advisor unavailable.
Open items: 0 required · 1 warning · 0 suggestions · 0 test follow-ups
Top item: PR review advisor unavailable

Action checklist

  • PRA-1 Resolve or justify: PR review advisor unavailable

Findings index

ID Severity Category Location Required action
PRA-1 Resolve/justify correctness Re-run the PR Review Advisor or perform a manual review.
Review findings by urgency: 0 required fixes, 1 item to resolve/justify, 0 in-scope improvements

⚠️ Resolve or justify before merge

Investigate these in the current review; either fix them, explain why they are not applicable, or document the accepted risk.

PRA-1 Resolve/justify — PR review advisor unavailable

  • Location: not file-specific
  • Category: correctness
  • Problem: The automated advisor could not complete: PR review advisor SDK execution failed: session: scope-risk-map-analysis omitted required analysis; turn: scope-risk-map-analysis: 429 status code (no body)
  • Impact: Automated review evidence is incomplete, so human review must cover the changed code manually.
  • Recommended action: Re-run the PR Review Advisor or perform a manual review.
  • Expected follow-up: Resolve in this PR or explain why the risk is acceptable.
  • Verification: Inspect the workflow logs and raw advisor artifact for the execution failure.
  • Missing regression test: No regression test recommendation is available because the advisor did not complete.
  • Done when: The risk is fixed or explicitly justified in the PR. Verification: Inspect the workflow logs and raw advisor artifact for the execution failure.
  • Evidence: PR review advisor SDK execution failed: session: scope-risk-map-analysis omitted required analysis; turn: scope-risk-map-analysis: 429 status code (no body)

💡 In-scope improvements

These are lower-risk, not throwaway. Prefer fixing them in this PR when they are local to changed code; defer only with rationale or a linked follow-up.

  • None.

Workflow run details

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.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

E2E Target Results — ❌ Some jobs failed

Run: 29033459812
Workflow ref: codex/pr6530-hermetic-reonboard-replacement
Requested targets: ubuntu-repo-cloud-langchain-deepagents-code
Requested jobs: (default — all default-enabled free-standing jobs; explicit-only jobs openshell-gateway-auth-contract, mcp-bridge-dev, hermes-gpu-startup, sandbox-rlimits-connect, and jetson-nvmap-gpu are skipped unless selected)
Summary: 0 passed, 1 failed, 0 cancelled, 0 skipped

Job Result
live ❌ failure

Failed jobs: live. Check run artifacts for logs.

@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.

Required exact-head live evidence failed deterministically on 22614a84fb4b3a11719112e278f597e16d9fccd6 (run 29033459812, job 86172239210).

The changed fresh-re-onboard check reached its new hermetic assertion, but the fake endpoint log contained only GET /v1/models with authorizationSent:false and no inference POST. That GET is the fake server helper's own readiness probe, so the real nemoclaw onboard --fresh path did not exercise the hermetic endpoint at all. The support test currently masks this because its fake nemoclaw executable explicitly manufactures a POST that production onboarding did not make.

Please make the acceptance path prove the real behavior—for example, explicitly drive a managed inference request after re-onboard and then assert the authenticated fake-endpoint POST, or redefine and test the intended onboarding contract without a synthetic fixture-only POST. Then rerun ubuntu-repo-cloud-langchain-deepagents-code. I am not retrying the unchanged head because this failure is code/test-specific, not infrastructure.

Separately, the remaining static-checks failure is the known external release-fetch 504 and is not this review blocker.

Treat the authenticated models probe as provider-validation evidence.

Do not claim that onboarding runs inference.

Co-authored-by: Ho Lim <subhoya@gmail.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

E2E Target Results — ❌ Some jobs failed

Run: 29034363838
Workflow ref: codex/pr6530-hermetic-reonboard-replacement
Requested targets: ubuntu-repo-cloud-langchain-deepagents-code
Requested jobs: (default — all default-enabled free-standing jobs; explicit-only jobs openshell-gateway-auth-contract, mcp-bridge-dev, hermes-gpu-startup, sandbox-rlimits-connect, and jetson-nvmap-gpu are skipped unless selected)
Summary: 0 passed, 1 failed, 0 cancelled, 0 skipped

Job Result
live ❌ failure

Failed jobs: live. Check run artifacts for logs.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (1)
test/e2e/lib/hermetic-compatible-inference.sh (1)

46-68: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Duplicated request-log parsing logic.

This function repeats the same file-existence check, JSON-line parsing, and error-throwing structure as nemoclaw_e2e_assert_hermetic_compatible_inference_used (lines 69-96). Consider extracting a shared helper (bash function returning the parsed entries, or a small shared Node snippet) to avoid the two implementations drifting.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@test/e2e/lib/hermetic-compatible-inference.sh` around lines 46 - 68, The
request-log parsing and validation logic in
nemoclaw_e2e_assert_hermetic_compatible_endpoint_consulted duplicates the same
flow used by nemoclaw_e2e_assert_hermetic_compatible_inference_used, so extract
the shared file-existence check and JSONL parsing into a common helper and have
both functions call it. Keep the endpoint-specific consultation assertion in
nemoclaw_e2e_assert_hermetic_compatible_endpoint_consulted, but move the
repeated Node parsing/error handling into one reusable bash or Node helper to
prevent drift.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@test/e2e/lib/hermetic-compatible-inference.sh`:
- Line 27: The readiness probe request to /v1/models is being counted in the
shared request log with auth: "missing", which causes the hermetic inference
auth assertion to fail. Update the startup/test flow around
NEMOCLAW_FAKE_OPENAI_REQUIRE_AUTH_MODELS=1 so the readiness probe is excluded
from the request-log auth check, either by filtering that probe in
nemoclaw_e2e_assert_hermetic_compatible_inference_used or by clearing the log
after startup. Use the existing readiness probe and request log handling in
hermetic-compatible-inference.sh to locate the fix.

---

Nitpick comments:
In `@test/e2e/lib/hermetic-compatible-inference.sh`:
- Around line 46-68: The request-log parsing and validation logic in
nemoclaw_e2e_assert_hermetic_compatible_endpoint_consulted duplicates the same
flow used by nemoclaw_e2e_assert_hermetic_compatible_inference_used, so extract
the shared file-existence check and JSONL parsing into a common helper and have
both functions call it. Keep the endpoint-specific consultation assertion in
nemoclaw_e2e_assert_hermetic_compatible_endpoint_consulted, but move the
repeated Node parsing/error handling into one reusable bash or Node helper to
prevent drift.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: e300f726-6887-41fe-a992-f1ff65623357

📥 Commits

Reviewing files that changed from the base of the PR and between 22614a8 and e4165b4.

📒 Files selected for processing (4)
  • test/e2e/e2e-cloud-experimental/checks/04-deepagents-code-fresh-reonboard.sh
  • test/e2e/lib/hermetic-compatible-inference.sh
  • test/e2e/lib/openai-compatible-api-proof.sh
  • test/e2e/support/platform-parity-cloud-experimental.test.ts
🚧 Files skipped from review as they are similar to previous changes (2)
  • test/e2e/support/platform-parity-cloud-experimental.test.ts
  • test/e2e/e2e-cloud-experimental/checks/04-deepagents-code-fresh-reonboard.sh

export FAKE_OPENAI_API_KEY="$fake_key"
export FAKE_OPENAI_REQUIRE_AUTH=1
export NEMOCLAW_FAKE_OPENAI_REQUESTS_FILE="$FAKE_OPENAI_REQUESTS_FILE"
export NEMOCLAW_FAKE_OPENAI_REQUIRE_AUTH_MODELS=1

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
rg -n 'FAKE_OPENAI_REQUESTS_FILE' test/e2e --type sh --type ts
rg -n 'nemoclaw_e2e_assert_hermetic_compatible_inference_used|nemoclaw_e2e_assert_hermetic_compatible_endpoint_consulted' test/e2e/e2e-cloud-experimental/checks/04-deepagents-code-fresh-reonboard.sh -A2 -B2

Repository: NVIDIA/NemoClaw

Length of output: 1364


🏁 Script executed:

#!/bin/bash
set -euo pipefail

printf '\n## hermetic-compatible-inference.sh\n'
cat -n test/e2e/lib/hermetic-compatible-inference.sh | sed -n '1,220p'

printf '\n## openai-compatible-api-proof.sh\n'
cat -n test/e2e/lib/openai-compatible-api-proof.sh | sed -n '1,220p'

printf '\n## 04-deepagents-code-fresh-reonboard.sh relevant section\n'
cat -n test/e2e/e2e-cloud-experimental/checks/04-deepagents-code-fresh-reonboard.sh | sed -n '230,320p'

Repository: NVIDIA/NemoClaw

Length of output: 13242


🏁 Script executed:

#!/bin/bash
set -euo pipefail

printf '\n## fake-openai-compatible.ts outline\n'
ast-grep outline test/e2e/fixtures/fake-openai-compatible.ts --view expanded

printf '\n## auth/request logging references\n'
rg -n 'auth|requestsFile|REQUESTS_FILE|require_auth_models|requireAuthModels|models' test/e2e/fixtures/fake-openai-compatible.ts -n -A3 -B3

printf '\n## request log write path\n'
cat -n test/e2e/fixtures/fake-openai-compatible.ts | sed -n '1,260p'

Repository: NVIDIA/NemoClaw

Length of output: 11824


🏁 Script executed:

#!/bin/bash
set -euo pipefail

printf '\n## server script outline\n'
ast-grep outline test/e2e/lib/fake-openai-compatible-api.mts --view expanded

printf '\n## logging and readiness references\n'
rg -n 'requestsFile|auth:|authorizationSent|requireAuthModels|/v1/models|writeFileSync|appendFileSync|readiness' test/e2e/lib/fake-openai-compatible-api.mts -A4 -B4

printf '\n## relevant server body\n'
cat -n test/e2e/lib/fake-openai-compatible-api.mts | sed -n '1,260p'

Repository: NVIDIA/NemoClaw

Length of output: 15843


Exclude the readiness probe from the request-log auth check. NEMOCLAW_FAKE_OPENAI_REQUIRE_AUTH_MODELS=1 makes the unauthenticated /v1/models readiness request record auth: "missing" in the shared requests file, and nemoclaw_e2e_assert_hermetic_compatible_inference_used fails on any missing-auth entry. Filter that probe out or clear the log after startup.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@test/e2e/lib/hermetic-compatible-inference.sh` at line 27, The readiness
probe request to /v1/models is being counted in the shared request log with
auth: "missing", which causes the hermetic inference auth assertion to fail.
Update the startup/test flow around NEMOCLAW_FAKE_OPENAI_REQUIRE_AUTH_MODELS=1
so the readiness probe is excluded from the request-log auth check, either by
filtering that probe in nemoclaw_e2e_assert_hermetic_compatible_inference_used
or by clearing the log after startup. Use the existing readiness probe and
request log handling in hermetic-compatible-inference.sh to locate the fix.

@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.

The replacement head e4165b4d63cdaf1b234b3f1d3120c85cddeb06b3 still has the same acceptance-test fidelity blocker. Required exact-head run 29034363838 (job 86175352196) failed deterministically after the first seven assertions. Its complete fake-endpoint record was only GET /v1/models, auth: missing, authorizationSent: false.

That request is the helper's startup readiness probe (openai-compatible-api-proof.sh), which now intentionally accepts the 401. Production onboard --fresh still made no request to the hermetic endpoint. The support test masks this by changing its fake nemoclaw executable to manufacture an authenticated GET /models, just as the previous head manufactured a POST. Replacing the synthetic request type does not validate production behavior.

Please exercise a real production boundary after re-onboard, or accurately redefine the contract without asserting a network consultation production onboarding does not perform. The fixture must not create the sole evidence itself. CodeRabbit's current major finding about the readiness record is related, but merely clearing/filtering readiness would leave zero production requests and would not fix the live failure.

Both commits are Verified and DCO-compliant; this request is about correctness/test fidelity. I am not retrying the unchanged head.

@apurvvkumaria

Copy link
Copy Markdown
Collaborator Author

Closing after exact-head live validation exposed a conceptual mismatch with #5747. The only request in the artifact is the helper readiness probe: an unauthenticated GET /v1/models that correctly receives 401 when model-list auth is enabled. Production re-onboard intentionally skips host-side validation for the sandbox-internal host and makes no endpoint request, so accepting or authenticating that readiness probe would make fixture setup the sole false-positive evidence. More importantly, this ordered target runs check #7 after #4 in the same sandbox. #4 changes compatible-endpoint to the ephemeral fake and stops it on EXIT; #7 then requires /v1/models HTTP 200 plus a real dcode -n PONG. The route would be dead, and even a kept-alive default fake response would replace the required live-inference contract. A correct Pattern-C conversion needs an isolated sandbox/target or a target-level lifecycle redesign, not a narrow patch here. Ho Lim remains credited as co-author on the preserved investigation commit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: e2e End-to-end tests, nightly failures, or validation infrastructure chore Build, CI, dependency, or tooling maintenance v0.0.79 Release target

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants