-
Notifications
You must be signed in to change notification settings - Fork 295
[docs] docs: remove bullet-list bloat from ephemerals guide #19141
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -9,13 +9,7 @@ GitHub Agentic Workflows includes several features designed to automatically exp | |||||
|
|
||||||
| ## Why Use Ephemerals? | ||||||
|
|
||||||
| **Cost Control**: Scheduled workflows can accumulate costs over time. Setting expiration dates ensures they stop automatically after a deadline. | ||||||
|
|
||||||
| **Reduce Clutter**: AI-generated issues and discussions can accumulate quickly. Auto-expiration removes obsolete content, keeping your repository focused on active work. | ||||||
|
|
||||||
| **Status Updates**: When workflows post status updates repeatedly, hiding older comments prevents timeline clutter while preserving the latest information. | ||||||
|
|
||||||
| **Clean Automation**: Prevent automated content from overwhelming your main repository by using separate repositories and controlling cross-references. | ||||||
| Ephemerals control costs by stopping scheduled workflows at deadlines, reduce clutter by auto-expiring issues and discussions, keep status timelines clean by hiding older comments, and isolate automation via the SideRepoOps pattern. | ||||||
|
|
||||||
| ## Expiration Features | ||||||
|
|
||||||
|
|
@@ -34,17 +28,7 @@ on: weekly on monday | |||||
|
|
||||||
| The minimum granularity is hours - minute-only units (e.g., `+30m`) are not allowed. Recompiling the workflow resets the stop time. | ||||||
|
|
||||||
| **Key behaviors**: | ||||||
| - The workflow is disabled at the specified deadline, preventing new runs | ||||||
| - Existing runs continue to completion | ||||||
| - The stop time is preserved during recompilation unless `--refresh-stop-time` flag is used | ||||||
| - Use `gh aw compile --refresh-stop-time` to regenerate the stop time based on current time | ||||||
|
|
||||||
| **Use cases**: | ||||||
| - Trial workflows that should run for a limited period | ||||||
| - Experimental features with automatic sunset dates | ||||||
| - Orchestrated initiatives with defined end dates | ||||||
| - Cost-controlled scheduled workflows | ||||||
| At the deadline, new runs are prevented while existing runs complete. The stop time persists through recompilation; use `gh aw compile --refresh-stop-time` to reset it. Common uses: trial periods, experimental features, orchestrated initiatives, and cost-controlled schedules. | ||||||
|
|
||||||
| See [Triggers Reference](/gh-aw/reference/triggers/#stop-after-configuration-stop-after) for complete documentation. | ||||||
|
|
||||||
|
|
@@ -113,21 +97,7 @@ safe-outputs: | |||||
| close-older-issues: true # Close previous reports | ||||||
| ``` | ||||||
|
|
||||||
| **How it works**: | ||||||
| - When a new issue is created successfully, the system searches for older issues | ||||||
| - Matches are identified by the workflow-id marker embedded in the issue body | ||||||
| - Up to 10 older issues are closed as "not planned" | ||||||
| - Each closed issue receives a comment linking to the new issue | ||||||
| - Only runs if the new issue creation succeeds | ||||||
|
|
||||||
| **Requirements**: | ||||||
| - GH_AW_WORKFLOW_ID environment variable must be set | ||||||
| - Requires appropriate permissions on the target repository | ||||||
|
|
||||||
| **Use cases**: | ||||||
| - Weekly status reports where only the latest matters | ||||||
| - Recurring analysis workflows that supersede previous results | ||||||
| - Scheduled summaries that replace older versions | ||||||
| When a new issue is created, up to 10 older issues with the same workflow-id marker are closed as "not planned" with a comment linking to the new issue. Requires `GH_AW_WORKFLOW_ID` to be set and appropriate repository permissions. Ideal for weekly reports and recurring analyses where only the latest result matters. | ||||||
|
||||||
| When a new issue is created, up to 10 older issues with the same workflow-id marker are closed as "not planned" with a comment linking to the new issue. Requires `GH_AW_WORKFLOW_ID` to be set and appropriate repository permissions. Ideal for weekly reports and recurring analyses where only the latest result matters. | |
| When a new issue is created, `gh aw` uses the workflow-id marker (`GH_AW_WORKFLOW_ID`, which is set automatically in compiled workflows) to find and close up to 10 older issues as "not planned" with a comment linking to the new issue. This feature requires appropriate repository permissions and is ideal for weekly reports and recurring analyses where only the latest result matters. |
Copilot
AI
Mar 2, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The allowed-reasons explanation could be more precise about defaults/semantics. The code and changelog indicate that if allowed-reasons is omitted, all reasons are allowed (see pkg/workflow/add_comment.go comment and CHANGELOG entry). Consider adjusting the wording so it’s clear allowed-reasons is an allowlist (optional), and that omission doesn’t restrict reasons.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The stop-after section is internally inconsistent: it says recompiling resets the stop time, but the next paragraph says the stop time persists unless
--refresh-stop-timeis used. The compiler tests indicate the stop time is preserved by default and only refreshed when--refresh-stop-timeis set (seepkg/workflow/stop_after_test.go). Please update the earlier sentence (and/or reword this section) so recompilation behavior is described consistently and matches actual behavior.See below for a potential fix: