Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
74 changes: 56 additions & 18 deletions .github/workflows/daily-community-attribution.lock.yml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions .github/workflows/daily-community-attribution.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,10 +46,17 @@ safe-outputs:
labels: [community, automation]
reviewers: []
draft: true
create-issue:
title-prefix: "[community-attribution] "
labels: [community, automation]
close-older-issues: true
group-by-day: true
expires: 7d

imports:
- shared/community-attribution.md
- shared/observability-otlp.md
- shared/issue-dedup.md

steps:
- name: Fetch PR data for attribution index
Expand Down Expand Up @@ -378,3 +385,11 @@ and the Community Contributors wiki page.
```json
{"noop": {"message": "No action needed: [brief explanation]"}}
```

### 6. Report Failures

If you encounter a genuine error that prevents completion (e.g., data fetch failure, unexpected error), report it using the `create_issue` safe-output tool — **never use the GitHub MCP `create_issue` tool directly**. The safe-output tool has built-in deduplication (`group-by-day` and `close-older-issues`) that prevents duplicate failure issues from accumulating.

```json
{"create_issue": {"title": "Brief description of the failure", "body": "### What failed\n\nDescribe the specific step or data source that failed.\n\n### Error details\n\n(Include the error message or unexpected output here)\n\n### Steps to investigate\n\n1. Check the workflow run logs for the full error message\n2. Verify that community_issues.json and pull_requests.json were fetched successfully\n3. Re-run the workflow manually via workflow_dispatch to see if the failure is transient"}}
Comment on lines +391 to +394
Copy link

Copilot AI Apr 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The failure-reporting example uses a free-form title ("Brief description of the failure"), but group-by-day deduplication only works when the title is identical across runs. Consider instructing a consistent title (e.g., a fixed "Daily Community Attribution Updater failed" title) and include the specific failure details in the body so retries don’t create multiple issues in the same day.

Suggested change
If you encounter a genuine error that prevents completion (e.g., data fetch failure, unexpected error), report it using the `create_issue` safe-output tool — **never use the GitHub MCP `create_issue` tool directly**. The safe-output tool has built-in deduplication (`group-by-day` and `close-older-issues`) that prevents duplicate failure issues from accumulating.
```json
{"create_issue": {"title": "Brief description of the failure", "body": "### What failed\n\nDescribe the specific step or data source that failed.\n\n### Error details\n\n(Include the error message or unexpected output here)\n\n### Steps to investigate\n\n1. Check the workflow run logs for the full error message\n2. Verify that community_issues.json and pull_requests.json were fetched successfully\n3. Re-run the workflow manually via workflow_dispatch to see if the failure is transient"}}
If you encounter a genuine error that prevents completion (e.g., data fetch failure, unexpected error), report it using the `create_issue` safe-output tool — **never use the GitHub MCP `create_issue` tool directly**. The safe-output tool has built-in deduplication (`group-by-day` and `close-older-issues`) that prevents duplicate failure issues from accumulating, so use a consistent title and put the specific failure details in the body.
```json
{"create_issue": {"title": "Daily Community Attribution Updater failed", "body": "### What failed\n\nDescribe the specific step, operation, or data source that failed in this run.\n\n### Error details\n\nInclude the exact error message, unexpected output, or other run-specific details here.\n\n### Steps to investigate\n\n1. Check the workflow run logs for the full error message\n2. Verify that community_issues.json and pull_requests.json were fetched successfully\n3. Re-run the workflow manually via workflow_dispatch to see if the failure is transient"}}

Copilot uses AI. Check for mistakes.
```
22 changes: 22 additions & 0 deletions .github/workflows/shared/issue-dedup.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
## Issue Deduplication

**Always use the `create_issue` safe-output tool (not the GitHub MCP `create_issue` tool) when reporting failures or problems.**

The `create_issue` safe-output tool has built-in deduplication:

- **`group-by-day`**: If an open issue with the same title was already created today, it posts the new content as a comment on the existing issue instead of creating a duplicate
- **`close-older-issues`**: Automatically closes older issues with the same title prefix, keeping the issue queue clean

### When to create a failure issue

Only create an issue if you encounter a genuine problem that a maintainer should know about (e.g., data fetch failure, unexpected workflow error). Do not create an issue for normal "no changes needed" runs — use the `noop` safe-output for those.

### How to report a failure

Use the `create_issue` safe-output tool (JSON format):

```json
{"create_issue": {"title": "Brief description of the failure", "body": "### What failed\n\nData fetch or processing step failed with an unexpected error.\n\n### Steps to investigate\n\n1. Check the workflow run logs for the exact error message\n2. Verify that the data sources (community_issues.json, pull_requests.json) are accessible\n3. Review recent changes to the workflow or data sources"}}
```
Comment on lines +16 to +20
Copy link

Copilot AI Apr 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The example encourages a variable issue title ("Brief description of the failure"), but group-by-day only deduplicates when the title matches exactly. To make deduplication reliable, recommend a stable title format (e.g., a fixed workflow-specific title) and put the detailed error context in the body.

Copilot uses AI. Check for mistakes.

The built-in `close-older-issues` and `group-by-day` settings ensure that repeated failures on the same problem are grouped into a single issue thread rather than creating new duplicate issues each run.
6 changes: 3 additions & 3 deletions pkg/actionpins/data/action_pins.json
Original file line number Diff line number Diff line change
Expand Up @@ -168,10 +168,10 @@
"version": "v2.2.0",
"sha": "0c5077e51419868618aeaa5fe8019c62421857d6"
},
"ruby/setup-ruby@v1.305.0": {
"ruby/setup-ruby@v1.306.0": {
"repo": "ruby/setup-ruby",
"version": "v1.305.0",
"sha": "0cb964fd540e0a24c900370abf38a33466142735"
"version": "v1.306.0",
"sha": "c4e5b1316158f92e3d49443a9d58b31d25ac0f8f"
Comment on lines +171 to +174
Copy link

Copilot AI Apr 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This action pin bump (ruby/setup-ruby v1.305.0 → v1.306.0) isn’t mentioned in the PR description and appears unrelated to the issue-deduplication workflow change. If it’s intentional, consider calling it out in the PR description (or splitting into a separate PR) to keep review scope clear.

Copilot uses AI. Check for mistakes.
},
"super-linter/super-linter@v8.6.0": {
"repo": "super-linter/super-linter",
Expand Down
6 changes: 3 additions & 3 deletions pkg/workflow/data/action_pins.json
Original file line number Diff line number Diff line change
Expand Up @@ -168,10 +168,10 @@
"version": "v2.2.0",
"sha": "0c5077e51419868618aeaa5fe8019c62421857d6"
},
"ruby/setup-ruby@v1.305.0": {
"ruby/setup-ruby@v1.306.0": {
"repo": "ruby/setup-ruby",
"version": "v1.305.0",
"sha": "0cb964fd540e0a24c900370abf38a33466142735"
"version": "v1.306.0",
"sha": "c4e5b1316158f92e3d49443a9d58b31d25ac0f8f"
Comment on lines +171 to +174
Copy link

Copilot AI Apr 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This action pin bump (ruby/setup-ruby v1.305.0 → v1.306.0) isn’t mentioned in the PR description and appears unrelated to the issue-deduplication workflow change. If it’s intentional, consider calling it out in the PR description (or splitting into a separate PR) to keep review scope clear.

Copilot uses AI. Check for mistakes.
},
"super-linter/super-linter@v8.6.0": {
"repo": "super-linter/super-linter",
Expand Down
Loading