- SearchForm.vue: route Enter key through submit() (native form submit
interception) so it behaves like the button; fix autocomplete array
mutation during iteration in the typed watcher.
- Base.vue: parse terms consistently in beforeRouteUpdate; render items
via displayedItems (drops sparse holes); only mount infinite-loading
after the first page and reset it per search via :identifier.
- search store: guard against stale async responses (searchId); place
each page at its offset instead of concatenating in arrival order,
which mixed pages when a later page resolved first.