Gadoes bolts a cache onto Mike's outside-data calls

A small caching layer means repeat lookups to external sources stop costing time and rate-limit headroom.

infrastructureintegration

Gadoes added a result cache for the calls Mike makes out to external tools and data sources. The trick is a normaliser that recognises when two slightly different requests are really asking the same question, so the answer can be served from the cache instead of going back out over the wire. It's a tight piece of work - barely 230 lines of new code, with tests covering both the normaliser and the cache itself.

Alongside it, the fork looks to have moved its database migrations under Supabase, a hosted Postgres backend that a lot of small teams use to skip running their own infrastructure. The migration files now live in two places, which is a maintenance footgun worth knowing about if you're borrowing this work.

So what Anyone running Mike against paid or rate-limited external sources should look at this before their bill or their latency gets uncomfortable.

View this fork on GitHub →

Spotted something wrong? Or know the PR text has fresher detail than the writeup above?

Commits in this thread

2 commits from Gadoes/dispumike, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
19dfc0a4 Chunk 17: Caching Layer (queryNormalizer, CacheManager, migration 004) Gadoes 2026-05-02 ↗ GitHub
2affe555 Merge Chunk 17: Caching Layer Gadoes 2026-05-02 ↗ GitHub

Capture this thread into my fork

Download a single Markdown prompt that tells Claude how to port every commit above into your working tree — adapting paths and structure to match your repo. Run it via claude -p < capture-thread-25.md from inside the repo you want the changes in.

⬇ Download capture-thread-25.md