Skip to content

perf(e2e): accelerate Hermes rebuild validation#7213

Merged
cv merged 66 commits into
mainfrom
codex/7144-rebuild-hermes-perf
Jul 22, 2026
Merged

perf(e2e): accelerate Hermes rebuild validation#7213
cv merged 66 commits into
mainfrom
codex/7144-rebuild-hermes-perf

Conversation

@apurvvkumaria

@apurvvkumaria apurvvkumaria commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

Summary

The Hermes rebuild lanes now bootstrap their dependencies once, pull a digest-pinned historical fixture, and carry the exact validated current-base identity through the immutable rebuild handoff. Repeated ubuntu-latest samples reduced the normal median from 1000.5s to 618.5s (38.2%) and the stale-base median from 1068s to 614.5s (42.5%) without weakening state, readiness, replacement, or provenance assertions.

This is incremental progress toward #7144. It does not implement or waive the issue's reusable cross-job BuildKit cache requirement, so #7144 remains open.

Related Issue

Part of #7144

Changes

  • Pull the historical Hermes fixture by immutable digest, verify its provenance before use, reuse the prepared current base across rebuild phases, and keep the stale-base refresh boundary intact.
  • Separate OpenShell/bootstrap setup from the timed rebuild contract and emit per-phase timing plus runner-resource evidence for comparable repeated samples.
  • Preserve state more defensively by failing closed on SQLite backup errors or missing state files and by cleaning temporary immutable base-image handoffs.
  • Carry validated base resolution metadata through recreate, managed Dockerfile preparation, and the final image labels so the rebuilt sandbox proves the exact phase-one base identity.
  • Reconcile the rebuild handoff with fix(images): require trusted base image overrides #6884's approved trust contract: locally built bases carry the signed per-operation provenance lease, pinned official bases retain the stricter immutable identity/ABI/runtime binder, and arbitrary local aliases remain rejected. Focused base-image and rebuild-preflight tests protect both paths.
  • Verify backup/restore, sandbox replacement, readiness, state schema, base layers, image labels, and current/stale lane behavior in focused and live E2E coverage.
  • Keep the existing Docker-engine cache security boundary. This PR does not add an external Buildx builder, registry cache, or reusable cross-job BuildKit cache; that requirement remains open in perf(e2e): reduce rebuild-hermes runtime with pinned fixtures and reusable build cache #7144 pending its security-design decision.

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 internal rebuild implementation and E2E coverage without adding a command, option, environment variable, migration, or user choice; the required docs review found existing rebuild and base-image validation documentation already accurate.
  • 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: provenance remains fail-closed for arbitrary aliases and is adopted only after exact immutable identity, platform, official digest, ABI, and Hermes runtime proof. Focused negative tests cover every rejected mismatch; earlier live samples exercised the normal and stale-base behaviors, and final exact-head E2E remains pending after branch convergence.
  • Non-success, skipped, or missing CI check accepted by maintainer — check name, approval link, and follow-up issue:

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 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 — command/result or justification: the focused reconciliation suite passed 129 tests; npm run build:cli and npm run typecheck:cli passed; exact-head GitHub CI is running and protected E2E remains pending.
  • 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; diff-scoped hooks and focused runtime/support tests cover the changed rebuild contract.
  • 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
    • Improved Hermes rebuilds by preserving and validating base-image identity/provenance across phases, including correct reuse handling and immutable temporary handoffs.
    • Added safer temporary base-image handoff cleanup with best-effort disposal and retry on cleanup failures.
    • Rebuilds now abort when required sandbox state files fail to back up, unless --force is enabled.
    • Improved SQLite backup/restore reliability via isolated Python execution and stricter empty-output failure handling.
  • New Features
    • Hermes rebuild flow now carries pre-resolved base-image provenance into target/image preflights.
    • Added trusted local override support and scoped base-image reuse tagging/cleanup.
  • Tests
    • Expanded Hermes end-to-end coverage (base identity evidence, reuse planning, stale-base classification, cleanup/disposal, and workflow boundary validation), including OpenShell binary install/version checks.
  • Documentation
    • Clarified --force behavior for manifest-declared state file backup failures and updated sandbox base-image override constraints.

HOYALIM and others added 30 commits July 14, 2026 13:31
Signed-off-by: Ho Lim <subhoya@gmail.com>
Signed-off-by: Ho Lim <subhoya@gmail.com>
Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
@apurvvkumaria

Copy link
Copy Markdown
Collaborator Author

@senthilr-nv @cjagwani The requested #7213 follow-up is now pushed on exact head 2c7ce22f5a4cc62096afb06960550e0d90209f48.

  • The outer preflight now retains the already-verified canonical imageName@sha256 reference instead of retagging it to an unleased temporary local alias.
  • The recreate handoff is scoped to the operation and accepted only when its immutable ref, repository, digest, and resolution metadata agree; mismatch/reuse paths remain fail-closed.
  • The protected Hermes test now defaults NEMOCLAW_CLI_BIN to the exact checked-out bin/nemoclaw.js, covering the trusted-base-workflow transition where the job-level variable is absent.
  • Added outer-preflight -> recreate override -> real resolver coverage and mismatch/rejection coverage.
  • 67 focused tests, 9 E2E-support tests, Biome, repository hooks, and CLI type-check pass. All three new commits are GitHub Verified and DCO is green.

Current-head CI and the protected E2E gate have restarted. Please re-review once the selected Hermes lanes finish.

cjagwani added 2 commits July 21, 2026 12:32
Signed-off-by: Charan Jagwani <cjagwani@nvidia.com>
Signed-off-by: Charan Jagwani <cjagwani@nvidia.com>

@senthilr-nv senthilr-nv 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 requested changes look good to me. I will approve once the branch is refreshed onto current main and the E2E gate passes.

apurvvkumaria and others added 3 commits July 21, 2026 12:43
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Charan Jagwani <cjagwani@nvidia.com>
Signed-off-by: Charan Jagwani <cjagwani@nvidia.com>
cjagwani and others added 8 commits July 21, 2026 13:46
Signed-off-by: Charan Jagwani <cjagwani@nvidia.com>
Signed-off-by: Charan Jagwani <cjagwani@nvidia.com>
Co-authored-by: Charan Jagwani <cjagwani@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Co-authored-by: Charan Jagwani <cjagwani@nvidia.com>
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Charan Jagwani <cjagwani@nvidia.com>
Signed-off-by: Charan Jagwani <cjagwani@nvidia.com>
Signed-off-by: Charan Jagwani <cjagwani@nvidia.com>
@apurvvkumaria
apurvvkumaria dismissed cjagwani’s stale review July 21, 2026 23:57

Stale against current head 26f3b0c: the PR is explicitly scoped as incremental progress toward #7144, reconciles the #6884 trust contract, is refreshed from main, and the exact-head 11-target E2E run completed with the PR-specific rebuild-hermes-stale-base target passing. The remaining aggregate failures are unrelated Hermes transport/gateway lanes.

@cv
cv merged commit 6264ac4 into main Jul 22, 2026
50 of 53 checks passed
@cv
cv deleted the codex/7144-rebuild-hermes-perf branch July 22, 2026 01:59
cv pushed a commit that referenced this pull request Jul 22, 2026
<!-- markdownlint-disable MD041 -->
## Summary

Add the canonical `v0.0.91` changelog entry that was missed before the
release tag was cut. Correct the custom-image compatibility guidance
because the tagged code still accepts the legacy inference route
selector instead of removing it in v0.0.91.

## Changes

- Add `docs/changelog/2026-07-22.mdx` with the release summary and
detailed security, rebuild, Hermes, DGX Station, and
historical-validation changes from the published v0.0.91 announcement.
- Link shipped behavior to the most specific published OpenClaw and
Hermes documentation routes.
- Correct the v0.0.90 changelog and command reference so they match the
compatibility fallback present in the tagged v0.0.91 code without
inventing a new removal version.
- Keep the immutable v0.0.91 release tag unchanged; this is the
documented post-release recovery path.

Source summary:

- [#7332](#7332),
[#7289](#7289), and
[#7294](#7294) ->
`docs/changelog/2026-07-22.mdx`: Summarize completed-image `node-tar`
remediation and current and historical container verification.
- [#7213](#7213),
[#7363](#7363),
[#7366](#7366), and
[#7369](#7369) ->
`docs/changelog/2026-07-22.mdx`: Summarize trusted base preparation,
backup reuse, deletion convergence, and rebuild confidence.
- [#7212](#7212) ->
`docs/changelog/2026-07-22.mdx`: Summarize the Hermes API bearer-token
lifecycle and supported retrieval command.
- [#7327](#7327) and
[#7328](#7328) ->
`docs/changelog/2026-07-22.mdx`: Summarize qualified DGX Station
guidance and reproducible coding-agent installation instructions.
- [#7355](#7355),
[#7360](#7360),
[#7362](#7362), and
[#7364](#7364) ->
`docs/changelog/2026-07-22.mdx`: Summarize restored historical OpenClaw
upgrade and Hermes rebuild validation.
- [#7189](#7189) ->
`docs/changelog/2026-07-20.mdx`, `docs/reference/commands.mdx`: Correct
its forward-looking removal deadline after v0.0.91 shipped with the
documented legacy fallback still present.
- [#7282](#7282),
[#7306](#7306), and
[#7341](#7341) need no additional
user-guide update because they already update their owned contributor or
user-facing text directly.

## 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:
`test/changelog-docs.test.ts` validates dated changelog structure, SPDX
syntax, version ordering, and published routes.
- [ ] 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:

## DGX Station Hardware Evidence

- [ ] Tested on DGX Station
- Tested commit: Not applicable; this documentation-only PR does not
change Station preparation or runtime behavior.
- 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 check:diff` passed when hooks were skipped or unavailable
- [x] Targeted behavior tests pass for the current change set, or tests
are marked not applicable above — `npx vitest run
test/changelog-docs.test.ts` (6 passed).
- [ ] Applicable broad gate passed — `npm test` for broad
runtime/test-harness changes; `npm run check` for repo-wide
validation/coverage changes — not run; this is a focused
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) —
completed with 0 errors and 2 existing site-wide 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)
— the native changelog entry uses the required parser-safe MDX SPDX
comment and intentionally has no frontmatter.

---
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Documentation**
* Updated v0.0.91 guidance for custom Dockerfiles, including continued
legacy compatibility and recommended migration to
`NEMOCLAW_INFERENCE_PROVIDER_ID`.
* Added release notes covering image security scanning, safer rebuild
behavior, token management, DGX Station guidance, and deterministic
release validation.
* Clarified that existing custom images may continue using the legacy
selector temporarily, with fallback removal planned for a future
release.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Co-authored-by: cjagwani <cjagwani@nvidia.com>
miyoungc added a commit that referenced this pull request Jul 22, 2026
<!-- markdownlint-disable MD041 -->
## Summary

This draft completes the two unowned follow-ups from the v0.0.91
post-tag documentation audit.
It documents the remaining rebuild data-loss and base-image override
constraints, and preserves flat Markdown legacy routes for the
Additional Setup migration.

## Changes

- #7213 -> `docs/manage-sandboxes/recover-rebuild-sandboxes.mdx` and
`docs/changelog/2026-07-22.mdx`: Document when `rebuild --force` can
continue after a manifest-declared state-file backup failure, what state
it restores, and which base-image overrides remain trusted.
- #7261 -> `fern/docs.yml`, `scripts/check-docs-published-routes.mts`,
and `test/station-doc-ownership.test.ts`: Add direct `.md` and `.mdx`
redirects for the pre-variant DGX Station and Windows Prerequisites
routes, reject duplicate mappings, and validate each destination against
the published route index.
- Existing Markdown clients require the redirect compatibility paths
because Fern's generic redirects do not preserve these retired flat
routes.

## 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

- [x] Tests added or updated for changed behavior
- [ ] Existing tests cover changed behavior, justification:
- [ ] 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:

## DGX Station Hardware Evidence

- [ ] Tested on DGX Station
- Tested commit: Not applicable. This PR changes documentation routes
only.
- 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 check:diff` passed when hooks were skipped or unavailable
- [x] Targeted behavior tests pass for the current change set, or tests
are marked not applicable above, command/result: `npx vitest run
test/station-doc-ownership.test.ts` passed 3 tests; `npx vitest run
test/check-docs-published-routes.test.ts` passed 25 tests; `npx 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. The focused docs
tests and build cover this 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 the existing light-mode accent
contrast warning.
- [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)

---
Signed-off-by: Miyoung Choi <miyoungc@nvidia.com>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Documentation**
* Clarified “Rebuilds” behavior when manifest-declared state can’t be
archived, including `--force`, and how partial/restored state works.
* Tightened guidance for remote `base-image` overrides to immutable
digests and clarified when local bases are accepted.
* Updated prerequisite documentation redirects to include legacy `.md`
and `.mdx` routes (versioned and unversioned).

* **Tests**
* Strengthened redirect validation by parsing `fern/docs.yml` and
asserting exact `{ source, destination }` matches for `.md`/`.mdx`.
* Added a test to reject an “Additional Setup” redirect to an
unpublished destination.

* **Chores**
* Expanded published-route redirect checking to include “Additional
Setup” paths.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
apurvvkumaria added a commit that referenced this pull request Jul 24, 2026
<!-- markdownlint-disable MD041 -->
## Summary
This adds bounded periodic and phase-aware resource telemetry to the
canonical runner-comparison ledger for trusted heavy E2E executions. It
reuses the existing progress pulse and records only numeric or
fixed-enum evidence, improving runner-pressure diagnosis without
changing failure classification or retry policy.

## Related Issue
Related to #7145 and #7146 (parent epic: #7140).

## Changes
- Extend the canonical runner-comparison artifact to a bounded v2
lifecycle with private `0600` files, a reserved final sample, v1 read
compatibility, and deterministic summaries.
- Capture bounded host, cgroup, PSI, filesystem, Docker, container, and
coarse process-class evidence at endpoints, phase boundaries, and an
approximately 60-second cadence.
- Reuse the existing progress timer with fixed deadlines, no catch-up
bursts, per-scenario attribution boundaries, and a permanent fallback to
the existing bounded collector if canonical sampling fails.
- Add focused privacy, compatibility, timing, fallback, aggregation,
summary, and workflow-boundary coverage, including the three-shard
`common-egress-agent` topology merged in #7448.
- Document the telemetry lifecycle, probe budgets, privacy limits,
compatibility behavior, and the separation from classification and
retry. This builds on the merged progress/timing work from #7100 and
#7213 and extends the canonical ledger from #7399 rather than creating
parallel infrastructure.

## Type of Change

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

## Quality Gates
<!-- Check one tests line and one docs line. Check other lines when
applicable. Add every requested justification or approval reference. -->
- [x] Tests added or updated for changed behavior
- [ ] Existing tests cover changed behavior — justification:
- [ ] Tests not applicable — justification:
- [x] Docs updated for user-facing behavior changes
- [ ] Docs not applicable — justification:
- [x] Sensitive paths changed (security, policy, credentials, preflight,
onboarding, inference, runner, sandbox, or messaging)
- [x] Sensitive-path review completed or maintainer-approved waiver
recorded — reviewer/approval link/justification: Independent exact-head
privacy, schema, classifier, retry, and compatibility review at
`419182d89` found no actionable issues.
- [ ] Non-success, skipped, or missing CI check accepted by maintainer —
check name, approval link, and follow-up issue:

## Documentation Writer Review
<!-- Required for code and documentation changes after the changes and
applicable validation are complete. Keep one review checkbox and one
instance of each visible or hidden field. For Evidence, list changed
documentation paths. For documentation-only changes, also state that the
writing rules and documentation style were reviewed. For other results,
explain why no documentation change is needed or why the review is
blocked. For Agent, use a consistent product and surface name, such as
Codex Desktop, Codex CLI, Claude Code, or Cursor. After committing all
review changes, put `git rev-parse --short HEAD` and `git rev-parse
--short HEAD:AGENTS.md` in the hidden metadata below. Rerun the review
and refresh that metadata after any new commit. This receipt is advisory
during the data-collection pilot. -->
- [x] Documentation writer subagent reviewed the completed changes
- Result: `docs-updated`
- Evidence: `test/e2e/README.md`
- Agent: Codex Desktop
<!-- docs-review-head-sha: e06653c -->
<!-- docs-review-agents-blob-sha:
9c9b36d -->

## DGX Station Hardware Evidence
<!-- Required only when scripts/prepare-dgx-station-host.sh changes.
Maintainers must review the linked evidence before approving or merging.
This is human-reviewed evidence, not authenticated hardware provenance.
Exceptional bypasses use existing repository governance and must be
documented on the PR. -->
- [ ] Tested on DGX Station
- Tested commit:
- Station profile/scenario:
- Result:
- Supporting evidence:

## Verification
<!-- Check each applicable item only when supported by the requested
evidence. Run targeted tests once per relevant change set and rerun
after later edits or hook autofixes that can affect the tested behavior.
Do not rerun hook-covered checks. -->
- [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 check:diff` passed when hooks were skipped or unavailable
- [x] Targeted behavior tests pass for the current change set, or tests
are marked not applicable above — command/result or justification:
Exact-head serialized telemetry/progress/workflow suite passed 225/225
tests across 15 files; after the linear-test guardrail repair, the
primary focused suite passed 165/165 across 9 files, Vitest membership
was exact across 1,764 files, CLI typecheck passed, and `npm run
check:diff` passed.
- [ ] Applicable broad gate passed — `npm test` for broad
runtime/test-harness changes; `npm run check` for repo-wide
validation/coverage changes — command/result: A broad E2E-support run
exposed only parallel-load timeouts and one macOS lifecycle failure
reproduced unchanged on `origin/main`; scoped exact-head gates are
listed above.
- [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)
- [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)

---
<!-- DCO sign-off is required in this PR description, and every commit
must appear as Verified in GitHub. Run: git config user.name && git
config user.email -->
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Added runner-comparison schema v2 telemetry as a bounded, ordered
ledger with periodic, scenario-start, phase, and finalize samples.
* Enabled live E2E runner-comparison sampling and added conditional
periodic sampling in the E2E progress harness.
* Introduced pulse-based progress resource sampling with configurable
interval and best-effort phase/scenario capture.

* **Bug Fixes / Improvements**
* Switched memory diagnostics to available-memory reporting (with
free-memory fallback labeling).
* Hardened telemetry parsing/validation, evidence sanitization, and
expanded runner-pressure/resource diagnostics.

* **Documentation**
* Documented v2 ordering/cadence, privacy/size limits, and
diagnostic-only summary guidance.

* **Tests**
* Added/expanded E2E tests for v2 schema validation, timing/cadence,
fallback behavior, and updated expected outputs.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
Co-authored-by: Prekshi Vyas <prekshiv@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: ci CI workflows, checks, release automation, or GitHub Actions area: e2e End-to-end tests, nightly failures, or validation infrastructure chore Build, CI, dependency, or tooling maintenance integration: hermes Hermes integration behavior v0.0.91 Release target

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants