NVIDIA-NeMo / NVIDIA-NeMo/Gym

[checkpoint] Resume prime_agent daemon sessions

Open
#3,271 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area:agent feature
Dominant language
Python
Stars
1.2k
Forks
349
Avg merge
1d 21h
Merged PRs (30d)
318

Description

Parent

Child of #3221 and #3024.

Runtime state

responses_api_agents/prime_agent/app.py delegates authoritative continuation state to the Prime daemon process, socket/session state, and workspace.

Provider adapter requirements

Implement the shared opaque-runtime contract with provider/version, native session or thread ID, safe-boundary sequence, isolated workspace/session bundle manifest and digest, model-call lineage, resource/MCP metadata, exact resume operation, and stale-process fencing. Advertise export/restore only after native resume is proven; otherwise declare restart-only explicitly.

Acceptance criteria

  • Restore or reattach the daemon session while ensuring the old daemon and socket cannot publish after replacement.
  • Kill and replace the agent server after each provider-emitted completed turn, then resume without duplicated model/tool effects.
  • Session databases and workspaces are isolated by rollout attempt.
  • Old processes cannot emit responses or mutate state after replacement.
  • Missing, corrupt, or incompatible bundles fail restore before activation.
  • Duplicate resume is idempotent or rejected deterministically.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with responses_api_agents/prime_agent/app.py and the parent issues #3221 and #3024 to understand the authoritative daemon, socket/session, and workspace state. The work is done when replacement and resume preserve provider turns without duplicate effects, isolate rollout state, fence old processes, reject invalid bundles before activation, and handle duplicate resumes deterministically.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.