Skip to content

Retry on auto-fetch and agent-update failure notifications - #400

Merged
uzayer merged 1 commit into
0.4.1from
uzayer/warning-actions
Oct 10, 2026
Merged

uzayer merged 1 commit into
0.4.1from
uzayer/warning-actions

Conversation

@uzayer

@uzayer uzayer commented Oct 10, 2026

Copy link
Copy Markdown
Collaborator

Follow-up to #399: two more warnings get a button that fixes the problem, not just one that opens it.

What changes

  • Auto-fetch keeps failing → Retry and Open. Retry fetches now; a success resolves the warning, since Rust reports a manual fetch as an auto-fetch outcome. A failure goes through handleGitError, the same as the Fetch button.
  • Agent couldn't update → Retry and Open settings. Retry updates to the version the registry offers now. Its stillApplies re-checks the registry first and only updates an agent that is installed, still has an update available, and has none in flight. Otherwise it opens Settings → Agents.
  • Actions can carry args (string-only), because Retry has to know which agent. The args reach the handler from every surface:
    • toast: passed through directly;
    • bell entry: persisted, and cleaned by cleanActions;
    • OS banner: stored in the payload by action id and read back by bannerActionArgs, so a press after a cold start still has them.
  • git-pull-api.ts was renamed to git-remote-api.ts and gains fetchRemote.

Tested

  • Unit tests for rule actions, toast and banner args, payload round trip, and cleanActions args.
  • In bun run dev (mock backend):
    • auto-fetch: three failures show a toast with Open and Retry; Retry runs git_fetch, shows "Fetched acme-app", and resolves both bell entries;
    • agent update: a failed Kilo Code update shows Open settings and Retry; Retry runs acp_registry_update and shows "Kilo Code updated to v4.2.0";
    • stale Retry: once Kilo Code is current, Retry opens Settings → Agents and makes no second update call.
  • bun run ci:local is green; the Linux container jobs were skipped locally.

Not tested

  • OS banner buttons in dev:app (native-only). Both actions are Retry, so they should appear as a banner button. Args routing is unit-tested only.
  • A Retry against a real failing remote: the mock fetch always succeeds.

…ctions carry args

Actions can carry string args, persisted with bell entries and stored in the
OS banner payload by action id, so a press after a cold start still knows what
to act on. Auto-fetch warnings offer Retry (fetch now; a success resolves the
warning). Failed agent updates offer Retry and Open settings; Retry re-checks
the registry and only updates an installed agent that is still behind and not
already updating.
@coderabbitai

coderabbitai Bot commented Oct 10, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: c65c594a-989a-44fa-ad1b-0e80b30f91b8

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@uzayer
uzayer merged commit 0dd1a27 into 0.4.1 Oct 10, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant