# Monad of No Return: The Great Patchening

> Source: <https://discourse.haskell.org/t/monad-of-no-return-the-great-patchening/14207#post_7>
> Published: 2026-07-20 18:17:04+00:00

I setup something to automatically fork the repo, apply the patch, build it, run tests and push the resulting code.

Over here you may view the results of the repos: [the great patchening · GitHub](https://gist.github.com/ludat-coding-agent/7321ed8a54cbcc9667a6c68229b801e4)

The meaning of the results are:

`failed to apply diff`

: (31) The diff no longer applies, most of these are because the original patch was created again an old version of stackage, a lot of these mean that the package is already patched.`failed to compile`

: (10) Repo failed to compile after applying the patch`last repo commit too old`

: (13) The last commit is older that 7 years so we don’t patch it`could not resolve upstream repo (not found / non-git)`

: (31) Usually cause by repos that do not live in github, and some other cases where the package doesn’t have repo information in the cabal file`tests failed`

: (3) Tests failed to run after applying the patch`built; branch pushed to fork`

: (24) This is the happy path, the repo was built with the patch and everything worked so we create a fork and push the changesRight now forks are available at [monad-of-no-return repositories · GitHub](https://github.com/orgs/monad-of-no-return/repositories)

As I mentioned in private I’ll be leaving for vacations this week for about a month so I could add someone else to the org if you don’t want to wait until I come back.
