fix: move Python venv out of agent artifact upload path to restore MCP telemetry observability - #49685
Conversation
|
@copilot they are in the agent artifact |
|
Thanks for opening this PR on behalf of the core team! 👋 The investigation summary is clear and well-documented. Here's what looks solid:
Since this is still a WIP draft (0 changes committed), here's what's next:
|
…/venv to reduce artifact size The Python virtual environment was being created at /tmp/gh-aw/agent/venv in the shared trending-charts-simple, python-nlp, and python-dataviz components. Since the agent artifact upload always includes /tmp/gh-aw/agent/ (compiler-generated), the entire Python venv (numpy, pandas, matplotlib, seaborn, scipy and all dependencies) was uploaded as part of the agent artifact. This inflated the artifact to ~253 MB with ~19,448 files for workflows using these components. This caused the daily-performance-summary observability gap: when the daily-observability- report tried to download the 253 MB agent artifact to check for rpc-messages.jsonl and gateway.jsonl, the download would time out or fail, making it appear as if neither MCP telemetry file was present (both ARE generated - rpc-messages.jsonl was 300 KB on the Jul 30 run and 3.2 MB on the Aug 1 run). Moving the venv to /tmp/gh-aw/python/venv keeps it outside the artifact upload path, reducing the agent artifact to only the actual log and output files (a few MB), ensuring reliable artifact downloads and accurate MCP telemetry observability reporting. Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
…d nlp workflows Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Fixed in commit
All 268 workflows recompiled cleanly. No |
🔍 Triage Summary
Moves Python venv out of artifact upload path to fix MCP telemetry visibility. Draft, no CI, touches shared components. Automated triage — see the triage report for full context.
|
|
@copilot update instructions or built prompts to specify where the user python venv should be created |
…python/venv) Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Done in commit
All 268 workflows recompiled cleanly. |
There was a problem hiding this comment.
Pull request overview
Moves Python virtual environments outside the agent artifact path, preventing oversized uploads from obscuring MCP telemetry.
Changes:
- Relocates virtual environments to
/tmp/gh-aw/python/. - Updates workflow prompts and shared components to use the new paths.
- Regenerates affected workflow lock files.
Show a summary per file
| File | Description |
|---|---|
.github/aw/charts.md |
Updates chart setup examples. |
.github/workflows/shared/trending-charts-simple.md |
Relocates charting venv. |
.github/workflows/shared/python-nlp.md |
Relocates NLP venv. |
.github/workflows/shared/python-dataviz.md |
Relocates visualization venv. |
.github/workflows/dataflow-pr-discussion-dataset.md |
Relocates DataFlow venv and references. |
.github/workflows/dataflow-pr-discussion-dataset.lock.yml |
Recompiles DataFlow setup. |
.github/workflows/daily-agentrx-trace-optimizer.md |
Updates AgentRx venv instructions. |
.github/workflows/daily-agentrx-trace-optimizer.lock.yml |
Refreshes compiled metadata. |
.github/workflows/copilot-pr-nlp-analysis.md |
Updates runtime Python path. |
.github/workflows/copilot-pr-nlp-analysis.lock.yml |
Recompiles NLP setup and prompt. |
.github/workflows/weekly-issue-summary.lock.yml |
Recompiles visualization setup. |
.github/workflows/stale-repo-identifier.lock.yml |
Recompiles charting setup. |
.github/workflows/python-data-charts.lock.yml |
Recompiles visualization setup. |
.github/workflows/prompt-clustering-analysis.lock.yml |
Recompiles NLP and charting setup. |
.github/workflows/portfolio-analyst.lock.yml |
Recompiles visualization setup. |
.github/workflows/org-health-report.lock.yml |
Recompiles visualization setup. |
.github/workflows/github-mcp-structural-analysis.lock.yml |
Recompiles visualization setup. |
.github/workflows/detection-analysis-report.lock.yml |
Recompiles charting setup. |
.github/workflows/daily-security-observability.lock.yml |
Recompiles Python setup components. |
.github/workflows/daily-repo-chronicle.lock.yml |
Recompiles visualization setup. |
.github/workflows/daily-performance-summary.lock.yml |
Removes the venv from its agent artifact path. |
.github/workflows/daily-news.lock.yml |
Recompiles visualization setup. |
.github/workflows/daily-issues-report.lock.yml |
Recompiles NLP and visualization setup. |
.github/workflows/daily-experiment-report.lock.yml |
Recompiles charting setup. |
.github/workflows/daily-code-metrics.lock.yml |
Recompiles visualization setup. |
.github/workflows/copilot-session-insights.lock.yml |
Recompiles visualization setup. |
.github/workflows/audit-workflows.lock.yml |
Recompiles charting setup. |
.github/workflows/api-consumption-report.lock.yml |
Recompiles charting setup. |
Review details
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 28/28 changed files
- Comments generated: 0
- Review effort level: Balanced
The
daily-performance-summaryworkflow was flagged as missing MCP telemetry (gateway.jsonl/rpc-messages.jsonl) — but both files ARE generated. The root cause: shared Python setup components created a venv at/tmp/gh-aw/agent/venv, which is unconditionally included in the compiler-generated agent artifact upload path (/tmp/gh-aw/agent/). This inflated the artifact to ~253 MB / ~19,448 files (numpy, pandas, matplotlib, scipy + all deps), causing observability report downloads to time out before locating the MCP telemetry files.Changes
shared/trending-charts-simple.md,shared/python-nlp.md,shared/python-dataviz.md: Changed Python venv location from/tmp/gh-aw/agent/venv→/tmp/gh-aw/python/venv/tmp/gh-aw/python/is not in the artifact upload path list, so the venv is no longer uploaded. Agent artifacts for affected workflows drop from ~253 MB back to a few MB of actual log files.All 268 workflows recompiled. Affects any workflow importing these shared components.