Skip to main content

debug-session

Sets up a structured debugging session for a Dynamo bug — pull the report from a Linear ticket, GitHub issue, or pasted text, capture the environment, create a persistent worklog markdown file, and walk through rebuild, reproduction, and investigation steps. Use when starting to investigate a reported Dynamo bug or regression and the investigation should be tracked in a worklog.

소스 정보

저장소
ai-dynamo/dynamo
최근 소스 활동
2026년 8월 21일 04:54
감지된 SKILL.md 언어
영어
스타
8,385
포크
1,761

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
debug-session
description
Sets up a structured debugging session for a Dynamo bug — pull the report from a Linear ticket, GitHub issue, or pasted text, capture the environment, create a persistent worklog markdown file, and walk through rebuild, reproduction, and investigation steps. Use when starting to investigate a reported Dynamo bug or regression and the investigation should be tracked in a worklog.
license
Apache-2.0
user-invocable
true
disable-model-invocation
true
metadata
{"author":"NVIDIA","tags":["dynamo","debugging","worklog","dev-workflow"]}
# Start Debug Session <!-- SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. SPDX-License-Identifier: CC-BY-4.0 --> Create a structured debugging session for an issue in the Dynamo ecosystem. ## Step 1: Get the Bug Report Ask the user how they want to provide the bug: **Option A: Linear ticket** - User provides ticket ID (e.g., "DYN-123") - Fetch via Linear MCP tools - Extract: title, description, reproduction steps **Option B: GitHub issue** - User provides issue URL - Fetch via `gh issue view <url>` - Extract: title, description, reproduction steps **Option C: Paste** - Ask user to paste the bug report directly - Parse out the key details ## Step 2: Discover Environment Gather environment information: !`nvidia-smi --query-gpu=name,count --format=csv,noheader 2>/dev/null || echo "No GPU detected"` !`uname -a` !`which python && python --version` This tells you: - GPU type and count (L40s, H100s, etc.) - OS/platform - Python environment **Note**: The user's `~/.claude/CLAUDE.md` may have more details about their dev environment (paths, aliases, preferences). Check there for additional context. ## Step 3: Create Worklog Create a worklog file to track the investigation: - Filename: `<issue-slug>.md` in current directory - Template: ```markdown # Debug: [Issue Title] **Date**: [today's date] **Source**: [Linear ticket / GitHub issue / user report] **Status**: investigating **Environment**: [GPU type/count from nvidia-smi] ## Problem [Description of the issue] ## Reproduction Steps 1. [Step to reproduce] 2. ... ## Expected vs Actual - **Expected**: - **Actual**: ## Investigation Log ### [timestamp] [Notes on what you tried/found] ## Root Cause [Fill in when found] ## Fix [Fill in when implemented] ``` ## Step 4: Set Up Testing ### Build Commands Rebuild Dynamo after making changes: ```bash cd lib/bindings/python && maturin develop --uv && cd ../../.. && uv pip install -e . ``` If a framework change is required (sglang, vllm, trtllm), check the user's `~/.claude/CLAUDE.md` for rebuild instructions specific to that framework. ### Running Examples Examples are located at the repository-relative path `examples/backends/`. Available backends: - `sglang/launch/` - SGLang backend examples - `vllm/launch/` - vLLM backend examples - `trtllm/launch/` - TensorRT-LLM backend examples Based on the bug report, determine which backend is relevant: - If unclear, **ask the user** which backend/example to run - Run the example in the background - Wait for model to be ready ### Verifying the Model is Up ```bash curl localhost:8000/v1/models ``` ### Testing with a Request ```bash curl http://localhost:8000/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "model": "<model-name-from-above>", "messages": [{"role": "user", "content": "Hello"}], "max_tokens": 50 }' ``` ## Step 5: Begin Investigation ### Dynamo Infrastructure Debugging **KV cache and routing issues:** - Check KV event logs in `lib/llm/src/block_manager/kv_consolidator/tracker.rs` - Look at block manager state and consolidation behavior - Inspect routing decisions in the KV-aware router **ZMQ / networking issues:** - Check ZMQ socket configuration and endpoint bindings - Look for connection timeouts or message drops - Verify nats/etcd connectivity for service discovery **Multi-node / disaggregated issues:** - Check prefill/decode worker assignment - Verify DGD (disaggregated) status reporting - Inspect inter-node communication via `nvidia-smi` on each node - Check NCCL and GPU direct RDMA status **Process inspection:** - `ps aux | grep dynamo` - check running processes - `nvidia-smi` - GPU utilization and memory - `ss -tlnp | grep 8000` - check port bindings - `journalctl -u dynamo` - systemd logs if applicable ### General Debugging Workflow 1. **Reproduce first** - verify you can trigger the bug before attempting fixes 2. **Document as you go** - update the worklog with findings 3. **Minimal changes** - fix the bug, do not refactor surrounding code 4. **Verify the fix** - confirm the reproduction case now passes Performance-critical code - avoid unnecessary abstractions or comments.
GitHub에서 보기