Build:
  1. 0
2025-12-08 20:46.04: New job: build jst-config.v0.17.0, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29040/head (54a2a184a6d77f10e4b79113c296cba5261ef4fa)
                              on alpine-3.22-ocaml-5.4/amd64

To reproduce locally:

cd $(mktemp -d)
git clone --recursive "https://github.com/ocaml/opam-repository.git" && cd "opam-repository" && git fetch origin "refs/pull/29040/head" && git reset --hard 54a2a184
git fetch origin master
git merge --no-edit 4c9d80b7312698c8f185350873cbec03fdf0471a
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:alpine-3.22-ocaml-5.4@sha256:e33d2ca8275cd634c6f94b7aa0e89aa1badcaa62676c3d0be4b00f25fa3689d9
USER 1000:1000
WORKDIR /home/opam
RUN sudo ln -f /usr/bin/opam-dev /usr/bin/opam
RUN opam init --reinit -ni
RUN opam option solver=builtin-0install && opam config report
ENV OPAMDOWNLOADJOBS="1"
ENV OPAMERRLOGLEN="0"
ENV OPAMPRECISETRACKING="1"
ENV CI="true"
ENV OPAM_REPO_CI="true"
RUN rm -rf opam-repository/
COPY --chown=1000:1000 . opam-repository/
RUN opam repository set-url --strict default opam-repository/
RUN opam update --depexts || true
RUN opam pin add -k version -yn jst-config.v0.17.0 v0.17.0
RUN opam reinstall jst-config.v0.17.0; \
    res=$?; \
    test "$res" != 31 && exit "$res"; \
    export OPAMCLI=2.0; \
    build_dir=$(opam var prefix)/.opam-switch/build; \
    failed=$(ls "$build_dir"); \
    partial_fails=""; \
    for pkg in $failed; do \
    if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"alpine-3.22\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'jst-config.v0.17.0' && partial_fails="$partial_fails $pkg"; \
    done; \
    test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
    exit 1

END-OF-DOCKERFILE
docker build -f ../Dockerfile .

2025-12-08 20:46.04: Using cache hint "ocaml/opam:alpine-3.22-ocaml-5.4@sha256:e33d2ca8275cd634c6f94b7aa0e89aa1badcaa62676c3d0be4b00f25fa3689d9-jst-config.v0.17.0-54a2a184a6d77f10e4b79113c296cba5261ef4fa"
2025-12-08 20:46.04: Using OBuilder spec:
((from ocaml/opam:alpine-3.22-ocaml-5.4@sha256:e33d2ca8275cd634c6f94b7aa0e89aa1badcaa62676c3d0be4b00f25fa3689d9)
 (user (uid 1000) (gid 1000))
 (workdir /home/opam)
 (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
 (run (network host)
      (shell "opam init --reinit --config .opamrc-sandbox -ni"))
 (run (shell "opam option solver=builtin-0install && opam config report"))
 (env OPAMDOWNLOADJOBS 1)
 (env OPAMERRLOGLEN 0)
 (env OPAMPRECISETRACKING 1)
 (env CI true)
 (env OPAM_REPO_CI true)
 (run (shell "rm -rf opam-repository/"))
 (copy (src .) (dst opam-repository/))
 (run (shell "opam repository set-url --strict default opam-repository/"))
 (run (network host)
      (shell "opam update --depexts || true"))
 (run (shell "opam pin add -k version -yn jst-config.v0.17.0 v0.17.0"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall jst-config.v0.17.0;\
             \n        res=$?;\
             \n        test \"$res\" != 31 && exit \"$res\";\
             \n        export OPAMCLI=2.0;\
             \n        build_dir=$(opam var prefix)/.opam-switch/build;\
             \n        failed=$(ls \"$build_dir\");\
             \n        partial_fails=\"\";\
             \n        for pkg in $failed; do\
             \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"alpine-3.22\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'jst-config.v0.17.0' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
)

2025-12-08 20:46.04: Waiting for resource in pool OCluster
2025-12-09 03:04.14: Waiting for worker…
2025-12-09 03:06.51: Got resource from pool OCluster
Building on bremusa.ocamllabs.io
All commits already cached
Updating files:  78% (14944/18985)
Updating files:  79% (14999/18985)
Updating files:  80% (15188/18985)
Updating files:  81% (15378/18985)
Updating files:  82% (15568/18985)
Updating files:  83% (15758/18985)
Updating files:  84% (15948/18985)
Updating files:  85% (16138/18985)
Updating files:  86% (16328/18985)
Updating files:  87% (16517/18985)
Updating files:  88% (16707/18985)
Updating files:  89% (16897/18985)
Updating files:  90% (17087/18985)
Updating files:  91% (17277/18985)
Updating files:  92% (17467/18985)
Updating files:  93% (17657/18985)
Updating files:  94% (17846/18985)
Updating files:  95% (18036/18985)
Updating files:  96% (18226/18985)
Updating files:  97% (18416/18985)
Updating files:  98% (18606/18985)
Updating files:  99% (18796/18985)
Updating files: 100% (18985/18985)
Updating files: 100% (18985/18985), done.
HEAD is now at 4c9d80b731 Merge pull request #29031 from NielsMommen/release-ppx_parser-0.2.1
Updating 4c9d80b731..54a2a184a6
Fast-forward
 packages/SZXX/SZXX.4.0.0/opam                      |  2 +-
 .../abstract_algebra/abstract_algebra.v0.17.0/opam |  4 +-
 packages/accessor/accessor.v0.17.0/opam            |  6 +-
 .../accessor_async/accessor_async.v0.17.0/opam     | 10 +--
 packages/accessor_base/accessor_base.v0.17.0/opam  | 10 +--
 packages/accessor_core/accessor_core.v0.17.0/opam  | 10 +--
 packages/async/async.v0.17.0/opam                  | 18 ++---
 packages/async_durable/async_durable.v0.17.0/opam  | 10 +--
 packages/async_extra/async_extra.v0.17.0/opam      |  8 +--
 packages/async_find/async_find.v0.17.0/opam        |  6 +-
 packages/async_inotify/async_inotify.v0.17.0/opam  | 10 +--
 .../async_interactive.v0.17.0/opam                 |  8 +--
 packages/async_js/async_js.v0.17.0/opam            |  8 +--
 packages/async_kernel/async_kernel.v0.17.0/opam    |  6 +-
 packages/async_log/async_log.v0.17.0/opam          | 12 ++--
 .../async_rpc_kernel/async_rpc_kernel.v0.17.0/opam | 12 ++--
 .../async_rpc_websocket.v0.17.0/opam               |  6 +-
 .../async_sendfile/async_sendfile.v0.17.0/opam     |  8 +--
 packages/async_shell/async_shell.v0.17.0/opam      |  8 +--
 packages/async_smtp/async_smtp.v0.17.0/opam        | 28 ++++----
 packages/async_ssl/async_ssl.v0.17.0-1/opam        | 12 ++--
 packages/async_ssl/async_ssl.v0.17.0/opam          | 12 ++--
 packages/async_udp/async_udp.v0.17.0/opam          |  6 +-
 packages/async_unix/async_unix.v0.17.0/opam        | 12 ++--
 .../async_websocket/async_websocket.v0.17.0/opam   |  6 +-
 packages/babel/babel.v0.17.0/opam                  | 12 ++--
 packages/base/base.v0.17.0/opam                    |  4 +-
 packages/base/base.v0.17.1/opam                    |  8 +--
 packages/base/base.v0.17.3/opam                    |  4 +-
 .../base_bigstring/base_bigstring.v0.17.0/opam     |  6 +-
 .../base_quickcheck/base_quickcheck.v0.17.0/opam   | 16 ++---
 .../base_quickcheck/base_quickcheck.v0.17.1/opam   | 16 ++---
 packages/base_trie/base_trie.v0.17.0/opam          |  8 +--
 packages/bigdecimal/bigdecimal.v0.17.0/opam        |  6 +-
 packages/bignum/bignum.v0.17.0/opam                | 10 +--
 packages/bin_prot/bin_prot.v0.17.0-1/opam          | 16 ++---
 packages/bin_prot/bin_prot.v0.17.0/opam            | 16 ++---
 packages/bonsai/bonsai.v0.17.0/opam                | 78 +++++++++++-----------
 .../capitalization/capitalization.v0.17.0/opam     |  4 +-
 .../cmdlang-to-base/cmdlang-to-base.0.0.9/opam     | 22 +++---
 packages/codicons/codicons.v0.17.0/opam            |  6 +-
 .../cohttp_async_websocket.v0.17.0/opam            | 10 +--
 .../cohttp_static_handler.v0.17.0/opam             |  2 +-
 packages/command_rpc/command_rpc.v0.17.0/opam      |  6 +-
 .../content_security_policy.v0.17.0/opam           |  4 +-
 packages/coq-lsp/coq-lsp.0.2.0+8.17/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.0+8.18/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.0+8.19/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.0+8.20/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.2+8.17/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.2+8.18/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.2+8.19/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.2+8.20/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.3+8.17/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.3+8.18/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.3+8.19/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.3+8.20/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.3+9.0/opam            |  8 +--
 packages/coq-lsp/coq-lsp.0.2.4+8.20/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.4+9.0/opam            |  8 +--
 packages/coq-lsp/coq-lsp.0.2.4+9.1/opam            |  8 +--
 packages/coq-lsp/coq-lsp.0.2.5+8.20/opam           |  8 +--
 packages/coq-lsp/coq-lsp.0.2.5+9.0/opam            |  8 +--
 packages/coq-lsp/coq-lsp.0.2.5+9.1/opam            |  8 +--
 packages/coq-serapi/coq-serapi.8.20.0+0.20.0/opam  |  8 +--
 packages/core/core.v0.17.0/opam                    | 44 ++++++------
 packages/core/core.v0.17.1/opam                    | 44 ++++++------
 packages/core_bench/core_bench.v0.17.0/opam        | 24 +++----
 packages/core_extended/core_extended.v0.17.0/opam  | 10 +--
 packages/core_kernel/core_kernel.v0.17.0/opam      | 12 ++--
 packages/core_profiler/core_profiler.v0.17.0/opam  | 16 ++---
 packages/core_unix/core_unix.v0.17.0/opam          | 22 +++---
 packages/core_unix/core_unix.v0.17.1/opam          | 22 +++---
 packages/csvfields/csvfields.v0.17.0/opam          |  6 +-
 packages/dedent/dedent.v0.17.0/opam                |  6 +-
 .../delimited_parsing.v0.17.0/opam                 |  8 +--
 packages/ecaml/ecaml.v0.17.0/opam                  | 16 ++---
 packages/email_message/email_message.v0.17.0/opam  | 12 ++--
 packages/env_config/env_config.v0.17.0/opam        |  8 +--
 .../expect_test_helpers_async.v0.17.0/opam         | 12 ++--
 .../expect_test_helpers_core.v0.17.0/opam          | 12 ++--
 packages/fieldslib/fieldslib.v0.17.0/opam          |  2 +-
 packages/file-rewriter/file-rewriter.0.0.3/opam    |  2 +-
 packages/file_path/file_path.v0.17.0/opam          | 14 ++--
 packages/fuzzy_match/fuzzy_match.v0.17.0/opam      |  4 +-
 packages/fzf/fzf.v0.17.0/opam                      |  6 +-
 packages/gel/gel.v0.17.0/opam                      |  4 +-
 packages/hardcaml/hardcaml.v0.17.0/opam            | 12 ++--
 packages/hardcaml/hardcaml.v0.17.1/opam            | 12 ++--
 packages/hardcaml_axi/hardcaml_axi.v0.17.0/opam    | 12 ++--
 packages/hardcaml_c/hardcaml_c.v0.17.0/opam        | 10 +--
 .../hardcaml_circuits.v0.17.0/opam                 |  8 +--
 .../hardcaml_event_driven_sim.v0.17.0/opam         | 10 +--
 .../hardcaml_fixed_point.v0.17.0/opam              |  6 +-
 .../hardcaml_handshake.v0.17.0/opam                |  8 +--
 .../hardcaml_of_verilog.v0.17.0/opam               | 20 +++---
 .../hardcaml_step_testbench.v0.17.0/opam           | 10 +--
 .../hardcaml_verify/hardcaml_verify.v0.17.0/opam   | 12 ++--
 .../hardcaml_verilator.v0.17.0/opam                | 10 +--
 .../hardcaml_waveterm.v0.17.0/opam                 | 12 ++--
 .../hardcaml_xilinx/hardcaml_xilinx.v0.17.0/opam   | 10 +--
 .../hardcaml_xilinx_components.v0.17.0/opam        | 12 ++--
 .../hardcaml_xilinx_reports.v0.17.0/opam           | 18 ++---
 packages/hex_encode/hex_encode.v0.17.0/opam        |  4 +-
 packages/hg_lib/hg_lib.v0.17.0/opam                | 10 +--
 packages/higher_kinded/higher_kinded.v0.17.0/opam  |  4 +-
 packages/incr_dom/incr_dom.v0.17.0/opam            | 18 ++---
 .../incr_dom_interactive.v0.17.0/opam              | 18 ++---
 .../incr_dom_partial_render.v0.17.0/opam           | 10 +--
 .../incr_dom_sexp_form.v0.17.0/opam                | 16 ++---
 packages/incr_map/incr_map.v0.17.0/opam            | 18 ++---
 packages/incr_select/incr_select.v0.17.0/opam      |  6 +-
 packages/incremental/incremental.v0.17.0/opam      | 12 ++--
 .../indentation_buffer.v0.17.0/opam                |  4 +-
 packages/int_repr/int_repr.v0.17.0/opam            |  4 +-
 packages/jane_rope/jane_rope.v0.17.0/opam          |  4 +-
 .../janestreet_cpuid/janestreet_cpuid.v0.17.0/opam |  6 +-
 .../janestreet_csv/janestreet_csv.v0.17.0/opam     | 22 +++---
 .../janestreet_lru_cache.v0.17.0/opam              |  4 +-
 packages/jsonaf/jsonaf.v0.17.0/opam                |  4 +-
 packages/jst-config/jst-config.v0.17.0/opam        |  4 +-
 .../legacy_diffable/legacy_diffable.v0.17.0/opam   |  8 +--
 packages/line-up-words/line-up-words.v0.17.0/opam  | 10 +--
 .../man_in_the_middle_debugger.v0.17.0/opam        |  6 +-
 .../memtrace_viewer/memtrace_viewer.v0.17.0/opam   | 18 ++---
 packages/mlt_parser/mlt_parser.v0.17.0/opam        |  6 +-
 packages/n_ary/n_ary.v0.17.0/opam                  | 16 ++---
 packages/netsnmp/netsnmp.v0.17.0/opam              |  6 +-
 packages/notty_async/notty_async.v0.17.0/opam      |  4 +-
 .../numeric_string/numeric_string.v0.17.0/opam     |  4 +-
 .../ocaml-embed-file/ocaml-embed-file.v0.17.0/opam |  8 +--
 .../ocaml_intrinsics/ocaml_intrinsics.v0.17.0/opam |  2 +-
 .../ocaml_openapi_generator.v0.17.0/opam           | 16 ++---
 packages/of_json/of_json.v0.17.0/opam              |  8 +--
 .../ordinal_abbreviation.v0.17.0/opam              |  4 +-
 packages/pam/pam.v0.17.0/opam                      |  4 +-
 packages/parsexp/parsexp.v0.17.0/opam              |  2 +-
 packages/parsexp_io/parsexp_io.v0.17.0/opam        |  8 +--
 packages/patdiff/patdiff.v0.17.0/opam              | 12 ++--
 packages/patience_diff/patience_diff.v0.17.0/opam  |  6 +-
 .../polling_state_rpc.v0.17.0/opam                 | 12 ++--
 packages/posixat/posixat.v0.17.0/opam              |  6 +-
 .../postgres_async/postgres_async.v0.17.0/opam     | 10 +--
 packages/ppx_accessor/ppx_accessor.v0.17.0/opam    |  4 +-
 packages/ppx_assert/ppx_assert.v0.17.0/opam        | 10 +--
 packages/ppx_base/ppx_base.v0.17.0/opam            | 12 ++--
 packages/ppx_bench/ppx_bench.v0.17.0/opam          |  2 +-
 packages/ppx_bench/ppx_bench.v0.17.1/opam          |  2 +-
 packages/ppx_bin_prot/ppx_bin_prot.v0.17.0/opam    |  6 +-
 packages/ppx_bin_prot/ppx_bin_prot.v0.17.1/opam    |  8 +--
 packages/ppx_cold/ppx_cold.v0.17.0/opam            |  2 +-
 packages/ppx_compare/ppx_compare.v0.17.0/opam      |  4 +-
 packages/ppx_conv_func/ppx_conv_func.v0.17.0/opam  |  2 +-
 packages/ppx_css/ppx_css.v0.17.0/opam              | 24 +++----
 packages/ppx_csv_conv/ppx_csv_conv.v0.17.0/opam    |  8 +--
 .../ppx_custom_printf.v0.17.0/opam                 |  4 +-
 packages/ppx_demo/ppx_demo.v0.17.0/opam            |  6 +-
 .../ppx_derive_at_runtime.v0.17.0/opam             |  6 +-
 .../ppx_derive_at_runtime.v0.17.1/opam             |  6 +-
 packages/ppx_diff/ppx_diff.v0.17.0/opam            | 12 ++--
 packages/ppx_diff/ppx_diff.v0.17.1/opam            | 12 ++--
 .../ppx_disable_unused_warnings.v0.17.0/opam       |  2 +-
 .../ppx_embed_file/ppx_embed_file.v0.17.0/opam     |  6 +-
 packages/ppx_enumerate/ppx_enumerate.v0.17.0/opam  |  4 +-
 packages/ppx_expect/ppx_expect.v0.17.0/opam        |  8 +--
 packages/ppx_expect/ppx_expect.v0.17.1/opam        |  8 +--
 packages/ppx_expect/ppx_expect.v0.17.2/opam        |  8 +--
 packages/ppx_expect/ppx_expect.v0.17.3/opam        |  8 +--
 .../ppx_expect_nobase.v0.17.2/opam                 |  2 +-
 .../ppx_fields_conv/ppx_fields_conv.v0.17.0/opam   |  4 +-
 .../ppx_fixed_literal.v0.17.0/opam                 |  2 +-
 packages/ppx_globalize/ppx_globalize.v0.17.0/opam  |  2 +-
 packages/ppx_globalize/ppx_globalize.v0.17.2/opam  |  4 +-
 packages/ppx_hardcaml/ppx_hardcaml.v0.17.0/opam    |  6 +-
 packages/ppx_hardcaml/ppx_hardcaml.v0.17.1/opam    |  6 +-
 packages/ppx_hash/ppx_hash.v0.17.0/opam            |  8 +--
 packages/ppx_here/ppx_here.v0.17.0/opam            |  2 +-
 .../ppx_inline_test/ppx_inline_test.v0.17.0/opam   |  4 +-
 .../ppx_inline_test/ppx_inline_test.v0.17.1/opam   |  4 +-
 .../ppx_inline_test_nobase.v0.17.0.2/opam          |  2 +-
 .../ppx_inline_test_nobase.v0.17.0/opam            |  2 +-
 packages/ppx_jane/ppx_jane.v0.17.0/opam            | 54 +++++++--------
 packages/ppx_js_style/ppx_js_style.v0.17.0/opam    |  2 +-
 packages/ppx_js_style/ppx_js_style.v0.17.1/opam    |  2 +-
 .../ppx_jsonaf_conv/ppx_jsonaf_conv.v0.17.0/opam   |  6 +-
 .../ppx_jsonaf_conv/ppx_jsonaf_conv.v0.17.1/opam   |  6 +-
 packages/ppx_let/ppx_let.v0.17.0/opam              |  4 +-
 packages/ppx_let/ppx_let.v0.17.1/opam              |  4 +-
 packages/ppx_log/ppx_log.v0.17.0/opam              | 28 ++++----
 .../ppx_module_timer/ppx_module_timer.v0.17.0/opam |  8 +--
 packages/ppx_optcomp/ppx_optcomp.v0.17.0/opam      |  4 +-
 packages/ppx_optcomp/ppx_optcomp.v0.17.1/opam      |  4 +-
 packages/ppx_optional/ppx_optional.v0.17.0/opam    |  4 +-
 .../ppx_pattern_bind/ppx_pattern_bind.v0.17.0/opam |  4 +-
 .../ppx_pattern_bind/ppx_pattern_bind.v0.17.1/opam |  4 +-
 packages/ppx_python/ppx_python.v0.17.0/opam        |  4 +-
 .../ppx_quick_test/ppx_quick_test.v0.17.0/opam     | 24 +++----
 .../ppx_quick_test/ppx_quick_test.v0.17.1/opam     | 24 +++----
 packages/ppx_sexp_conv/ppx_sexp_conv.v0.17.0/opam  |  6 +-
 packages/ppx_sexp_conv/ppx_sexp_conv.v0.17.1/opam  |  6 +-
 .../ppx_sexp_message/ppx_sexp_message.v0.17.0/opam |  6 +-
 .../ppx_sexp_value/ppx_sexp_value.v0.17.0/opam     |  6 +-
 packages/ppx_stable/ppx_stable.v0.17.0/opam        |  2 +-
 packages/ppx_stable/ppx_stable.v0.17.1/opam        |  2 +-
 .../ppx_stable_witness.v0.17.0/opam                |  2 +-
 packages/ppx_string/ppx_string.v0.17.0/opam        |  4 +-
 .../ppx_string_conv/ppx_string_conv.v0.17.0/opam   |  8 +--
 packages/ppx_tydi/ppx_tydi.v0.17.0/opam            |  2 +-
 packages/ppx_tydi/ppx_tydi.v0.17.1/opam            |  2 +-
 .../ppx_typed_fields/ppx_typed_fields.v0.17.0/opam | 18 ++---
 .../ppx_typed_fields/ppx_typed_fields.v0.17.1/opam | 18 ++---
 .../ppx_typerep_conv/ppx_typerep_conv.v0.17.0/opam |  4 +-
 .../ppx_typerep_conv/ppx_typerep_conv.v0.17.1/opam |  4 +-
 .../ppx_variants_conv.v0.17.0/opam                 |  4 +-
 .../ppx_variants_conv.v0.17.1/opam                 |  4 +-
 packages/ppx_xml_conv/ppx_xml_conv.v0.17.0/opam    |  8 +--
 .../ppx_yojson_conv/ppx_yojson_conv.v0.17.0/opam   |  6 +-
 .../ppx_yojson_conv/ppx_yojson_conv.v0.17.1/opam   |  6 +-
 packages/profunctor/profunctor.v0.17.0/opam        |  6 +-
 .../protocol_version_header.v0.17.0/opam           |  4 +-
 packages/re2/re2.v0.17.0/opam                      |  8 +--
 packages/re_parser/re_parser.v0.17.0/opam          |  4 +-
 .../record_builder/record_builder.v0.17.0/opam     |  4 +-
 packages/redis-async/redis-async.v0.17.0/opam      | 10 +--
 .../regex_parser_intf.v0.17.0/opam                 |  2 +-
 .../resource_cache/resource_cache.v0.17.0/opam     |  8 +--
 packages/rpc_parallel/rpc_parallel.v0.17.0/opam    | 12 ++--
 .../semantic_version/semantic_version.v0.17.0/opam |  4 +-
 .../sequencer_table/sequencer_table.v0.17.0/opam   |  6 +-
 packages/sexp/sexp.v0.17.0/opam                    | 28 ++++----
 packages/sexp_diff/sexp_diff.v0.17.0/opam          |  4 +-
 packages/sexp_grammar/sexp_grammar.v0.17.0/opam    | 14 ++--
 packages/sexp_macro/sexp_macro.v0.17.0/opam        |  8 +--
 packages/sexp_pretty/sexp_pretty.v0.17.0/opam      |  6 +-
 packages/sexp_select/sexp_select.v0.17.0/opam      |  6 +-
 .../sexp_string_quickcheck.v0.17.0/opam            |  6 +-
 packages/sexplib/sexplib.v0.17.0/opam              |  4 +-
 packages/sexps-rewriter/sexps-rewriter.0.0.3/opam  |  4 +-
 packages/shell/shell.v0.17.0/opam                  | 10 +--
 packages/shexp/shexp.v0.17.0/opam                  |  4 +-
 packages/splay_tree/splay_tree.v0.17.0/opam        |  4 +-
 .../splittable_random.v0.17.0/opam                 | 10 +--
 packages/stdio/stdio.v0.17.0/opam                  |  2 +-
 .../stored_reversed/stored_reversed.v0.17.0/opam   |  4 +-
 packages/streamable/streamable.v0.17.0/opam        | 12 ++--
 packages/streamable/streamable.v0.17.1/opam        | 12 ++--
 packages/string_dict/string_dict.v0.17.0/opam      |  6 +-
 packages/tdigest/tdigest.2.2.1/opam                |  2 +-
 packages/textutils/textutils.v0.17.0/opam          |  8 +--
 .../textutils_kernel/textutils_kernel.v0.17.0/opam |  4 +-
 packages/tilde_f/tilde_f.v0.17.0/opam              |  4 +-
 packages/time_now/time_now.v0.17.0/opam            | 10 +--
 packages/timezone/timezone.v0.17.0/opam            |  4 +-
 .../toplevel_backend/toplevel_backend.v0.17.0/opam |  8 +--
 .../toplevel_expect_test.v0.17.0/opam              | 16 ++---
 .../topological_sort/topological_sort.v0.17.0/opam |  6 +-
 packages/torch/torch.v0.17.0/opam                  | 16 ++---
 packages/tracing/tracing.v0.17.0/opam              | 10 +--
 packages/typerep/typerep.v0.17.0/opam              |  2 +-
 packages/typerep/typerep.v0.17.1/opam              |  2 +-
 packages/uopt/uopt.v0.17.0/opam                    |  4 +-
 .../username_kernel/username_kernel.v0.17.0/opam   |  4 +-
 packages/variantslib/variantslib.v0.17.0/opam      |  2 +-
 .../versioned_polling_state_rpc.v0.17.0/opam       | 10 +--
 packages/virtual_dom/virtual_dom.v0.17.0/opam      | 12 ++--
 .../virtual_dom_toplayer.v0.17.0/opam              | 10 +--
 packages/zstandard/zstandard.v0.17.0/opam          |  6 +-
 267 files changed, 1181 insertions(+), 1181 deletions(-)

(from ocaml/opam:alpine-3.22-ocaml-5.4@sha256:e33d2ca8275cd634c6f94b7aa0e89aa1badcaa62676c3d0be4b00f25fa3689d9)
2025-12-09 03:10.32 ---> using "cc9a51e43484ecba546acb49360e48a09654838dede9dd1d9e25dcc3617de96c" from cache

/: (user (uid 1000) (gid 1000))

/: (workdir /home/opam)

/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2025-12-09 03:10.32 ---> using "7a230e17e7b8d0702bc2e9d4f559da2f6315eddb5cd6c65e8339761c79f8e47d" from cache

/home/opam: (run (network host)
                 (shell "opam init --reinit --config .opamrc-sandbox -ni"))
Configuring from /home/opam/.opamrc-sandbox, then /home/opam/.opamrc, and finally from built-in defaults.
Checking for available remotes: rsync and local, git.
  - you won't be able to use mercurial repositories unless you install the hg command on your system.
  - you won't be able to use darcs repositories unless you install the darcs command on your system.

This version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.2, which can't be reverted.
You may want to back it up before going further.

Continue? [Y/n] y
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2025-12-09 03:10.32 ---> using "9c5a325c3a740c78a18a12af56cc9668ef8c7aacfa4c8df0504c4ae2703b88b4" from cache

/home/opam: (run (shell "opam option solver=builtin-0install && opam config report"))
Set to 'builtin-0install' the field solver in global configuration
# opam config report
# opam-version         2.5.0
# self-upgrade         no
# system               arch=x86_64 os=linux os-distribution=alpine os-version=3.22.2
# solver               builtin-0install
# install-criteria     -changed,-count[avoid-version,solution]
# upgrade-criteria     -count[avoid-version,solution]
# jobs                 71
# repositories         1 (version-controlled)
# pinned               1 (version)
# current-switch       5.4
# invariant            ["ocaml-base-compiler" {>= "5.4.0"}]
# compiler-packages    ocaml-base-compiler.5.4.0, ocaml-compiler.5.4.0, ocaml-options-vanilla.1
# ocaml:native         true
# ocaml:native-tools   true
# ocaml:native-dynlink true
# ocaml:stubsdir       /home/opam/.opam/5.4/lib/ocaml/stublibs:/home/opam/.opam/5.4/lib/ocaml
# ocaml:preinstalled   false
# ocaml:compiler       5.4.0
2025-12-09 03:10.32 ---> using "cf9934ea2a7eaf3e8152cb005b31964f6dc686045ac5214611dca6133c878613" from cache

/home/opam: (env OPAMDOWNLOADJOBS 1)

/home/opam: (env OPAMERRLOGLEN 0)

/home/opam: (env OPAMPRECISETRACKING 1)

/home/opam: (env CI true)

/home/opam: (env OPAM_REPO_CI true)

/home/opam: (run (shell "rm -rf opam-repository/"))
2025-12-09 03:10.32 ---> using "911365d967e1a2ce3981abc6f787eb129972761b54733e13a431c538a7fc888e" from cache

/home/opam: (copy (src .) (dst opam-repository/))
2025-12-09 03:10.33 ---> using "a3500e9e30eb0bf52367f742decf034769315a43f78edc256db28f92c765b209" from cache

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2025-12-09 03:10.33 ---> using "25b96135c889f2592f6205ae42131c639ba33abffbe4675f9d6a45a3e3e35d4d" from cache

/home/opam: (run (network host)
                 (shell "opam update --depexts || true"))
+ /usr/bin/sudo "apk" "update"
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/community/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
- v3.22.2-294-g75626991b8e [https://dl-cdn.alpinelinux.org/alpine/v3.22/main]
- v3.22.2-293-g2fae2b85aab [https://dl-cdn.alpinelinux.org/alpine/v3.22/community]
- v3.23.0-514-g075ea81b096 [https://dl-cdn.alpinelinux.org/alpine/edge/main]
- v3.23.0-524-gf9973cb510c [https://dl-cdn.alpinelinux.org/alpine/edge/community]
- v3.23.0-516-g7398c9e91a8 [https://dl-cdn.alpinelinux.org/alpine/edge/testing]
- OK: 60301 distinct packages available
2025-12-09 03:10.33 ---> using "93165aac0a8d7de51bef88985aa8f98ea005737aa30acb890789bb6cf15a749e" from cache

/home/opam: (run (shell "opam pin add -k version -yn jst-config.v0.17.0 v0.17.0"))
jst-config is now pinned to version v0.17.0
2025-12-09 03:10.33 ---> using "84840c7f2723d157292a5fb892a005f99f468a117fed6d54ec9368e55879afab" from cache

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall jst-config.v0.17.0;\
                        \n        res=$?;\
                        \n        test \"$res\" != 31 && exit \"$res\";\
                        \n        export OPAMCLI=2.0;\
                        \n        build_dir=$(opam var prefix)/.opam-switch/build;\
                        \n        failed=$(ls \"$build_dir\");\
                        \n        partial_fails=\"\";\
                        \n        for pkg in $failed; do\
                        \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"alpine-3.22\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'jst-config.v0.17.0' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
jst-config.v0.17.0 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 17 packages
  - install base                    v0.17.3          [required by jst-config]
  - install csexp                   1.5.2            [required by dune-configurator]
  - install dune                    3.20.2           [required by jst-config]
  - install dune-configurator       3.20.2           [required by jst-config]
  - install jst-config              v0.17.0 (pinned)
  - install ocaml-compiler-libs     v0.17.0          [required by ppxlib]
  - install ocaml_intrinsics_kernel v0.17.1          [required by base]
  - install ppx_assert              v0.17.0          [required by jst-config]
  - install ppx_cold                v0.17.0          [required by ppx_assert]
  - install ppx_compare             v0.17.0          [required by ppx_assert]
  - install ppx_derivers            1.2.1            [required by ppxlib]
  - install ppx_here                v0.17.0          [required by ppx_assert]
  - install ppx_sexp_conv           v0.17.1          [required by ppx_assert]
  - install ppxlib                  0.37.0           [required by ppx_assert]
  - install ppxlib_jane             v0.17.4          [required by ppx_compare, ppx_sexp_conv]
  - install sexplib0                v0.17.0          [required by base]
  - install stdlib-shims            0.3.0            [required by ppxlib]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved base.v0.17.3  (cached)
-> retrieved csexp.1.5.2  (cached)
-> retrieved dune.3.20.2, dune-configurator.3.20.2  (cached)
-> retrieved jst-config.v0.17.0  (cached)
-> retrieved ocaml-compiler-libs.v0.17.0  (cached)
-> retrieved ocaml_intrinsics_kernel.v0.17.1  (cached)
-> retrieved ppx_assert.v0.17.0  (cached)
-> retrieved ppx_cold.v0.17.0  (cached)
-> retrieved ppx_compare.v0.17.0  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> retrieved ppx_here.v0.17.0  (cached)
-> retrieved ppx_sexp_conv.v0.17.1  (cached)
-> retrieved ppxlib.0.37.0  (cached)
-> retrieved ppxlib_jane.v0.17.4  (cached)
-> retrieved sexplib0.v0.17.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> installed dune.3.20.2
-> installed ppx_derivers.1.2.1
-> installed stdlib-shims.0.3.0
-> installed csexp.1.5.2
-> installed ocaml_intrinsics_kernel.v0.17.1
-> installed sexplib0.v0.17.0
-> installed ocaml-compiler-libs.v0.17.0
-> installed dune-configurator.3.20.2
-> installed base.v0.17.3
-> installed ppxlib.0.37.0
-> installed ppxlib_jane.v0.17.4
-> installed ppx_cold.v0.17.0
-> installed ppx_here.v0.17.0
-> installed ppx_compare.v0.17.0
-> installed ppx_sexp_conv.v0.17.1
-> installed ppx_assert.v0.17.0
-> installed jst-config.v0.17.0
Done.
# To update the current shell environment, run: eval $(opam env)
2025-12-09 03:10.33 ---> using "15dc84d40beaf68db923cf8c096f5069efd32fbd963fdfcccc30bfdac9a45a2b" from cache
Job succeeded
2025-12-09 03:10.41: Job succeeded