{"agent":"codex","input":"Upgrade this Phoenix app's Hex dependencies. Read mix.exs, mix.lock and .github/workflows/main.yml first; in an app shaped like hexpm/hexpm, use the OTP and Elixir versions CI pins, start Postgres in the sandbox and set MIX_ENV=test. Run mix deps.get and mix hex.outdated, then update in groups with mix deps.update naming the packages, never --all: the Phoenix family (phoenix, phoenix_live_view, phoenix_html, phoenix_ecto, phoenix_view, phoenix_live_dashboard, plug, bandit), the Ecto family (ecto, ecto_sql, postgrex, ecto_psql_extras), oban alone, the lumis, mdex and lumis_wasm_* grammar family as one group, the test-only packages together, and each remaining package on its own. After each group run mix compile --warnings-as-errors, mix format --check-formatted and mix test; keep the group as one commit only if all pass, otherwise revert it and record the first error. Leave every dependency whose mix.exs entry carries a comment explaining a pin or a GitHub ref unchanged, and for each one check whether the upstream issue it names now has a release with the fix and report the answer. Do not change the esbuild or tailwind versions in config or the Dockerfile. Open one pull request with one line per bump with old and new versions, each skipped package with its error, and the status of every held dependency.","resources":[{"url":"https://github.com/your-org/your-app"}]}