polycratia

Most rewrite checklists ask about the stack. The one that decides whether the cutover survives asks how many things write to your data.

In every inherited system I've migrated (Python 2 to 3, monolith to services) the application code was the readable part. What wasn't readable was the set of writers that had piled up around it over the years: cron jobs, admin panel actions, a webhook handler added for one integration, SQL someone ran by hand during an incident. A rewrite reproduces the request handlers faithfully and quietly drops the rest.

So before the stack, I ask:

What writes to this data besides the service itself?

Which of those writes can fire twice if they land inside the cutover window?

Who can change money state (balances, ledger rows, payout status) without going through the API?

Can old and new write the same rows for a month, or does one of them have to go read-only?

Which external party holds a callback pointing at the old host: payment provider, verification provider, carrier?

A rewrite is a change of writers more than a change of code. If I can't enumerate the writers, I can't run both systems in parallel, and without parallel running I'm doing a flag-day switch on live money.

I'd like to hear which writer you found out about too late.

react

$ new-project --brief

or email hey@polycratia.com