Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
489dbab
Fix stale logging-level assertion causing JS Tests shard 2/4 failure …
Copilot May 7, 2026
1ea249b
Fix lint-go failure by replacing static `fmt.Errorf` usages flagged b…
Copilot May 7, 2026
5694071
Fix 9 broken Learn More links in operational-patterns blog post (#30880)
Copilot May 7, 2026
65b73fa
Use invocation workflowRepo for add_comment footer run URLs in cross-…
Copilot May 7, 2026
f8dffd3
fix: CLI consistency - standardize write+ terminology, mcp list-tools…
Copilot May 7, 2026
b50f7cc
refactor(agentdrain): rename match and firstKey to descriptive names …
Copilot May 7, 2026
bb42bb5
Optimize test-quality-sentinel with cached diffs and inline analyzers…
Copilot May 7, 2026
89e3ea6
fix: escape bare `$schema` in double-quoted AWF config printf to prev…
Copilot May 7, 2026
b38e695
[caveman] Optimize charts.md verbosity — remove redundant prose (2026…
github-actions[bot] May 7, 2026
595e4c7
Update Hippo Embed workflow to use interactive `hippo audit` pruning …
Copilot May 7, 2026
8c2720a
Manage compiler-owned Dependabot ignores for `github-actions` updates…
Copilot May 7, 2026
f409678
[actions] Update GitHub Actions versions - 2026-05-07 (#30794)
github-actions[bot] May 7, 2026
9ef88ad
Fix safe-outputs config compilation for dynamic `inputs.*` in cross-r…
Copilot May 7, 2026
470a32d
[aw] Updates available (#30907)
github-actions[bot] May 7, 2026
68c1e4f
Refactor meta-analysis workflows to import a shared gh-proxy tool-sta…
Copilot May 8, 2026
c29dd1d
feat(spdd): sync OpenSPDD prompts via authenticated gh api in daily p…
Copilot May 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 35 additions & 14 deletions .github/aw/actions-lock.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,6 @@
"version": "v5.0.5",
"sha": "27d5ce7f107fe9357f9df03efb73ab90386fccae"
},
"actions/cache/save@v4": {
"repo": "actions/cache/save",
"version": "v4",
"sha": "0057852bfaa89a56745cba8c7296529d2fc39830"
},
"actions/cache/save@v5.0.5": {
"repo": "actions/cache/save",
"version": "v5.0.5",
Expand Down Expand Up @@ -158,10 +153,10 @@
"version": "v1.24.0",
"sha": "fc68ffb90438ef2936bbb3251622353b3dcb2f93"
},
"github/codeql-action/upload-sarif@v4.35.3": {
"github/codeql-action/upload-sarif@v4.35.4": {
"repo": "github/codeql-action/upload-sarif",
"version": "v4.35.3",
"sha": "e46ed2cbd01164d986452f91f178727624ae40d7"
"version": "v4.35.4",
"sha": "68bde559dea0fdcac2102bfdf6230c5f70eb485e"
},
"github/stale-repos@v9.0.8": {
"repo": "github/stale-repos",
Expand All @@ -178,15 +173,16 @@
"version": "v2.11.0",
"sha": "cd0d9bdd65b20557f41bea4dbe43d0b5fbbfe553"
},
"microsoft/apm-action@v1.5.0": {
"microsoft/apm-action@v1.6.0": {
"repo": "microsoft/apm-action",
"version": "v1.5.0",
"sha": "4489b4be0069e2c8c4d44305c3d273fb9d50e647"
"version": "v1.6.0",
"sha": "275e67418e97c26025852c7e91730cf4c11baf30"
},
"microsoft/apm-action@v1.5.1": {
"microsoft/apm-action@v1.7.2": {
"repo": "microsoft/apm-action",
"version": "v1.5.1",
"sha": "f67b07a08b6be27a2dfdd3912aeda24af365db8e"
"version": "v1.7.2",
"sha": "",
"released_at": "2026-05-07T11:38:31Z"
},
"oven-sh/setup-bun@v2.2.0": {
"repo": "oven-sh/setup-bun",
Expand Down Expand Up @@ -245,6 +241,11 @@
"digest": "sha256:14ff567e8d9d4c2fbc5e55c973488381c71d7e0fdbe72d30ee7b8a738fd86504",
"pinned_image": "ghcr.io/github/gh-aw-firewall/agent:0.25.40@sha256:14ff567e8d9d4c2fbc5e55c973488381c71d7e0fdbe72d30ee7b8a738fd86504"
},
"ghcr.io/github/gh-aw-firewall/agent:0.25.41": {
"image": "ghcr.io/github/gh-aw-firewall/agent:0.25.41",
"digest": "sha256:cb2b565d070116d4b67e355775340528b5a2c3cb18b2c9049638bcc2df681770",
"pinned_image": "ghcr.io/github/gh-aw-firewall/agent:0.25.41@sha256:cb2b565d070116d4b67e355775340528b5a2c3cb18b2c9049638bcc2df681770"
},
"ghcr.io/github/gh-aw-firewall/api-proxy:0.25.18": {
"image": "ghcr.io/github/gh-aw-firewall/api-proxy:0.25.18",
"digest": "sha256:d16a40a3ca6e989896d0cef9f31b9412bb1fcc8755bafcafb95012ae1078539b",
Expand All @@ -270,6 +271,11 @@
"digest": "sha256:2883ca3e5ae9f330cafdd9345bfd4ae17fc8da36c96d4c9a1f76e922b4c45280",
"pinned_image": "ghcr.io/github/gh-aw-firewall/api-proxy:0.25.40@sha256:2883ca3e5ae9f330cafdd9345bfd4ae17fc8da36c96d4c9a1f76e922b4c45280"
},
"ghcr.io/github/gh-aw-firewall/api-proxy:0.25.41": {
"image": "ghcr.io/github/gh-aw-firewall/api-proxy:0.25.41",
"digest": "sha256:fadd0de387209f69a9a7a1b8722bb5e7fdfb80ba9749a5c60f0e4cd7582a74d0",
"pinned_image": "ghcr.io/github/gh-aw-firewall/api-proxy:0.25.41@sha256:fadd0de387209f69a9a7a1b8722bb5e7fdfb80ba9749a5c60f0e4cd7582a74d0"
},
"ghcr.io/github/gh-aw-firewall/cli-proxy:0.25.28": {
"image": "ghcr.io/github/gh-aw-firewall/cli-proxy:0.25.28",
"digest": "sha256:fdf310e4678ce58d248c466b89399e9680a3003038fd19322c388559016aaac7",
Expand All @@ -285,6 +291,11 @@
"digest": "sha256:3e7152911d4b4b7b97beef9d3d7d924ff7902227e86001ef3838fb728d5d514c",
"pinned_image": "ghcr.io/github/gh-aw-firewall/cli-proxy:0.25.40@sha256:3e7152911d4b4b7b97beef9d3d7d924ff7902227e86001ef3838fb728d5d514c"
},
"ghcr.io/github/gh-aw-firewall/cli-proxy:0.25.41": {
"image": "ghcr.io/github/gh-aw-firewall/cli-proxy:0.25.41",
"digest": "sha256:62171f2fa508667b8b0a9e096f826983f312e3da0ce894f80c0f83a875af60fe",
"pinned_image": "ghcr.io/github/gh-aw-firewall/cli-proxy:0.25.41@sha256:62171f2fa508667b8b0a9e096f826983f312e3da0ce894f80c0f83a875af60fe"
},
"ghcr.io/github/gh-aw-firewall/squid:0.25.18": {
"image": "ghcr.io/github/gh-aw-firewall/squid:0.25.18",
"digest": "sha256:eb102afcfbae26ffcec016adebb74d3be7b0a5bf376ba306599cdf3effbe288e",
Expand All @@ -310,6 +321,11 @@
"digest": "sha256:b084f4a2c771f584ee68084ced52fa6b3245197a1889645d817462d307d3ac51",
"pinned_image": "ghcr.io/github/gh-aw-firewall/squid:0.25.40@sha256:b084f4a2c771f584ee68084ced52fa6b3245197a1889645d817462d307d3ac51"
},
"ghcr.io/github/gh-aw-firewall/squid:0.25.41": {
"image": "ghcr.io/github/gh-aw-firewall/squid:0.25.41",
"digest": "sha256:1260445d25968dbf3ae70143964177a0e5914cf2ce07a6117f7d3caec6c3e3c4",
"pinned_image": "ghcr.io/github/gh-aw-firewall/squid:0.25.41@sha256:1260445d25968dbf3ae70143964177a0e5914cf2ce07a6117f7d3caec6c3e3c4"
},
"ghcr.io/github/gh-aw-mcpg:v0.2.19": {
"image": "ghcr.io/github/gh-aw-mcpg:v0.2.19",
"digest": "sha256:44d4d8de7e6c37aaea484eba489940c52df6a0b54078ddcbc9327592d5b3c3dd",
Expand Down Expand Up @@ -355,6 +371,11 @@
"digest": "sha256:bf343399e3725c45528f531a230f3a04521d4cdef29f9a5af6282ff0d3c393c5",
"pinned_image": "ghcr.io/github/serena-mcp-server:latest@sha256:bf343399e3725c45528f531a230f3a04521d4cdef29f9a5af6282ff0d3c393c5"
},
"grafana/mcp-grafana": {
"image": "grafana/mcp-grafana",
"digest": "sha256:60a4e3a417a69eeb864a72052c53b4aa4466ff3577d6ef9bacc671f4b77d7090",
"pinned_image": "grafana/mcp-grafana@sha256:60a4e3a417a69eeb864a72052c53b4aa4466ff3577d6ef9bacc671f4b77d7090"
},
"mcp/arxiv-mcp-server": {
"image": "mcp/arxiv-mcp-server",
"digest": "sha256:6dc6bba6dfed97f4ad6eb8d23a5c98ef5b7fa6184937d54b2d675801cd9dd29e",
Expand Down
75 changes: 2 additions & 73 deletions .github/aw/charts.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@ description: Guidance for adding Python data visualization to agentic workflows

# Python Data Visualization in Agentic Workflows

Consult this file when creating or updating a workflow that generates charts, trend graphs, or any Python-based data visualization.

## Choosing a Shared Workflow

Three shared workflows provide Python charting capabilities. Choose based on your needs:
Expand Down Expand Up @@ -180,24 +178,8 @@ steps:

### Agent Instructions

Python scientific libraries have been installed. A temporary folder structure has been created at `/tmp/gh-aw/python/` for organizing scripts, data, and outputs.

**Installed Libraries**:
- **NumPy**: Array processing and numerical operations
- **Pandas**: Data manipulation and analysis
- **Matplotlib**: Chart generation and plotting
- **Seaborn**: Statistical data visualization
- **SciPy**: Scientific computing utilities

**Directory Structure**:

```
/tmp/gh-aw/python/
├── data/ # Store all data files here (CSV, JSON, etc.)
├── charts/ # Generated chart images (PNG)
├── artifacts/ # Additional output files
└── *.py # Python scripts
```
Libraries: NumPy, Pandas, Matplotlib, Seaborn, SciPy
Directories: `/tmp/gh-aw/python/{data,charts,artifacts}`

**Data Separation Requirement**

Expand Down Expand Up @@ -235,14 +217,6 @@ plt.savefig('/tmp/gh-aw/python/charts/chart.png',
edgecolor='none')
```

**Chart Quality Guidelines**:
- **DPI**: Use 300 or higher for publication quality
- **Figure Size**: Standard is 10×6 inches (adjustable based on needs)
- **Labels**: Always include clear axis labels and titles
- **Legend**: Add legends when plotting multiple series
- **Grid**: Enable grid lines for easier reading
- **Colors**: Use colorblind-friendly palettes (seaborn defaults are good)

**Cache Memory for Reusable Helpers**:

```bash
Expand Down Expand Up @@ -283,21 +257,6 @@ plt.savefig('/tmp/gh-aw/python/charts/chart.png',
print("Chart saved to /tmp/gh-aw/python/charts/chart.png")
```

**Error Handling**:

```python
import os

data_file = '/tmp/gh-aw/python/data/data.csv'
if not os.path.exists(data_file):
raise FileNotFoundError(f"Data file not found: {data_file}")

required_cols = ['category', 'value']
missing = set(required_cols) - set(data.columns)
if missing:
raise ValueError(f"Missing columns: {missing}")
```

---

## Option C: Charts with Trending (Full Guide)
Expand All @@ -323,8 +282,6 @@ safe-outputs:

### Agent Instructions

You are an expert at creating compelling trend visualizations with persistent data storage across workflow runs.

**Cache-Memory Organization**:

```
Expand Down Expand Up @@ -513,25 +470,6 @@ print(f"✅ Trend chart generated with {len(df)} data points")

## Trends Visualization Best Practices

When generating trending charts, focus on:

### Time Series Excellence
- Use line charts for continuous trends over time
- Add trend lines or moving averages to highlight patterns
- Include clear date/time labels on the x-axis
- Show confidence intervals or error bands when relevant

### Comparative Trends
- Use multi-line charts to compare multiple trends
- Apply distinct colors for each series with a clear legend
- Consider using area charts for stacked trends
- Highlight key inflection points or anomalies

### Contextual Information
- Show percentage changes or growth rates
- Include baseline comparisons (year-over-year, month-over-month)
- Add summary statistics (min, max, average, median)

### Example Chart Types

**Temporal Trends**:
Expand Down Expand Up @@ -652,12 +590,3 @@ For workflows tracking Copilot coding agent session data:

---

## Tips for Success

1. **Consistency**: Use the same metric names and file paths across runs
2. **Timestamps**: Always use ISO 8601 format in data points
3. **Data first**: Write data to a CSV/JSON file before plotting — never inline
4. **Quality**: DPI 300+, clear axis labels, seaborn whitegrid, white background
5. **Retention**: Prune cache-memory data to 90 days to prevent unbounded growth
6. **Upload**: Use `upload asset` for every chart to get embeddable URLs
7. **Story**: Annotate significant events; add context with moving averages
Loading
Loading