React: InstantSearch refresh prop does not trigger refresh

I’m using Algolia in a React app with a Firestore backend. I save comments with an algoliaSaved: false attribute. When a comment is added to my database a function runs on the server that adds the comment to my Algolia index. The callback from index.saveObject then updates the comment with algoliaSaved: true.

const index = algolia.initIndex('comments')

...

return index.saveObject(newComment).then(() => {  
  // Update the algoliaSaved attribute on the comment
  firestore.collection('comments')
  .doc(context.params.commentId)
  .update({
    "algoliaSaved": true
  })

  return true
})

I have listeners in my React app that track all documents with algoliaSaved: false and when the number of docs with this attribute changes I toggle the refresh prop being passed to InstantSearch.

const [refresh, setRefresh] = useState(false)

useEffect(() => {
  if (refresh) {
    setRefresh(false)
  }
},[refresh])

useEffect(() => {
  setRefresh(true)
},[unsavedCount])

<InstantSearch
  indexName={'comments'}
  searchClient={searchClient}
  refresh={refresh} 
 >
...

My issue is that this does not load the new results. If I reload the app or reload the InstantSearch component I can see the newly added results so they are indeed added when my unsavedCount change, but toggling refresh doesn’t actually cause a refresh.

Is the refresh prop bugged, and is there another way to update InstantSearch without reloading the entire component?