Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Assist pipeline pickers never refresh a non-empty cache, so new pipelines are missing from CarPlay Quick Access

Closed Beginner friendly
#6,000 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@bgoncal is already working on this.

Since Oct 7, 2026.

  • #6003 by @bgoncal — open

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
78/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
ios, swift
Domain
mobile

Research direction

Start with AssistPipelineAddList.fetchPipelines() and AssistPipelinePicker.fetchPipelines() in the paths linked in the issue; compare their cache behavior with AssistViewModel, which refreshes pipelines each session. Confirm both pickers can display cached pipelines while requesting current ones from the server. Done when newly created pipelines appear in the pickers without first opening the in-app Assist screen.

Written by the indexing model from the issue text.

Description

bug ios

iOS device model, version and app version

Model Name: iPhone 15 (iPhone15,4)
Software Version: iOS 26.6.2
App version: 2026.9.1 (2026.2985)

Home Assistant Core Version

2026.8.3

Describe the bug

When adding an item in the Settings Quick Access configuration for CarPlay (Add item > Assist / Assist prompt), the pipeline list shows only the pipelines that were cached the last time the app fetched them. Pipelines created in Home Assistant after that never appear, even after force-quitting the app. In my case two pipelines created weeks apart (one on 12 Sep, one today) were both missing, while the older three were listed.

Opening the in-app Assist screen once fixes it: AssistViewModel refetches pipelines on every session and saves them to the database, after which the new pipelines show up in the picker.

The cause appears to be that both pickers read the GRDB cache and only request pipelines from the server when the cache is empty:

assistConfigs = try AssistPipelines.config() ?? []
if assistConfigs.isEmpty {
    requestPipelines()
}

So a non-empty but stale cache is never refreshed from these screens.

To Reproduce

  1. Use Assist in the app at least once so pipelines are cached.
  2. In Home Assistant, create a new Assist pipeline.
  3. Force-quit and reopen the Companion app.
  4. Settings > CarPlay > Quick Access > Add item > Assist (or Assist prompt).
  5. The new pipeline is not listed.
  6. Open the in-app Assist screen, close it, and repeat step 4: the pipeline now appears.

Expected behavior

The pipeline pickers show current pipelines. For example, show the cached list immediately and refresh from the server in the background (as AssistViewModel already does), or offer pull-to-refresh.

Screenshots

The Add item > Assist list showed only Preferred, Home Assistant (fully local), Home Assistant (Claude API) and Claw. The two newer pipelines (OpenClaw, Hank Car) were missing until the in-app Assist screen had been opened once.

Additional context

Found while setting up CarPlay Assist on iOS 26.4+.

Dominant language
Swift
Stars
2.4k
Forks
531
Avg merge
15h 24m
Merged PRs (30d)
195

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from home-assistant/iOS

All issues in home-assistant/iOS

Similar issues

More Swift issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.