Panel autocomplete URI speed

in one of my projects i (mis)use kirby to store tickets. that generates a lot of pages. as a result the panel autocompletion using $site->index() here i guess makes the panel seem unresponsive when entering uris. is there any way to apply caching to index()? I would not shy away from hacking the panel code.

disabling would be an option if i can control it per blueprint/template. but it seems not to be available.

i would like to create a per session cache devalidated only if pages are created/moved/deleted but not when edited. like serialising the php object. the current cache-array is just for one page call.

i do not want to enable default filebased cache like described here in my attemt to improve speed of index() even when using ignore [*].

so how can i switch to session cache? that one is not the default filebased one, right?

maybe @distantnative can tell me. sorry for calling you directly into this thread. :sweat:

Like this:

c::set('cache.driver', 'session');

oh yes. silly me. thanks @lukasbestle

sessions are one file per session (unless memcached explicitly) but thats ok in my case i guess.

is there any way to check within the index() if its called from panel? i do not want index() caching for frontend (yet).

That would be:

if(function_exists('panel')) { ... }