With the changes introduced in HSEARCH-3775, the commit and refresh policy will now be independent: it will be possible to request a refresh without a commit, thanks to the near-real-time commit strategy. Thus SEARCHABLE should no longer imply a commit, and a new COMMITTED_SEARCHABLE should be introduced to provide forced commit + refresh.
Also, COMMITTED is ambiguous: people will assume it means changes are visible, but they are not. Let’s find another name? SYNC is the name usually used for FS APIs, but it's not great in our case since we have two types of synchronicity (commit and refresh).
Maybe we should rename everything: QUEUED => ASYNC/COMMITTED => SYNC_WRITE/SEARCHABLE => SYNC_READ/COMMITTED_SEARCHABLE => SYNC?
SYNC_READ is a bit confusing, though...