(not at the head of any monitored branch or PR)
2026-04-30 02:03.12: New job: test wire.0.9.0 with dune.3.23.0~alpha2, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29824/head (89a6ae888498500bf7c0fc05361da936fc6acacf)
                              on debian-13-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/29824/head" && git reset --hard 89a6ae88
git fetch origin master
git merge --no-edit d1c56642b8ca7e1166c90bfe0c74f38007bbad58
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-13-ocaml-5.4@sha256:00f499d6f7e3b1be41e5b77f79fcd94054ac0247cdd1991aa7156482fe125d44
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 dune.3.23.0~alpha2 3.23.0~alpha2
RUN opam reinstall dune.3.23.0~alpha2; \
    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 "\"debian-13\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'dune.3.23.0~alpha2' && partial_fails="$partial_fails $pkg"; \
    done; \
    test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
    exit 1
RUN opam reinstall wire.0.9.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 "\"debian-13\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'wire.0.9.0' && partial_fails="$partial_fails $pkg"; \
    done; \
    test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
    exit 1
RUN (opam reinstall --with-test wire.0.9.0) || true
RUN opam reinstall --with-test --verbose wire.0.9.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 "\"debian-13\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'wire.0.9.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 .

2026-04-30 02:03.12: Using cache hint "ocaml/opam:debian-13-ocaml-5.4@sha256:00f499d6f7e3b1be41e5b77f79fcd94054ac0247cdd1991aa7156482fe125d44-dune.3.23.0~alpha2-wire.0.9.0-89a6ae888498500bf7c0fc05361da936fc6acacf"
2026-04-30 02:03.12: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-5.4@sha256:00f499d6f7e3b1be41e5b77f79fcd94054ac0247cdd1991aa7156482fe125d44)
 (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 dune.3.23.0~alpha2 3.23.0~alpha2"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall dune.3.23.0~alpha2;\
             \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 \"\\\"debian-13\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'dune.3.23.0~alpha2' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall wire.0.9.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 \"\\\"debian-13\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'wire.0.9.0' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
 (run (network host)
      (shell "(opam reinstall --with-test wire.0.9.0) || true"))
 (run (shell  "opam reinstall --with-test --verbose wire.0.9.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 \"\\\"debian-13\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'wire.0.9.0' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
)

2026-04-30 02:03.12: Waiting for resource in pool OCluster
2026-04-30 04:43.21: Waiting for worker…
2026-04-30 04:46.20: Got resource from pool OCluster
Building on doris.caelum.ci.dev
All commits already cached
HEAD is now at d1c56642b8 Merge pull request #29820 from jmid/core-0.17.1-bound
Merge made by the 'ort' strategy.
 .../chrome-trace/chrome-trace.3.23.0~alpha2/opam   | 39 +++++++++++
 .../dune-action-plugin.3.23.0~alpha2/opam          | 52 ++++++++++++++
 .../dune-action-trace.3.23.0~alpha2/opam           | 39 +++++++++++
 .../dune-build-info.3.23.0~alpha2/opam             | 45 ++++++++++++
 .../dune-configurator.3.23.0~alpha2/opam           | 49 +++++++++++++
 packages/dune-glob/dune-glob.3.23.0~alpha2/opam    | 42 ++++++++++++
 .../dune-private-libs.3.23.0~alpha2/opam           | 50 ++++++++++++++
 .../dune-rpc-lwt/dune-rpc-lwt.3.23.0~alpha2/opam   | 41 +++++++++++
 packages/dune-rpc/dune-rpc.3.23.0~alpha2/opam      | 44 ++++++++++++
 packages/dune-site/dune-site.3.23.0~alpha2/opam    | 37 ++++++++++
 packages/dune/dune.3.23.0~alpha2/opam              | 80 ++++++++++++++++++++++
 packages/dyn/dyn.3.23.0~alpha2/opam                | 40 +++++++++++
 packages/fs-io/fs-io.3.23.0~alpha2/opam            | 39 +++++++++++
 packages/ocamlc-loc/ocamlc-loc.3.23.0~alpha2/opam  | 43 ++++++++++++
 packages/ordering/ordering.3.23.0~alpha2/opam      | 38 ++++++++++
 packages/stdune/stdune.3.23.0~alpha2/opam          | 46 +++++++++++++
 .../top-closure/top-closure.3.23.0~alpha2/opam     | 38 ++++++++++
 packages/xdg/xdg.3.23.0~alpha2/opam                | 39 +++++++++++
 18 files changed, 801 insertions(+)
 create mode 100644 packages/chrome-trace/chrome-trace.3.23.0~alpha2/opam
 create mode 100644 packages/dune-action-plugin/dune-action-plugin.3.23.0~alpha2/opam
 create mode 100644 packages/dune-action-trace/dune-action-trace.3.23.0~alpha2/opam
 create mode 100644 packages/dune-build-info/dune-build-info.3.23.0~alpha2/opam
 create mode 100644 packages/dune-configurator/dune-configurator.3.23.0~alpha2/opam
 create mode 100644 packages/dune-glob/dune-glob.3.23.0~alpha2/opam
 create mode 100644 packages/dune-private-libs/dune-private-libs.3.23.0~alpha2/opam
 create mode 100644 packages/dune-rpc-lwt/dune-rpc-lwt.3.23.0~alpha2/opam
 create mode 100644 packages/dune-rpc/dune-rpc.3.23.0~alpha2/opam
 create mode 100644 packages/dune-site/dune-site.3.23.0~alpha2/opam
 create mode 100644 packages/dune/dune.3.23.0~alpha2/opam
 create mode 100644 packages/dyn/dyn.3.23.0~alpha2/opam
 create mode 100644 packages/fs-io/fs-io.3.23.0~alpha2/opam
 create mode 100644 packages/ocamlc-loc/ocamlc-loc.3.23.0~alpha2/opam
 create mode 100644 packages/ordering/ordering.3.23.0~alpha2/opam
 create mode 100644 packages/stdune/stdune.3.23.0~alpha2/opam
 create mode 100644 packages/top-closure/top-closure.3.23.0~alpha2/opam
 create mode 100644 packages/xdg/xdg.3.23.0~alpha2/opam

(from ocaml/opam:debian-13-ocaml-5.4@sha256:00f499d6f7e3b1be41e5b77f79fcd94054ac0247cdd1991aa7156482fe125d44)
Unable to find image 'ocaml/opam:debian-13-ocaml-5.4@sha256:00f499d6f7e3b1be41e5b77f79fcd94054ac0247cdd1991aa7156482fe125d44' locally
docker.io/ocaml/opam@sha256:00f499d6f7e3b1be41e5b77f79fcd94054ac0247cdd1991aa7156482fe125d44: Pulling from ocaml/opam
Digest: sha256:00f499d6f7e3b1be41e5b77f79fcd94054ac0247cdd1991aa7156482fe125d44
Status: Downloaded newer image for ocaml/opam@sha256:00f499d6f7e3b1be41e5b77f79fcd94054ac0247cdd1991aa7156482fe125d44
2026-04-30 04:46.35 ---> using "3ad720629c2266fa8bdd5d2923dac1e3690d78741c5f65fb1eb4d33725df507c" from cache

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

/: (workdir /home/opam)

/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2026-04-30 04:46.35 ---> using "0d128a17914946ba4fe4852d9c905008c6396e0502e54d164cf768f35be583e7" 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
[NOTE] The 'jobs' option was reset, its value was 71 and its new value will vary according to the current number of cores on your machine. You can restore the fixed value using:
           opam option jobs=71 --global
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2026-04-30 04:46.35 ---> using "d70296180507e779e1710b2206cbd2ed2063f4f7ba3a5617311725a56ede5942" 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.1
# self-upgrade         no
# system               arch=x86_64 os=linux os-distribution=debian os-version=13
# solver               builtin-0install
# install-criteria     -changed,-count[avoid-version,solution]
# upgrade-criteria     -count[avoid-version,solution]
# jobs                 255
# repositories         1 (version-controlled)
# pinned               1 (version)
# current-switch       5.4
# invariant            ["ocaml-base-compiler" {= "5.4.1"}]
# compiler-packages    ocaml-base-compiler.5.4.1, ocaml-compiler.5.4.1, 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.1
2026-04-30 04:46.35 ---> using "8495d51697191c14a2d936280d33309feb632049461097708f2914849f49e434" 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/"))
2026-04-30 04:46.35 ---> using "e71fcfd10a966fea9cbc39c81a8170d118ef6c5bc3e82b827a8fc5873a3b02c4" from cache

/home/opam: (copy (src .) (dst opam-repository/))
2026-04-30 04:46.36 ---> using "1a95fcfdbe33d3db5ee6da23907452f21ceefede84b20ffd63d9951a0582315e" from cache

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-04-30 04:46.36 ---> using "c06cea79d066df0e24bbd5a14e3fb6af810f6c2510831dea6a3f9b3abe543bc6" from cache

/home/opam: (run (network host)
                 (shell "opam update --depexts || true"))
+ /usr/bin/sudo "apt-get" "update"
- Hit:1 http://deb.debian.org/debian trixie InRelease
- Get:2 http://deb.debian.org/debian trixie-updates InRelease [47.3 kB]
- Get:3 http://deb.debian.org/debian-security trixie-security InRelease [43.4 kB]
- Get:4 http://deb.debian.org/debian-security trixie-security/main amd64 Packages [129 kB]
- Fetched 219 kB in 0s (1811 kB/s)
- Reading package lists...
2026-04-30 04:46.36 ---> using "79dc76009a07376b7d0a125988001bdfe429c021968c950cc37d4850b4405ed8" from cache

/home/opam: (run (shell "opam pin add -k version -yn dune.3.23.0~alpha2 3.23.0~alpha2"))
dune is now pinned to version 3.23.0~alpha2
2026-04-30 04:46.36 ---> using "0fceafb872b30d0895792b4eaa943f03be2c3da266d1c709c5e111c4f9d0ce56" from cache

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall dune.3.23.0~alpha2;\
                        \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 \"\\\"debian-13\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'dune.3.23.0~alpha2' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
dune.3.23.0~alpha2 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 1 package
  - install dune 3.23.0~alpha2 (pinned)

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved dune.3.23.0~alpha2  (cached)
-> installed dune.3.23.0~alpha2
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-30 04:46.36 ---> using "33f3806b768ed3bccb769c14ec85f285cc9a11aedea3160e9b687d42e8d992f8" from cache

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall wire.0.9.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 \"\\\"debian-13\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'wire.0.9.0' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
wire.0.9.0 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 20 packages
  - install bigstringaf        0.10.0        [required by eio]
  - install bytesrw            0.3.0         [required by wire]
  - install conf-pkg-config    4             [required by bytesrw]
  - install csexp              1.5.2         [required by dune-configurator]
  - install cstruct            6.2.0         [required by eio]
  - install domain-local-await 1.0.1         [required by eio]
  - install dune-configurator  3.23.0~alpha2 [required by bigstringaf]
  - install eio                1.3           [required by wire]
  - install fmt                0.11.0        [required by wire]
  - install hmap               0.8.1         [required by eio]
  - install lwt-dllist         1.1.0         [required by eio]
  - install mtime              2.1.0         [required by eio]
  - install ocamlbuild         0.16.1        [required by bytesrw]
  - install ocamlfind          1.9.8         [required by bytesrw]
  - install optint             0.3.0         [required by eio]
  - install psq                0.2.1         [required by eio]
  - install seq                base          [required by psq]
  - install thread-table       1.0.0         [required by domain-local-await]
  - install topkg              1.1.1         [required by bytesrw]
  - install wire               0.9.0

The following system packages will first need to be installed:
    pkg-config

<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>

opam believes some required external dependencies are missing. opam can:
> 1. Run apt-get to install them (may need root/sudo access)
  2. Display the recommended apt-get command and wait while you run it manually (e.g. in another terminal)
  3. Continue anyway, and, upon success, permanently register that this external dependency is present, but not detectable
  4. Abort the installation

[1/2/3/4] 1

+ /usr/bin/sudo "apt-get" "install" "-qq" "-yy" "pkg-config"
- Selecting previously unselected package libpkgconf3:amd64.
- (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20654 files and directories currently installed.)
- Preparing to unpack .../libpkgconf3_1.8.1-4_amd64.deb ...
- Unpacking libpkgconf3:amd64 (1.8.1-4) ...
- Selecting previously unselected package pkgconf-bin.
- Preparing to unpack .../pkgconf-bin_1.8.1-4_amd64.deb ...
- Unpacking pkgconf-bin (1.8.1-4) ...
- Selecting previously unselected package pkgconf:amd64.
- Preparing to unpack .../pkgconf_1.8.1-4_amd64.deb ...
- Unpacking pkgconf:amd64 (1.8.1-4) ...
- Selecting previously unselected package pkg-config:amd64.
- Preparing to unpack .../pkg-config_1.8.1-4_amd64.deb ...
- Unpacking pkg-config:amd64 (1.8.1-4) ...
- Setting up libpkgconf3:amd64 (1.8.1-4) ...
- Setting up pkgconf-bin (1.8.1-4) ...
- Setting up pkgconf:amd64 (1.8.1-4) ...
- Setting up pkg-config:amd64 (1.8.1-4) ...
- Processing triggers for libc-bin (2.41-12+deb13u2) ...

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved bigstringaf.0.10.0  (cached)
-> retrieved bytesrw.0.3.0  (cached)
-> retrieved csexp.1.5.2  (cached)
-> retrieved cstruct.6.2.0  (cached)
-> installed conf-pkg-config.4
-> retrieved domain-local-await.1.0.1  (cached)
-> installed csexp.1.5.2
-> retrieved dune-configurator.3.23.0~alpha2  (cached)
-> retrieved eio.1.3  (cached)
-> retrieved fmt.0.11.0  (cached)
-> retrieved hmap.0.8.1  (cached)
-> retrieved lwt-dllist.1.1.0  (cached)
-> retrieved mtime.2.1.0  (cached)
-> retrieved ocamlbuild.0.16.1  (cached)
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved optint.0.3.0  (cached)
-> retrieved psq.0.2.1  (cached)
-> retrieved seq.base  (cached)
-> installed seq.base
-> retrieved thread-table.1.0.0  (cached)
-> retrieved topkg.1.1.1  (cached)
-> installed lwt-dllist.1.1.0
-> retrieved wire.0.9.0  (cached)
-> installed thread-table.1.0.0
-> installed optint.0.3.0
-> installed psq.0.2.1
-> installed domain-local-await.1.0.1
-> installed dune-configurator.3.23.0~alpha2
-> installed bigstringaf.0.10.0
-> installed ocamlfind.1.9.8
-> installed ocamlbuild.0.16.1
-> installed topkg.1.1.1
-> installed hmap.0.8.1
-> installed fmt.0.11.0
-> installed mtime.2.1.0
-> installed cstruct.6.2.0
-> installed bytesrw.0.3.0
-> installed eio.1.3
-> installed wire.0.9.0
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-30 04:47.04 ---> saved as "edb19bda9d596481da27a4b117644416a265f55fc7ee0c9fbef3443d3c7c4280"

/home/opam: (run (network host)
                 (shell "(opam reinstall --with-test wire.0.9.0) || true"))
The following actions will be performed:
=== recompile 5 packages
  - recompile bytesrw            0.3.0  [uses cmdliner]
  - recompile cstruct            6.2.0  [uses fmt]
  - recompile eio                1.3    [uses fmt]
  - recompile fmt                0.11.0 [uses cmdliner]
  - recompile wire               0.9.0
=== install 10 packages
  - install   afl-persistent     1.4    [required by alcobar]
  - install   alcobar            0.3.1  [required by wire]
  - install   alcotest           1.9.1  [required by wire]
  - install   astring            0.8.5  [required by alcotest]
  - install   cmdliner           2.1.1  [required by alcobar]
  - install   memtrace           0.2.3  [required by wire]
  - install   ocaml-syntax-shims 1.0.0  [required by alcotest]
  - install   re                 1.14.0 [required by wire]
  - install   stdlib-shims       0.3.0  [required by alcotest]
  - install   uutf               1.0.4  [required by alcotest]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved afl-persistent.1.4  (https://opam.ocaml.org/cache)
-> retrieved alcobar.0.3.1  (https://opam.ocaml.org/cache)
-> retrieved alcotest.1.9.1  (https://opam.ocaml.org/cache)
-> installed afl-persistent.1.4
-> retrieved astring.0.8.5  (https://opam.ocaml.org/cache)
-> retrieved bytesrw.0.3.0  (https://opam.ocaml.org/cache)
-> retrieved cmdliner.2.1.1  (https://opam.ocaml.org/cache)
-> retrieved cstruct.6.2.0  (https://opam.ocaml.org/cache)
-> retrieved eio.1.3  (https://opam.ocaml.org/cache)
-> retrieved fmt.0.11.0  (https://opam.ocaml.org/cache)
-> retrieved memtrace.0.2.3  (https://opam.ocaml.org/cache)
-> retrieved ocaml-syntax-shims.1.0.0  (https://opam.ocaml.org/cache)
-> retrieved re.1.14.0  (https://opam.ocaml.org/cache)
-> retrieved stdlib-shims.0.3.0  (https://opam.ocaml.org/cache)
-> retrieved uutf.1.0.4  (https://opam.ocaml.org/cache)
-> retrieved wire.0.9.0  (https://opam.ocaml.org/cache)
-> installed stdlib-shims.0.3.0
-> installed astring.0.8.5
-> installed memtrace.0.2.3
-> installed ocaml-syntax-shims.1.0.0
-> installed re.1.14.0
-> removed   wire.0.9.0
-> removed   bytesrw.0.3.0
-> removed   eio.1.3
-> removed   cstruct.6.2.0
-> removed   fmt.0.11.0
-> installed cmdliner.2.1.1
-> installed uutf.1.0.4
-> installed fmt.0.11.0
-> installed cstruct.6.2.0
-> installed bytesrw.0.3.0
-> installed alcotest.1.9.1
-> installed alcobar.0.3.1
-> installed eio.1.3
-> installed wire.0.9.0
Done.

<><> memtrace.0.2.3 installed successfully ><><><><><><><><><><><><><><><><><><>
=> Tracing the current process is not supported on multicore ocaml, so uses of Gc.Memprof will fail. The library is still useful for reading and writing trace files even when Gc.Memprof is not working.

<><> afl-persistent.1.4 installed successfully ><><><><><><><><><><><><><><><><>
=> afl-persistent is installed, but since the current OCaml compiler does
   not enable AFL instrumentation by default, most packages will not be
   instrumented and fuzzing with afl-fuzz may not be effective.

   To globally enable AFL instrumentation, create an OCaml switch like:

     opam switch create 5.4.1+afl ocaml-variants.5.4.1+options ocaml-option-afl
# To update the current shell environment, run: eval $(opam env)
2026-04-30 04:47.26 ---> saved as "8ca4340c1020709dc0717081c3b7dbba3658db8a65cb827fba7d09654f44314c"

/home/opam: (run (shell  "opam reinstall --with-test --verbose wire.0.9.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 \"\\\"debian-13\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'wire.0.9.0' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
The following actions will be performed:
=== recompile 1 package
  - recompile wire 0.9.0

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing  1/4: [wire.0.9.0: extract]
-> retrieved wire.0.9.0  (cached)
Processing  2/4: [wire: dune build]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "wire" "-j" "255" "@install" "@runtest" (CWD=/home/opam/.opam/5.4/.opam-switch/build/wire.0.9.0)
- (cd _build/default/lib/test/uint_var && ./test.exe)
- Testing `uint_var'.
- This run has ID `QPQIGOR3'.
- 
-   [OK]          uint_var          0   1-byte BE.
-   [OK]          uint_var          1   1-byte LE.
-   [OK]          uint_var          2   2-byte BE.
-   [OK]          uint_var          3   2-byte LE.
-   [OK]          uint_var          4   3-byte BE.
-   [OK]          uint_var          5   3-byte LE.
-   [OK]          uint_var          6   7-byte BE.
-   [OK]          uint_var          7   7-byte LE.
-   [OK]          uint_var          8   byte order.
-   [OK]          uint_var          9   zero.
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/wire.0.9.0/_build/default/lib/test/uint_var/_build/_tests/uint_var'.
- Test Successful in 0.001s. 10 tests run.
- (cd _build/default/lib/test/bitfield && ./test.exe)
- Testing `bitfield'.
- This run has ID `QOZ9RFVV'.
- 
-   [OK]          bitfield          0   byte_size.
-   [OK]          bitfield          1   total_bits.
-   [OK]          bitfield          2   equal.
-   [OK]          bitfield          3   read_word/write_word roundtrip.
-   [OK]          bitfield          4   native_bit_order.
-   [OK]          bitfield          5   extract LSB-first.
-   [OK]          bitfield          6   extract MSB-first.
-   [OK]          bitfield          7   bit_order independent of base endian.
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/wire.0.9.0/_build/default/lib/test/bitfield/_build/_tests/bitfield'.
- Test Successful in 0.001s. 8 tests run.
- (cd _build/default/lib/test/field && ./test.exe)
- Testing `field'.
- This run has ID `KLNGLTDF'.
- 
-   [OK]          field          0   v creates named field.
-   [OK]          field          1   name returns name.
-   [OK]          field          2   anon.
-   [OK]          field          3   ref returns Ref expr.
-   [OK]          field          4   ref on bool field.
-   [OK]          field          5   ref on mapped field.
-   [OK]          field          6   ref on uint64 field.
-   [OK]          field          7   pp prints name.
-   [OK]          field          8   to_decl named.
-   [OK]          field          9   to_decl anon.
-   [OK]          field         10   typ.
-   [OK]          field         11   constraint present.
-   [OK]          field         12   no constraint.
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/wire.0.9.0/_build/default/lib/test/field/_build/_tests/field'.
- Test Successful in 0.001s. 13 tests run.
- (cd _build/default/lib/test/diff && ./test.exe)
- Testing `wire_diff'.
- This run has ID `ZL0RROCN'.
- 
-   [OK]          wire_diff          0   read match.
-   [OK]          wire_diff          1   read both failed.
-   [OK]          wire_diff          2   read uses ocaml_read override.
-   [OK]          wire_diff          3   write.
-   [OK]          wire_diff          4   write uses ocaml_read override.
-   [OK]          wire_diff          5   full_roundtrip.
-   [OK]          wire_diff          6   full_roundtrip: c rejects.
-   [OK]          wire_diff          7   write: c rejects.
-   [OK]          wire_diff          8   projection read.
-   [OK]          wire_diff          9   projection roundtrip.
-   [OK]          wire_diff         10   harness.
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/wire.0.9.0/_build/default/lib/test/diff/_build/_tests/wire_diff'.
- Test Successful in 0.001s. 11 tests run.
- (cd _build/default/lib/test/everparse && ./test.exe)
- Testing `wire_3d'.
- This run has ID `6RR96TY3'.
- 
-   [OK]          wire_3d          0   everparse_name.
-   [OK]          wire_3d          1   generate 3d files.
-   [OK]          wire_3d          2   schema_of_struct.
-   [OK]          wire_3d          3   ensure_dir.
-   [OK]          wire_3d          4   generate_c (needs 3d.exe).
-   [OK]          wire_3d          5   uses_wire_ctx.
-   [OK]          wire_3d          6   has_3d_exe.
-   [OK]          wire_3d          7   main exists.
-   [OK]          wire_3d          8   projection: wire_size matches Codec.
-   [OK]          wire_3d          9   projection: filenames match EverParse ou...
-   [OK]          wire_3d         10   e2e: compile + run across naming convent...
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/wire.0.9.0/_build/default/lib/test/everparse/_build/_tests/wire_3d'.
- Test Successful in 0.029s. 11 tests run.
- (cd _build/default/lib/test/diff-gen && ./test.exe)
- Testing `wire_diff_gen'.
- This run has ID `BMZM8PGG'.
- 
-   [OK]          wire_diff_gen          0   schema creation.
-   [OK]          wire_diff_gen          1   generate 3d files.
-   [OK]          wire_diff_gen          2   generate_c_stubs.
-   [OK]          wire_diff_gen          3   generate_ml_stubs.
-   [OK]          wire_diff_gen          4   generate_test_runner.
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/wire.0.9.0/_build/default/lib/test/diff-gen/_build/_tests/wire_diff_gen'.
- Test Successful in 0.005s. 5 tests run.
- (cd _build/default/test/bench && ./test.exe)
- Testing `bench'.
- This run has ID `XIBVZX71'.
- 
-   [OK]          bench_lib                 0   cycling: sequence.
-   [OK]          bench_lib                 1   cycling: wraps.
-   [OK]          bench_lib                 2   cycling: reset.
-   [OK]          bench_lib                 3   cycling: reads correct data.
-   [OK]          bench_lib                 4   cycling: single item.
-   [OK]          bench_lib                 5   check: ocaml only.
-   [OK]          bench_lib                 6   check: with ffi.
-   [OK]          bench_lib                 7   check: with expect.
-   [OK]          bench_lib                 8   check: ffi receives correct buf.
-   [OK]          bench_lib                 9   builder: v ocaml only.
-   [OK]          bench_lib                10   builder: with_c/with_ffi order.
-   [OK]          bench_lib                11   reset: called before check.
-   [OK]          bench_lib                12   reset: called before ffi check.
-   [OK]          bench_lib                13   reset: count in run_one.
-   [OK]          bench_lib                14   reset: reinitializes cycling.
-   [OK]          bench_lib                15   reset: mutable counter.
-   [OK]          bench_lib                16   pack: basic.
-   [OK]          bench_lib                17   pack: single.
-   [OK]          bench_lib                18   pack: byte layout.
-   [OK]          bench_lib                19   timing: time_ns non-negative.
-   [OK]          bench_lib                20   timing: time_ns divides by n.
-   [OK]          bench_lib                21   timing: alloc_words zero.
-   [OK]          bench_lib                22   timing: alloc_words nonzero.
-   [OK]          bench_lib                23   timing: alloc_words scales.
-   [OK]          bench_lib                24   run_table: smoke.
-   [OK]          bench_lib                25   run_table: with unit.
-   [OK]          bench_lib                26   run_table: multiple specs.
-   [OK]          bench_lib                27   run_table: size zero.
-   [OK]          bench_lib                28   run_table: ffi reset.
-   [OK]          bench_lib                29   integration: cycling through ru...
-   [OK]          demo_bench_cases          0   write verifiers.
-   [OK]          demo_bench_cases          1   projection ids unique.
-   [OK]          demo_bench_cases          2   read cases derived.
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/wire.0.9.0/_build/default/test/bench/_build/_tests/bench'.
- Test Successful in 0.053s. 33 tests run.
- (cd _build/default/test && ./test.exe)
- Testing `wire'.
- This run has ID `HK1G9TEE'.
- 
-   [OK]          wire               0   parse: uint8.
-   [OK]          wire               1   parse: uint16 le.
-   [OK]          wire               2   parse: uint16 be.
-   [OK]          wire               3   parse: uint32 le.
-   [OK]          wire               4   parse: uint32 be.
-   [OK]          wire               5   parse: uint64 le.
-   [OK]          wire               6   parse: array.
-   [OK]          wire               7   parse: byte_array.
-   [OK]          wire               8   parse: variants valid.
-   [OK]          wire               9   parse: variants invalid.
-   [OK]          wire              10   parse: all_bytes.
-   [OK]          wire              11   parse: all_zeros valid.
-   [OK]          wire              12   parse: all_zeros invalid.
-   [OK]          wire              13   parse: bitfield.
-   [OK]          wire              14   parse: eof error.
-   [OK]          wire              15   parse: struct.
-   [OK]          wire              16   parse: struct constraint.
-   [OK]          wire              17   parse: struct constraint fail.
-   [OK]          wire              18   parse: struct action return true.
-   [OK]          wire              19   parse: struct action return false.
-   [OK]          wire              20   parse: struct action var.
-   [OK]          wire              21   parse: struct action abort.
-   [OK]          wire              22   parse: param struct with params.
-   [OK]          wire              23   parse: param struct where fail.
-   [OK]          wire              24   sizeof.
-   [OK]          wire              25   sizeof_this.
-   [OK]          wire              26   sizeof_this fail.
-   [OK]          wire              27   field_pos.
-   [OK]          wire              28   field_pos fail.
-   [OK]          wire              29   sizeof_this with action.
-   [OK]          wire              30   encode: uint8.
-   [OK]          wire              31   encode: uint16 le.
-   [OK]          wire              32   encode: uint16 be.
-   [OK]          wire              33   encode: uint32 le.
-   [OK]          wire              34   encode: uint32 be.
-   [OK]          wire              35   encode: array.
-   [OK]          wire              36   encode: byte_array.
-   [OK]          wire              37   encode: variants.
-   [OK]          wire              38   encode: bitfield.
-   [OK]          wire              39   encode: bitfield LSB-first.
-   [OK]          wire              40   bits: single-field positions.
-   [OK]          wire              41   bits: roundtrip all (base, bit_order).
-   [OK]          wire              42   roundtrip: uint8.
-   [OK]          wire              43   roundtrip: uint16.
-   [OK]          wire              44   roundtrip: uint32.
-   [OK]          wire              45   roundtrip: array.
-   [OK]          wire              46   roundtrip: byte_array.
-   [OK]          wire              47   stream: uint8 chunk=1.
-   [OK]          wire              48   stream: uint16 chunk=1.
-   [OK]          wire              49   stream: uint16 chunk=3.
-   [OK]          wire              50   stream: uint32 chunk=1.
-   [OK]          wire              51   stream: uint32 chunk=3.
-   [OK]          wire              52   stream: uint64 chunk=1.
-   [OK]          wire              53   stream: uint64 chunk=3.
-   [OK]          wire              54   stream: uint64 chunk=5.
-   [OK]          wire              55   stream: bitfield chunk=1.
-   [OK]          wire              56   stream: encode chunk=1.
-   [OK]          wire              57   stream: encode chunk=3.
-   [OK]          action             0   assign propagates to later field.
-   [OK]          action             1   assign propagates (fail).
-   [OK]          action             2   assign with expression.
-   [OK]          action             3   return true.
-   [OK]          action             4   return false.
-   [OK]          action             5   return bool expr (pass).
-   [OK]          action             6   return bool expr (fail).
-   [OK]          action             7   abort.
-   [OK]          action             8   var local binding.
-   [OK]          action             9   if true branch.
-   [OK]          action            10   if false (no else).
-   [OK]          action            11   if/else.
-   [OK]          action            12   if/else abort.
-   [OK]          action            13   if nested.
-   [OK]          action            14   on_act.
-   [OK]          action            15   stmt sequencing.
-   [OK]          action            16   return short-circuits.
-   [OK]          action            17   abort short-circuits.
-   [OK]          action            18   empty action.
-   [OK]          action            19   action on bitfield.
-   [OK]          codec              0   record: encode.
-   [OK]          codec              1   record: decode.
-   [OK]          codec              2   record: roundtrip.
-   [OK]          codec              3   record: struct_of_codec.
-   [OK]          codec              4   record: metadata decode ok.
-   [OK]          codec              5   record: metadata constraint fail.
-   [OK]          codec              6   record: metadata action fail.
-   [OK]          codec              7   record: metadata decode with params.
-   [OK]          codec              8   record: metadata where fail.
-   [OK]          codec              9   record: metadata struct_of_codec.
-   [OK]          codec             10   validate: rejects bad where.
-   [OK]          codec             11   validate: rejects bad constraint.
-   [OK]          codec             12   validate: then get.
-   [OK]          codec             13   record: with_multi.
-   [OK]          codec             14   record: byte_array roundtrip.
-   [OK]          codec             15   record: byte_array padding.
-   [OK]          codec             16   codec bitfield: wire_size.
-   [OK]          codec             17   codec bitfield: roundtrip.
-   [OK]          codec             18   codec bitfield: byte layout.
-   [OK]          codec             19   codec bitfield: decode.
-   [OK]          codec             20   codec bitfield: multi group.
-   [OK]          codec             21   codec bitfield: struct_of_codec.
-   [OK]          codec             22   codec bitfield: overflow u8.
-   [OK]          codec             23   codec bitfield: overflow u16.
-   [OK]          codec             24   codec bitfield: overflow u32.
-   [OK]          codec             25   codec bitfield: max valid.
-   [OK]          codec             26   codec bitfield: overflow 1-bit.
-   [OK]          codec             27   action: fires on decode_with.
-   [OK]          codec             28   action: fires on get.
-   [OK]          codec             29   action: not fired by validate.
-   [OK]          codec             30   action: no action zero overhead.
-   [OK]          codec             31   action: get with env.
-   [OK]          codec             32   action: field in two codecs.
-   [OK]          codec             33   action: get without env.
-   [OK]          codec             34   action: abort on get.
-   [OK]          codec             35   action: no action ignores env.
-   [OK]          codec             36   action: multiple calls update env.
-   [OK]          codec             37   action: with input param.
-   [OK]          codec             38   action: input param no env.
-   [OK]          codec             39   action: output only.
-   [OK]          codec             40   action: var then assign.
-   [OK]          codec             41   action: cross-field ref.
-   [OK]          codec             42   validate: constraint only.
-   [OK]          codec             43   validate: where only.
-   [OK]          codec             44   action: two staged same field.
-   [OK]          codec             45   shared: encode bitfield.
-   [OK]          codec             46   misuse: get field not in codec.
-   [OK]          codec             47   misuse: set field not in codec.
-   [OK]          codec             48   misuse: bitfield on non-bitfield.
-   [OK]          codec             49   misuse: env from wrong codec.
-   [OK]          codec             50   misuse: wrong env with action.
-   [OK]          codec             51   misuse: decode short buffer.
-   [OK]          codec             52   misuse: encode short buffer.
-   [OK]          codec             53   shared: same field two codecs get.
-   [OK]          codec             54   shared: same field two codecs set.
-   [OK]          codec             55   shared: same field two codecs decode.
-   [OK]          codec             56   shared: same field two codecs encode.
-   [OK]          codec             57   shared: same bitfield two codecs.
-   [OK]          codec             58   shared: staged before second seal.
-   [OK]          codec             59   view: get uint.
-   [OK]          codec             60   view: get bitfield.
-   [OK]          codec             61   view: get bool.
-   [OK]          codec             62   view: set bitfield.
-   [OK]          codec             63   view: set uint.
-   [OK]          codec             64   view: set bool.
-   [OK]          codec             65   view: bounds check.
-   [OK]          codec             66   view: with offset.
-   [OK]          codec             67   view: shared field spec.
-   [OK]          codec             68   view: shared bitfield spec.
-   [OK]          codec             69   view: shared set independent.
-   [OK]          codec             70   bit_order: IPv4 Version/IHL decode.
-   [OK]          codec             71   bit_order: IPv4 Version/IHL roundtrip.
-   [OK]          codec             72   bit_order: IPv4 Flags/FragOffset.
-   [OK]          codec             73   bit_order: Lsb_first opt-in.
-   [OK]          codec             74   bit_order: different orders separate w...
-   [OK]          codec             75   view: byte_slice get.
-   [OK]          codec             76   view: byte_slice decode.
-   [OK]          codec             77   view: byte_slice nested.
-   [OK]          codec             78   raw: get uint.
-   [OK]          codec             79   raw: get bitfield.
-   [OK]          codec             80   raw: set uint.
-   [OK]          codec             81   raw: set bitfield.
-   [OK]          codec             82   raw: sub nested.
-   [OK]          codec             83   raw: sub 3 layers.
-   [OK]          codec             84   raw: with offset.
-   [OK]          codec             85   dep: byte_slice decode empty.
-   [OK]          codec             86   dep: byte_slice decode 4.
-   [OK]          codec             87   dep: byte_slice decode 100.
-   [OK]          codec             88   dep: byte_slice roundtrip.
-   [OK]          codec             89   dep: byte_slice get payload.
-   [OK]          codec             90   dep: byte_slice sub.
-   [OK]          codec             91   dep: byte_slice set length.
-   [OK]          codec             92   dep: byte_slice get length.
-   [OK]          codec             93   dep: byte_array decode.
-   [OK]          codec             94   dep: byte_array roundtrip.
-   [OK]          codec             95   dep: byte_array get.
-   [OK]          codec             96   dep: fixed after variable get checksum.
-   [OK]          codec             97   dep: fixed after variable set checksum.
-   [OK]          codec             98   dep: fixed after variable decode.
-   [OK]          codec             99   dep: fixed after variable roundtrip.
-   [OK]          codec            100   dep: is_fixed.
-   [OK]          codec            101   dep: wire_size raises.
-   [OK]          codec            102   dep: min_wire_size.
-   [OK]          codec            103   dep: wire_size_at.
-   [OK]          codec            104   dep: codec ref.
-   [OK]          codec            105   dep: codec ref size eval.
-   [OK]          codec            106   dep: struct_of_codec.
-   [OK]          codec            107   dep: trailer struct_of_codec.
-   [OK]          codec            108   codec: sizeof_this.
-   [OK]          codec            109   codec: field_pos.
-   [OK]          codec            110   bitfield: extract matches get.
-   [OK]          codec            111   bitfield: non-bf field raises.
-   [OK]          codec            112   bitfield: short buffer.
-   [OK]          codec            113   bitfield: load_word shared.
-   [OK]          codec            114   embed: decode.
-   [OK]          codec            115   embed: encode.
-   [OK]          codec            116   embed: roundtrip.
-   [OK]          codec            117   embed: wire_size.
-   [OK]          codec            118   embed: bitfield.
-   [OK]          codec            119   embed: nested.
-   [OK]          codec            120   embed: nested roundtrip.
-   [OK]          codec            121   embed: cross field ref.
-   [OK]          codec            122   embed: cross field ref varying.
-   [OK]          codec            123   embed: cross field ref oversized.
-   [OK]          codec            124   embed: cross field ref underflow.
-   [OK]          codec            125   embed: cross field ref zero data.
-   [OK]          codec            126   embed: cross field ref shadow.
-   [OK]          codec            127   embed: cross field ref two levels.
-   [OK]          codec            128   embed: cross field ref bitfield.
-   [OK]          codec            129   optional: present decode.
-   [OK]          codec            130   optional: absent decode.
-   [OK]          codec            131   optional: present encode.
-   [OK]          codec            132   optional: absent encode.
-   [OK]          codec            133   optional: present roundtrip.
-   [OK]          codec            134   optional: absent roundtrip.
-   [OK]          codec            135   optional: wire_size present.
-   [OK]          codec            136   optional: wire_size absent.
-   [OK]          codec            137   optional: codec present.
-   [OK]          codec            138   optional: codec absent.
-   [OK]          codec            139   optional: both present.
-   [OK]          codec            140   optional: both absent.
-   [OK]          codec            141   optional: mixed.
-   [OK]          codec            142   optional: dynamic present.
-   [OK]          codec            143   optional: dynamic absent.
-   [OK]          codec            144   optional: dynamic get trail.
-   [OK]          codec            145   optional: bool ref present.
-   [OK]          codec            146   optional: bool ref absent.
-   [OK]          codec            147   ref: uint64 in size expr.
-   [OK]          codec            148   repeat: decode empty.
-   [OK]          codec            149   repeat: decode one.
-   [OK]          codec            150   repeat: decode multiple.
-   [OK]          codec            151   repeat: encode.
-   [OK]          codec            152   repeat: roundtrip.
-   [OK]          codec            153   repeat: primitive.
-   [OK]          codec            154   repeat: with trailer.
-   [OK]          codec            155   repeat: variable size elements.
-   [OK]          codec            156   composition: tm-like full.
-   [OK]          codec            157   composition: tm-like no trailing.
-   [OK]          codec            158   composition: tm-like roundtrip.
-   [OK]          codec            159   multi-var: decode.
-   [OK]          codec            160   multi-var: roundtrip.
-   [OK]          codec            161   multi-var: get.
-   [OK]          codec            162   multi-var: fixed after.
-   [OK]          codec            163   uint: 3-byte BE roundtrip.
-   [OK]          codec            164   uint: 1-byte like uint8.
-   [OK]          codec            165   uint: 5-byte LE roundtrip.
-   [OK]          codec            166   uint: dynamic size.
-   [OK]          everparse          0   generation: bitfields.
-   [OK]          everparse          1   generation: enumerations.
-   [OK]          everparse          2   generation: field dependence.
-   [OK]          everparse          3   generation: casetype.
-   [OK]          everparse          4   generation: pretty print.
-   [OK]          everparse          5   3d: codec embed.
-   [OK]          everparse          6   3d: codec nested.
-   [OK]          everparse          7   3d: optional present.
-   [OK]          everparse          8   3d: optional absent.
-   [OK]          everparse          9   3d: repeat.
-   [OK]          everparse         10   3d: tm-like.
-   [OK]          everparse         11   3d: bit_order U8 Msb_first reorder.
-   [OK]          everparse         12   3d: bit_order U8 Msb_first padding.
-   [OK]          everparse         13   3d: bit_order native no reorder.
-   [OK]          everparse         14   3d: bit_order constraint collapse.
-   [OK]          everparse         15   3d: dep-size schema.
-   [OK]          everparse         16   3d: dep-size roundtrip.
-   [OK]          everparse         17   3d: param in size.
-   [OK]          everparse         18   3d: reserved word escaping.
-   [OK]          param              0   input spec.
-   [OK]          param              1   output spec.
-   [OK]          param              2   input binding.
-   [OK]          param              3   output binding.
-   [OK]          param              4   input param constraint.
-   [OK]          param              5   output param action.
-   [OK]          param              6   output param computed.
-   [OK]          param              7   where clause pass.
-   [OK]          param              8   where clause fail.
-   [OK]          param              9   mixed input + output.
-   [OK]          param             10   codec decode with params.
-   [OK]          param             11   codec where fail.
-   [OK]          param             12   3D rendering.
-   [OK]          param             13   no params.
-   [OK]          param             14   param: size decode.
-   [OK]          param             15   param: different sizes.
-   [OK]          param             16   param: size zero.
-   [OK]          ascii              0   simple 32-bit row.
-   [OK]          ascii              1   two rows.
-   [OK]          ascii              2   bitfields.
-   [OK]          ascii              3   single field.
-   [OK]          ascii              4   uint64 spans rows.
-   [OK]          ascii              5   single bit.
-   [OK]          ascii              6   non-aligned.
-   [OK]          ascii              7   empty.
-   [OK]          ascii              8   variable length.
-   [OK]          ascii              9   of_codec.
-   [OK]          ascii             10   pp_codec.
-   [OK]          ascii             11   pp_struct.
-   [OK]          staged             0   stage/unstage function.
-   [OK]          staged             1   stage/unstage value.
-   [OK]          uint32             0   roundtrip le.
-   [OK]          uint32             1   roundtrip be.
-   [OK]          uint32             2   of_int masks.
-   [OK]          uint63             0   roundtrip le.
-   [OK]          uint63             1   roundtrip be.
-   [OK]          uint63             2   of_int identity.
-   [OK]          types              0   field_wire_size.
-   [OK]          types              1   struct_name.
-   [OK]          eval               0   bind and expr.
-   [OK]          eval               1   int_of.
-   [OK]          eval               2   set_pos.
-   [OK]          eval               3   action none.
-   [OK]          eval               4   cast U8.
-   [OK]          eval               5   cast U16.
-   [OK]          eval               6   cast U32.
-   [OK]          eval               7   cast U64.
-   [OK]          eval               8   cast negative.
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/wire.0.9.0/_build/default/test/_build/_tests/wire'.
- Test Successful in 0.040s. 312 tests run.
- (cd _build/default/fuzz && ./fuzz.exe)
- Testing `wire'.
- This run has ID `IZ1BUSC4'.
- 
-   [OK]          everparse          0   pp uint8.
-   [OK]          everparse          1   pp uint16.
-   [OK]          everparse          2   pp uint16be.
-   [OK]          everparse          3   pp uint32.
-   [OK]          everparse          4   pp uint32be.
-   [OK]          everparse          5   pp uint63.
-   [OK]          everparse          6   pp uint63be.
-   [OK]          everparse          7   pp uint64.
-   [OK]          everparse          8   pp uint64be.
-   [OK]          everparse          9   pp bitfield.
-   [OK]          everparse         10   pp U8.
-   [OK]          everparse         11   pp U16.
-   [OK]          everparse         12   pp U16be.
-   [OK]          everparse         13   pp U32be.
-   [OK]          everparse         14   pp map.
-   [OK]          everparse         15   pp bool.
-   [OK]          everparse         16   pp cases.
-   [OK]          everparse         17   pp unit.
-   [OK]          everparse         18   pp module.
-   [OK]          everparse         19   struct random fields.
-   [OK]          everparse         20   enum random cases.
-   [OK]          everparse         21   casetype random.
-   [OK]          everparse         22   casetype inline.
-   [OK]          everparse         23   constraint expr.
-   [OK]          everparse         24   bitfield constraint.
-   [OK]          everparse         25   bitwise expr.
-   [OK]          everparse         26   logical expr.
-   [OK]          everparse         27   bitwise ops.
-   [OK]          everparse         28   logical ops.
-   [OK]          everparse         29   cast expr.
-   [OK]          everparse         30   cast variants.
-   [OK]          everparse         31   sizeof expr.
-   [OK]          everparse         32   array type.
-   [OK]          everparse         33   byte array.
-   [OK]          everparse         34   nested.
-   [OK]          everparse         35   nested at most.
-   [OK]          everparse         36   anon field.
-   [OK]          everparse         37   param struct.
-   [OK]          everparse         38   mutable param.
-   [OK]          everparse         39   apply.
-   [OK]          everparse         40   type ref.
-   [OK]          everparse         41   qualified ref.
-   [OK]          everparse         42   action.
-   [OK]          everparse         43   Action.on_act.
-   [OK]          everparse         44   Action.abort.
-   [OK]          everparse         45   Action.if_.
-   [OK]          everparse         46   Action.var.
-   [OK]          everparse         47   define.
-   [OK]          everparse         48   extern_fn.
-   [OK]          everparse         49   extern_probe.
-   [OK]          everparse         50   complex nested.
-   [OK]          everparse         51   be struct.
-   [OK]          param              0   parse lookup.
-   [OK]          param              1   parse struct action.
-   [OK]          param              2   parse struct action abort.
-   [OK]          param              3   parse struct sizeof.
-   [OK]          param              4   parse param struct.
-   [OK]          param              5   param_ref where.
-   [OK]          param              6   param_ref constraint.
-   [OK]          param              7   typed assign.
-   [OK]          param              8   map roundtrip.
-   [OK]          wire               0   parse uint8.
-   [OK]          wire               1   parse uint16.
-   [OK]          wire               2   parse uint16be.
-   [OK]          wire               3   parse uint32.
-   [OK]          wire               4   parse uint32be.
-   [OK]          wire               5   parse uint63.
-   [OK]          wire               6   parse uint63be.
-   [OK]          wire               7   parse uint64.
-   [OK]          wire               8   parse uint64be.
-   [OK]          wire               9   parse bitfield.
-   [OK]          wire              10   parse U8.
-   [OK]          wire              11   parse U16.
-   [OK]          wire              12   parse U16be.
-   [OK]          wire              13   parse U32be.
-   [OK]          wire              14   parse map.
-   [OK]          wire              15   parse bool.
-   [OK]          wire              16   parse unit.
-   [OK]          wire              17   parse array.
-   [OK]          wire              18   parse byte_array.
-   [OK]          wire              19   parse enum.
-   [OK]          wire              20   parse where.
-   [OK]          wire              21   parse all_bytes.
-   [OK]          wire              22   parse all_zeros.
-   [OK]          wire              23   parse struct.
-   [OK]          wire              24   parse struct constrained.
-   [OK]          wire              25   parse struct be.
-   [OK]          wire              26   parse struct bitfields.
-   [OK]          wire              27   parse anon field.
-   [OK]          wire              28   parse casetype.
-   [OK]          wire              29   parse nested struct.
-   [OK]          wire              30   roundtrip uint8.
-   [OK]          wire              31   roundtrip uint16.
-   [OK]          wire              32   roundtrip uint16be.
-   [OK]          wire              33   roundtrip uint32.
-   [OK]          wire              34   roundtrip uint32be.
-   [OK]          wire              35   roundtrip uint63.
-   [OK]          wire              36   roundtrip uint63be.
-   [OK]          wire              37   roundtrip uint64.
-   [OK]          wire              38   roundtrip uint64be.
-   [OK]          wire              39   roundtrip map.
-   [OK]          wire              40   roundtrip bool.
-   [OK]          wire              41   roundtrip array.
-   [OK]          wire              42   roundtrip byte_array.
-   [OK]          wire              43   roundtrip enum.
-   [OK]          wire              44   record roundtrip.
-   [OK]          wire              45   record decode crash.
-   [OK]          wire              46   record be roundtrip.
-   [OK]          wire              47   record bool roundtrip.
-   [OK]          wire              48   bf encode overflow.
-   [OK]          wire              49   stream uint16 chunk=1.
-   [OK]          wire              50   stream uint16be chunk=1.
-   [OK]          wire              51   stream uint32 chunk=1.
-   [OK]          wire              52   stream uint32be chunk=3.
-   [OK]          wire              53   stream uint64 chunk=1.
-   [OK]          wire              54   stream uint64be chunk=5.
-   [OK]          wire              55   stream record chunk=1.
-   [OK]          wire              56   depsize slice roundtrip.
-   [OK]          wire              57   depsize slice empty.
-   [OK]          wire              58   depsize array roundtrip.
-   [OK]          wire              59   depsize array empty.
-   [OK]          wire              60   depsize tagged roundtrip.
-   [OK]          wire              61   depsize tagged empty.
-   [OK]          wire              62   depsize wire_size_at.
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/wire.0.9.0/_build/default/fuzz/_build/_tests/wire'.
- Test Successful in 5.403s. 124 tests run.
-> compiled  wire.0.9.0
-> removed   wire.0.9.0
-> installed wire.0.9.0
Done.
# To update the current shell environment, run: eval $(opam env)
2026-04-30 04:47.39 ---> saved as "5151b030b4c4a8207cb1b8c098c63b6282054c108096a61fb4b6915f9dc70258"
Job succeeded
2026-04-30 04:48.04: Job succeeded