Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
59b14bd
fix(e2e): support native inference in trusted runtime harness
prekshivyas Oct 22, 2026
b66dce5
test(e2e): bind legacy workload fixture to its runtime
prekshivyas Oct 22, 2026
55e801e
fix(e2e): select gateway schema for the trusted runtime
prekshivyas Oct 22, 2026
7cc386d
fix(e2e): validate native gateway authentication schema
prekshivyas Oct 22, 2026
d659fc7
fix(e2e): approve new state volumes for native runtime
prekshivyas Oct 22, 2026
1a4011c
fix(e2e): detach managed startup hold before setup
prekshivyas Oct 22, 2026
cc1b46a
fix(e2e): apply managed startup through native state owner
prekshivyas Oct 22, 2026
68219a2
fix(e2e): wait for normal agent pairing to settle
prekshivyas Oct 22, 2026
eee891f
fix(e2e): preserve required Landlock mode on OpenShell 0.1.3
prekshivyas Oct 22, 2026
990d05d
test(e2e): report redacted local inference responses
prekshivyas Oct 22, 2026
b9a2fd2
merge(main): include current installer and validation hardening
prekshivyas Oct 22, 2026
1945d6b
fix(e2e): enable Qwen tool calls in protected vLLM
prekshivyas Oct 22, 2026
69fd6f1
fix(e2e): serve the native Qwen context window
prekshivyas Oct 22, 2026
cf4fba0
fix(e2e): enable Nemotron tool calls in protected NIM
prekshivyas Oct 22, 2026
584b3e2
fix(e2e): parse Nemotron reasoning in protected NIM
prekshivyas Oct 22, 2026
3e575d9
fix(ci): align native runtime fixtures and reviewed bundle
prekshivyas Oct 22, 2026
f36a926
fix(test): pin regenerated managed startup bundle
prekshivyas Oct 22, 2026
e826d1d
fix(ci): refresh qualified Pi image receipts
prekshivyas Oct 22, 2026
4dafb59
fix(e2e): bind trusted runtime authority
prekshivyas Oct 22, 2026
d85bfa6
test(e2e): update recovery version fixture
prekshivyas Oct 22, 2026
bbc4484
fix(runtime): reject GPU backup cleanup targets
prekshivyas Oct 22, 2026
e918f0d
fix(runtime): preserve Podman transport bounds
prekshivyas Oct 22, 2026
1ec714c
Merge remote-tracking branch 'origin/main' into codex/pr13635-advisor…
prekshivyas Oct 22, 2026
b035276
fix(runtime): scope backup cleanup refusal
prekshivyas Oct 22, 2026
e9e0488
fix(openshell): tolerate stale start error snapshots
prekshivyas Oct 23, 2026
db3cdce
fix(runtime): bind volume rollback to creation identity
prekshivyas Oct 23, 2026
cc495ba
fix(runtime): preserve rollback state and bound protected checks
prekshivyas Oct 24, 2026
063849c
fix(ci): reconcile main and repair qualification checks
prekshivyas Oct 26, 2026
57e779c
fix(e2e): clean partial fixture volumes and refresh Pi receipts
prekshivyas Oct 26, 2026
e87a803
fix(runtime): bind workspace copies to portable runtime authority
prekshivyas Oct 26, 2026
2e52972
merge: resolve conflicts with main
github-actions[bot] Oct 26, 2026
9e927b3
fix(onboard): preserve exact workspace identities and default selection
prekshivyas Oct 26, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .github/workflows/e2e.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5253,6 +5253,7 @@ jobs:
shell: bash
run: |
set -euo pipefail
printf 'NEMOCLAW_PROTECTED_RUNTIME_STARTED_AT_MS=%s000\n' "$(date +%s)" >> "$GITHUB_ENV"
[[ "$REPOSITORY" == "NVIDIA/NemoClaw" && ( ( "$EVENT_NAME" == "push" && "$REF" == "refs/heads/main" ) || ( "$EVENT_NAME" == "workflow_dispatch" && "$REF" == refs/heads/* ) ) ]] || {
echo "::error::Protected managed-image runtime must run from NVIDIA/NemoClaw" >&2
exit 1
Expand Down Expand Up @@ -5539,6 +5540,7 @@ jobs:
npx tsx tools/e2e/live-vitest-invocation.mts run --test-path test/e2e/live/managed-image-protected-runtime.test.ts

- name: Remove isolated protected runtime registry
timeout-minutes: 2
if: always()
shell: bash
run: |
Expand All @@ -5565,6 +5567,7 @@ jobs:
fi

- name: Restore trusted OpenShell sources
timeout-minutes: 1
if: ${{ always() && steps.openshell-projection.outcome == 'success' }}
shell: bash
env:
Expand All @@ -5575,13 +5578,15 @@ jobs:
node tools/e2e/protected-openshell-workspace.mts restore > "$E2E_ARTIFACT_DIR/openshell-projection-restored.json"

- name: Upload protected managed-image runtime artifacts
timeout-minutes: 4
if: always()
uses: NVIDIA/NemoClaw/.github/actions/upload-e2e-artifacts@7768e15eb90d3ee2d33432f481dfe8747e4f6d57
with:
name: e2e-managed-image-protected-runtime
path: e2e-artifacts/live/managed-image-protected-runtime/

- name: Clean up Docker auth
timeout-minutes: 1
if: always()
shell: bash
run: bash .github/scripts/docker-auth-cleanup.sh
Expand Down
14 changes: 7 additions & 7 deletions ci/e2e-assertion-budget.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"$comment": "SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\nSPDX-License-Identifier: Apache-2.0\n\nInitial no-growth baseline for issue #10934 and Epic #10920. The epic reference remains fixed at fe18b2f004e2304c52db33cf7bb5895828197f9a. Current main is lower because #10722 removed the live Shields assertion suites before this ratchet landed. PR #10341 adds the accepted public deferred-install and same-home credential continuation boundary for Hermes and Deep Agents Code; existing per-file budgets remain unchanged. PR #13055 adds five explicitly approved assertions for the native Deep Agents Code OpenRouter request in the existing hosted OpenRouter target. PR #13293 consolidates native-local cases into the existing OpenClaw switching owner. Removing duplicated deterministic metadata and direct mock requests lowers suite totals while retaining real authenticated and sentinel agent turns, lifecycle, model switching, credential isolation and sibling denial. Per-file transitive counts include existing imported helpers; no live files or suite assertion points are added. PR #13596 adds four assertions to the existing double-onboard target for #13595: the managed OpenClaw state volume exists before `nemoclaw uninstall`, uninstall succeeds, the volume is gone afterwards, and same-name onboarding succeeds.",
"$comment": "SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\nSPDX-License-Identifier: Apache-2.0\n\nInitial no-growth baseline for issue #10934 and Epic #10920. The epic reference remains fixed at fe18b2f004e2304c52db33cf7bb5895828197f9a. Current main is lower because #10722 removed the live Shields assertion suites before this ratchet landed. PR #10341 adds the accepted public deferred-install and same-home credential continuation boundary for Hermes and Deep Agents Code; existing per-file budgets remain unchanged. PR #13055 adds five explicitly approved assertions for the native Deep Agents Code OpenRouter request in the existing hosted OpenRouter target. PR #13293 consolidates native-local cases into the existing OpenClaw switching owner. Removing duplicated deterministic metadata and direct mock requests lowers suite totals while retaining real authenticated and sentinel agent turns, lifecycle, model switching, credential isolation and sibling denial. Per-file transitive counts include existing imported helpers; no live files or suite assertion points are added.\n\nPR #13596 adds four assertions to the existing double-onboard target for #13595: the managed OpenClaw state volume exists before `nemoclaw uninstall`, uninstall succeeds, the volume is gone afterwards, and same-name onboarding succeeds.",
"schemaVersion": 1,
"issue": 10934,
"epic": 10920,
Expand All @@ -13,7 +13,7 @@
},
"limits": {
"testFileCount": 77,
"liveFileCount": 186,
"liveFileCount": 187,
"direct": {
"expectCalls": 1270,
"matcherAssertions": 1250,
Expand All @@ -32,11 +32,11 @@
"nodeAssertions": 131,
"namedAssertionHelpers": 668,
"failCalls": 1,
"throwGuards": 526,
"throwGuards": 531,
"objectFieldAssertions": 266,
"assertionPoints": 3265,
"generatedProbeBlocks": 207,
"generatedProbeConditions": 712
"assertionPoints": 3270,
"generatedProbeBlocks": 208,
"generatedProbeConditions": 713
},
"fileMetricOrder": [
"directExpectCalls",
Expand Down Expand Up @@ -83,7 +83,7 @@
"test/e2e/live/llama-cpp-generic-gpu.test.ts": [17,35,33,61,2],
"test/e2e/live/managed-image-activation-e2e.test.ts": [0,0,12,25,0],
"test/e2e/live/managed-image-multiarch-startup.test.ts": [1,1,1,7,0],
"test/e2e/live/managed-image-protected-runtime.test.ts": [0,0,39,76,15],
"test/e2e/live/managed-image-protected-runtime.test.ts": [0,0,39,81,16],
"test/e2e/live/mcp-bridge.test.ts": [39,138,193,518,46],
"test/e2e/live/messaging-compatible-endpoint.test.ts": [13,19,13,28,2],
"test/e2e/live/messaging-providers.test.ts": [0,11,6,51,11],
Expand Down
6 changes: 5 additions & 1 deletion ci/e2e-assertion-growth-exceptions.json

Large diffs are not rendered by default.

8 changes: 4 additions & 4 deletions ci/pi-agent-qualification-v1-linux-amd64.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@
"agent": "pi",
"platform": "linux/amd64",
"image": "ghcr.io/nvidia/nemoclaw/pi-sandbox",
"digest": "sha256:f7774c105ecb12d6f4b3e2c4aed3bf44a34c7dd227408729eefb4fb39965f045",
"reference": "ghcr.io/nvidia/nemoclaw/pi-sandbox@sha256:f7774c105ecb12d6f4b3e2c4aed3bf44a34c7dd227408729eefb4fb39965f045",
"digest": "sha256:b529abf6e8d896ead20c4ad00ff0da268f18349a7cdc5478857d094bbf304b54",
"reference": "ghcr.io/nvidia/nemoclaw/pi-sandbox@sha256:b529abf6e8d896ead20c4ad00ff0da268f18349a7cdc5478857d094bbf304b54",
"source": {
"repository": "NVIDIA/NemoClaw",
"revision": "9e8d4a90c9265a7304f86ae49dfb850d8a772fa0",
"revision": "063849c04f811af760c827b118190ee9a8581483",
"release": "v0.1.0",
"cohort": "ghrun-40123781968-1"
"cohort": "ghrun-40335218142-1"
},
"startupProfileContractVersion": 1,
"capabilityContractVersion": 1
Expand Down
8 changes: 4 additions & 4 deletions ci/pi-agent-qualification-v1-linux-arm64.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@
"agent": "pi",
"platform": "linux/arm64",
"image": "ghcr.io/nvidia/nemoclaw/pi-sandbox",
"digest": "sha256:119936eab2d834f8a1f3ca857a1b318e04903b39ed7b07227c5dfcbf35428694",
"reference": "ghcr.io/nvidia/nemoclaw/pi-sandbox@sha256:119936eab2d834f8a1f3ca857a1b318e04903b39ed7b07227c5dfcbf35428694",
"digest": "sha256:bd5a54699b8bea585091ee837ccfc13d9723eb6a338572dda829b424ec3255bb",
"reference": "ghcr.io/nvidia/nemoclaw/pi-sandbox@sha256:bd5a54699b8bea585091ee837ccfc13d9723eb6a338572dda829b424ec3255bb",
"source": {
"repository": "NVIDIA/NemoClaw",
"revision": "9e8d4a90c9265a7304f86ae49dfb850d8a772fa0",
"revision": "063849c04f811af760c827b118190ee9a8581483",
"release": "v0.1.0",
"cohort": "ghrun-40123781968-1"
"cohort": "ghrun-40335218142-1"
},
"startupProfileContractVersion": 1,
"capabilityContractVersion": 1
Expand Down
Loading
Loading