OpenHands / OpenHands/enterprise

[Resume tracker] Add resume-path memory telemetry and regression soak test

Open
#249 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug python
Dominant language
Python
Stars
4
Forks
2
Avg merge
1d 22h
Merged PRs (30d)
101

Description

Parent tracker

  • #244

Goal

Make resume-path allocation and retention observable, and prevent regressions with a repeated-request soak test.

Scope

  • Add low-cardinality counters for resume outcomes: resumed, already_active, conflict, not_found, rate_limited, and error.
  • Export process RSS and Python heap metrics separately.
  • Export GC generation/collection counts and active asyncio task count.
  • Add HTTP client connection/pool and trace-writer queue/drop telemetry where available.
  • Replace request-frequency full tracebacks for expected conflicts with sampled warnings and counters.
  • Build a soak test that repeatedly exercises no-op resume requests and records RSS/heap growth.
  • Define an acceptable memory-growth threshold for CI or a dedicated performance environment.

Acceptance criteria

  • Operators can distinguish Python heap growth from allocator/RSS high-water behavior.
  • Expected resume conflicts are measurable without high-volume traceback logging.
  • The soak test fails when memory grows beyond the documented threshold.
  • Metrics do not use user, sandbox, runtime, or client identifiers as tags.

This issue was created by an AI agent (OpenHands) on behalf of the user.

Contributor guide

No contributing guide indexed for this repository

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 parent issue #244, then locate the resume request path, existing metrics and logging, and the test harness used for repeated requests. Trace which telemetry sources are already available before defining the soak-test setup. Done means the listed resume outcomes and resource metrics are observable, expected conflicts avoid noisy tracebacks, and the repeated-request test enforces a documented memory-growth threshold without identifying tags.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend, observability, testing-qa
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.