Cache Management Automation: Linear Resolution to GitHub Cleanup
Mark an issue Done in Linear and Notis automatically clears the associated GitHub Actions build cache. The next CI run rebuilds from scratch, preventing stale artifacts from causing problems.
Trigger
Issue Updated Trigger
Triggered when an issue is updated. For example labels are changed, issue status is changed, etc.
Action
Clear repository cache by key
Deletes github actions caches from a repository matching a specific `key` and an optional git `ref`, used to manage storage or clear outdated/corrupted caches; the action succeeds even if no matching caches are found to delete.
Why this helps
Issues are marked resolved but cached build artifacts stay around, leading to stale dependencies or old code getting redeployed. Figuring out which caches to clear is manual and error-prone.
- Prevent stale cached artifacts from causing mysterious production bugs
- Reduce GitHub Actions storage costs by removing unused caches
- Ensure every deployment after issue resolution uses fresh code
- Automate a task that's usually forgotten
Setup
Build it in a few focused steps.
- 1Connect Linear and GitHub to Notis
- 2Identify which cache keys are associated with different features or components
- 3Create an automation: 'When an issue is marked Done in Linear, clear the corresponding GitHub Actions cache'
- 4Specify cache patterns in your prompt: 'if the issue was for the auth module, clear the auth-build cache'
- 5Set trigger to 'Linear issue properties updated' (captures status changes)
- 6Test by marking a Linear issue Done and verifying GitHub caches are cleared
- 7Verify the next CI run rebuilds from scratch
Questions about this workflow
How do I know which cache to clear?
Use cache key naming that maps to issues: 'use cache keys like feature-auth-${{ github.sha }} so Notis can match them to issues'. Or list them in your automation prompt.
What if I want to preserve some caches?
Your automation can be selective: 'only clear caches for completed issues, but always keep the npm-dependencies cache'.
Does this affect active builds?
No, clearing a cache doesn't stop running builds. It only affects future CI runs.
Can I clear caches on a schedule instead of per-issue?
Yes. Create a cron automation: 'Every Friday evening, clear all GitHub caches over 1 week old' and use both alongside each other.
When this happens · Trigger
Do this · Action
Supported Triggers and Actions
Notis builds workflows that link Linear to GitHub. A trigger fires from one place; an action lands in another.
Linear triggers
GitHub actions
Comment Received Trigger
Triggered when a comment is received.
Accept a repository invitation
Accepts a pending repository invitation that has been issued to the authenticated user.
Issue Created Trigger
Triggered when a new issue is created.
List repositories starred by the authenticated user
Deprecated: lists repositories starred by the authenticated user, including star creation timestamps; use 'list repositories starred by the authenticated user' instead.
Issue Updated Trigger
Triggered when an issue is updated. For example labels are changed, issue status is changed, etc.
List stargazers
Deprecated: lists users who have starred a repository; use `list stargazers` instead.
Private Team Comment Created
Fires when a new comment is posted on an issue in a private Linear team (polled with the connected user's token).
Star a repository for the authenticated user
Deprecated: stars a repository for the authenticated user; use `star a repository for the authenticated user` instead.
Private Team Issue Created
Fires when a new issue appears in a private Linear team (polled with the connected user's token).
Add email for auth user
Adds one or more email addresses (which will be initially unverified) to the authenticated user's github account; use this to associate new emails, noting an email verified for another account will error, while an existing email for the current user is accepted.
Private Team Issue Properties Updated
Fires when properties on an issue change in a private Linear team (polled with the connected user's token).
Add app access restrictions
Replaces github app access restrictions for an existing protected branch; requires a json array of app slugs in the request body, where apps must be installed and have 'contents' write permissions.
Project Created
Fires when a new Linear project is created. Covers projects in both public and private teams — polls with the connected user's token, so visibility matches what the connected user can see in Linear.
Add a repository collaborator
Adds a github user as a repository collaborator, or updates their permission if already a collaborator; `permission` applies to organization-owned repositories (personal ones default to 'push' and ignore this field), and an invitation may be created or permissions updated directly.
Project Properties Updated
Fires when properties on a Linear project change (status, lead, target date, priority, etc.). Covers projects in both public and private teams — polls with the connected user's token.
Add a repository to an app installation
Adds a repository to a github app installation, granting the app access; requires authenticated user to have admin rights for the repository and access to the installation.
Connect any two apps with Notis in the middle.
Not just Linear and GitHub. Any combination from 985+ integrations.
When this happens · Trigger
Do this · Action
Save your first hour today.
7 days free trial with 20$ free usage included.
No card. Works with personal or business GitHub.
