Compiling happens a second time on initial request

In my local dev, when I start the server, it ALWAYS compiles. Even if I have not changed any code. This is annoying, and hopefully someones knows why.

My main question is even after this compile, when I make the first request, it compiles AGAIN.

✗ mix phx.server
Compiling 152 files (.ex)
Generating MyApp.Cldr for 2 locales named [:en, :und] with a default locale named :en
Compiling lib/myapp/.../resource1.ex (it's taking more than 10s)
Compiling lib/myapp/.../resource2.ex (it's taking more than 10s)
Compiling lib/myapp/.../resource3.ex (it's taking more than 10s)
Compiling lib/myapp/.../resource4.ex (it's taking more than 10s)
Compiling lib/myapp/cldr.ex (it's taking more than 10s)
Compiling lib/myapp/.../resource5.ex (it's taking more than 10s)
Compiling lib/myapp/.../resource6.ex (it's taking more than 10s)
Generated myapp app
[info] Running MyAppWeb.Endpoint with Bandit 1.5.7 at 127.0.0.1:4000 (http)
[info] Access MyAppWeb.Endpoint at http://localhost.dev:4000
[watch] build finished, watching for changes...
[info] {"message":"notifier only receiving messages from its own node, functionality may be degraded","source":"oban","event":"notifier:switch","connectivity_status":"solitary"}

Rebuilding...

Done in 2711ms.

Now I make the first request, and:

Compiling 67 files (.ex)
Compiling lib/myapp/.../resource1.ex (it's taking more than 10s)
Compiling lib/myapp/.../resource2.ex (it's taking more than 10s)
Compiling lib/myapp/.../resource3.ex (it's taking more than 10s)
Generated myapp app

Almost all those it's taking more than 10s are Ash resource files. Also wish I knew why that was so bad.

hex.outdated:

phoenix                     1.7.14   1.7.14   Up-to-date           
phoenix_ecto                4.6.2    4.6.2    Up-to-date           
phoenix_html                4.1.1    4.1.1    Up-to-date           
phoenix_live_dashboard      0.8.4    0.8.4    Up-to-date           
phoenix_live_reload         1.5.3    1.5.3    Up-to-date           
phoenix_live_view           0.20.17  0.20.17  Up-to-date           

mix xref graph --format cycles --label compile shows No cycles found

elixir 1.17.2-otp-27
erlang 27.0.1

Sadly, I have no clue when this started. I haven’t really paid attention to startup for months since I rarely had to do it.

Have you confirmed that on a different computer but the same project that this happens? That would be the first step.