Skip to content

feat(images): package and publish all-agent managed images - #8047

Merged
ericksoa merged 256 commits into
mainfrom
feat/managed-image-publication
Aug 4, 2026
Merged

feat(images): package and publish all-agent managed images#8047
ericksoa merged 256 commits into
mainfrom
feat/managed-image-publication

Conversation

@ericksoa

@ericksoa ericksoa commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

Summary

Package the dormant managed-bootstrap boundary into the OpenClaw, Hermes, and LangChain Deep Agents Code images and qualify exact managed-image artifacts for amd64 and arm64. Production runtime selection remains unsupported, so this slice does not advertise or activate buildless or Podman support.

Related Issue

Part of #7744.

Changes

  • Compile and package the native bootstrap entrypoint, composed image runtime, startup hold, and complete inert capability union in all three supported agent images.
  • Preserve each agent startup, application environment, corporate-CA, dashboard, messaging, and plugin behavior behind the dormant image-owned handoff.
  • Build and directly exercise exact OpenClaw, Hermes, and DCode amd64 artifacts on pull requests.
  • Publish amd64 and arm64 variants only after the matching all-agent validation and attestation evidence succeeds.
  • Add bounded, sanitized managed-image failure diagnostics and exact publication-evidence verification.
  • Keep central orchestration provider-neutral and production activation unavailable.

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 reconstruction preserves the previously audited publication source while adapting it to the merged feat(onboard): add managed bootstrap image runtime #8045 ownership model. Exact-head CodeRabbit is green with zero unresolved threads, and the published advisor assessment reports no blocking findings.
  • Non-success, skipped, or missing CI check accepted by maintainer — check name, approval link, and follow-up issue: PR review advisor (GPT-5.6 Terra) and PR review advisor (Nemotron 3 Ultra) are accepted as mechanical service failures on exact-head attempt 2: Terra rejected an invalid service-generated max_output_tokens=1, while Nemotron returned no required analysis. The exact-head publisher reports 0 blockers, 0 warnings, 0 suggestions, and no follow-up needed; the primary advisor passed on the immediately preceding implementation head in run 30883374986. No code follow-up issue is warranted.

Documentation Writer Review

  • Documentation writer subagent reviewed the completed changes
  • Result: docs-updated
  • Evidence: src/lib/onboard/managed-bootstrap/README.md documents the all-agent image-packaging boundary and explicitly keeps production onboarding inert. The exact-head qualification corrections change only private image construction and direct-E2E boundaries; public docs/ remain unchanged because this slice does not activate a user-visible runtime surface.
  • Agent: Codex Desktop

DGX Station Hardware Evidence

  • Tested on DGX Station
  • Tested commit:
  • Station profile/scenario:
  • Result:
  • Supporting evidence:

Verification

  • Exact public head: 4af85d6f86a9db6ff201f75f31f94e75987a7410.
  • Append-only repair: contaminated source head 6a1b8443a is preserved at backup/podman-stack/pr8047-contaminated-6a1b8443; reviewed clean source d656863ea is preserved at backup/podman-stack/pr8047-clean-d656863e.
  • The qualification ancestry preserves the independently reviewed clean implementation. Exact-head corrections stage the canonical bootstrap envelope through root docker exec stdin, align SLSA dependency verification with BuildKit output, keep the fixed all-agent capability inventory independently asserted, and prove non-GHCR identity rejection occurs before any registry tool can run. The append-only public history incorporates current main at 453b5df0a0cd17e1f898c333a6c1583d96f51096; the exact-head tree is 4a3b61ec6a731babdcf01f19e469be7e00aff551, and the independently reviewed pre-correction clean source remains preserved at its backup ref.
  • Current GitHub diff versus the PR base: 72 files, +5,966/-397; no Podman lifecycle or provider implementation files.
  • Changed integration set: 29 files, 491 passing tests, 48 expected skips.
  • Changed CLI set: 3 files, 68 passing tests.
  • Focused exact-head remediation set: 3 suites, 126 passing tests.
  • Composed managed-bootstrap runtime bundles successfully; shell boundaries parse; local no-added-test-conditionals, test-size, source-shape, repository, Biome, hadolint, shellcheck, secret-scan, signed-DCO, and pre-push gates pass.
  • PR description includes a Signed-off-by line and every new reconstruction commit is signed; GitHub verification is checked on the pushed head.
  • Normal pre-commit, commit-msg, and pre-push hooks passed.
  • Targeted behavior tests pass for the current change set.
  • Applicable broad gate passed — exact-head CI, all-agent managed-image builds, CodeQL, CodeRabbit, and the published advisor assessment pass; all 22 executed jobs for the 17 protected E2E selections passed with no skips or pending tests.
  • 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: Aaron Erickson aerickson@nvidia.com

Summary by CodeRabbit

  • New Features

    • Added managed startup support across OpenClaw, Hermes, and LangChain Deep Agents Code.
    • Added configurable runtime identity and bundled capability support.
    • Added amd64 and arm64 image validation with direct startup checks.
  • Bug Fixes

    • Prevented unsupported integrations from activating unexpectedly.
    • Improved certificate handling, environment cleanup, permissions, and startup reliability.
  • Chores

    • Strengthened image publication verification, diagnostics, run isolation, and promotion safeguards.
    • Expanded validation for security, configuration, attestations, and image integrity.

ericksoa and others added 30 commits July 30, 2026 16:34
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Preserve the exact reviewed tree while moving the stacked base to merged PR3.3.

Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Preserve the exact reviewed tree while moving the stacked base to restacked PR3.4a.

Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Preserve the exact reviewed tree while moving the stacked base to restacked PR3.4b.

Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Carry the reviewed PR3.4b slice unchanged onto the CodeRabbit feedback fix for PR3.4a.

Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Carry the reviewed PR3.5 slice unchanged onto the CodeRabbit feedback restack through PR3.4b.

Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Carry the reviewed PR3.4b slice unchanged onto the serialized PR3.4a transaction contract.

Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Carry the reviewed PR3.5 slice unchanged onto the serialized PR3.4a transaction contract.

The review patch remains unchanged through PR3.4b.

Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Restack PR3.4b without changing its review patch.

Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Restack PR3.5 without changing its review patch.

Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Preserve the exact reviewed PR3.5 patch while inheriting the canonical restacked PR3.4b base.

Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Trigger exact-head CI after the canonical GitHub bot restack without changing the reviewed tree.

Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Preserve the exact reviewed PR3.5 tree while inheriting the signed exact-head validation trigger.

Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
ericksoa and others added 2 commits August 3, 2026 22:51
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
@ericksoa ericksoa added area: onboarding Onboarding FSM, provider setup, sandbox launch, or first-run flow area: security Security controls, permissions, secrets, or hardening feature PR adds or expands user-visible functionality platform: container Affects Docker, containerd, Podman, or images v0.0.102 labels Aug 4, 2026
@ericksoa
ericksoa merged commit f504948 into main Aug 4, 2026
97 of 102 checks passed
@ericksoa
ericksoa deleted the feat/managed-image-publication branch August 4, 2026 08:37
@wscurran wscurran added area: packaging Packages, images, registries, installers, or distribution integration: dcode LangChain Deep Code integration behavior integration: hermes Hermes integration behavior integration: openclaw OpenClaw integration behavior labels Aug 4, 2026
apurvvkumaria added a commit that referenced this pull request Aug 4, 2026
<!-- markdownlint-disable MD041 -->
## Summary

The `gateway-guard-recovery` E2E rejected the canonical managed startup
command introduced by #8047. This change requires
`/usr/local/bin/nemoclaw-start` for the modern container before and
after Docker restart, while preserving the separate legacy keepalive
compatibility contract.

Failed release-gate job:
https://github.com/NVIDIA/NemoClaw/actions/runs/30930457908/job/92070742370

## Changes

- Align the fresh-container startup assertion with the managed
executable path produced by onboarding.
- Require the restarted modern container to retain that same canonical
executable path.
- Leave the legacy short-form recovery assertion and all
credential-canary checks unchanged.
- Change no production code or runtime behavior.

## Type of Change

- [x] 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

- [x] Tests added or updated for changed behavior
- [ ] Existing tests cover changed behavior — justification:
- [ ] Tests not applicable — justification:
- [ ] Docs updated for user-facing behavior changes
- [x] Docs not applicable — justification: Test-only regression
assertion; no user-facing behavior or documentation claim changed.
- [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 Codex
Desktop security review passed for validated commit
`1c1b4531ceea5e25a34a64358d34f583e798dc44`. The modern path check is
strengthened, the legacy compatibility and credential-exclusion checks
remain intact, and no production security boundary changes.
- [ ] Non-success, skipped, or missing CI check accepted by maintainer —
check name, approval link, and follow-up issue:

## Documentation Writer Review

- [x] Documentation writer subagent reviewed the completed changes
- Result: `no-docs-needed`
- Evidence: The test-only change requires the managed startup executable
path already defined by the implementation. It does not change commands,
output, configuration, defaults, workflows, or supported behavior. The
focused source contract passed 17 tests.
- Agent: Codex Desktop
<!-- docs-review-head-sha: 1c1b453 -->
<!-- docs-review-agents-blob-sha: 3dd7c24 -->

## DGX Station Hardware Evidence

- [ ] Tested on DGX Station
- Tested commit: Not applicable; no DGX Station host-preparation code
changed.
- 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 validate:pr` passed after refreshing `origin/main` when hooks
were skipped or unavailable
- [x] Targeted behavior tests pass for the current change set, or tests
are marked not applicable above — 33 CLI source-contract tests, 20
recovery integration tests, and 7 E2E-support tests passed. Semantic
phase, title, test-size, source-shape, type, formatting, repository, and
secret checks passed.
- [ ] Applicable broad gate passed — not applicable to a two-assertion
E2E contract repair; the affected live target must pass through the PR
E2E gate.
- [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)
- [ ] 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: Apurv Kumaria <akumaria@nvidia.com>


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

## Summary by CodeRabbit

* **Tests**
* Updated container startup validation to require the full executable
path for both initial and recovered managed containers.

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

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

Labels

area: onboarding Onboarding FSM, provider setup, sandbox launch, or first-run flow area: packaging Packages, images, registries, installers, or distribution area: security Security controls, permissions, secrets, or hardening feature PR adds or expands user-visible functionality integration: dcode LangChain Deep Code integration behavior integration: hermes Hermes integration behavior integration: openclaw OpenClaw integration behavior platform: container Affects Docker, containerd, Podman, or images

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants