2026-04-16 16:38.37: New job: test hannesm/duration https://github.com/hannesm/duration.git#refs/heads/main (0b278aa46102707d3c8b4633dd408862b30f6643) (linux-x86_64:ubuntu-22.04-5.4_opam-2.5)Base: ocaml/opam:ubuntu-22.04-ocaml-5.4@sha256:820d5bdb3799f5da6694d98eaf83c30643622415a2382ee9f2be3676799737f7Opam project buildTo reproduce locally:git clone --recursive "https://github.com/hannesm/duration.git" -b "main" && cd "duration" && git reset --hard 0b278aa4cat > Dockerfile <<'END-OF-DOCKERFILE'FROM ocaml/opam:ubuntu-22.04-ocaml-5.4@sha256:820d5bdb3799f5da6694d98eaf83c30643622415a2382ee9f2be3676799737f7# ubuntu-22.04-5.4_opam-2.5USER 1000:1000ENV CLICOLOR_FORCE="1"ENV OPAMCOLOR="always"WORKDIR /srcRUN sudo ln -f /usr/bin/opam-2.5 /usr/bin/opamRUN opam init --reinit -niRUN uname -rs && opam exec -- ocaml -version && opam --versionWORKDIR /srcRUN sudo chown opam /srcRUN cd ~/opam-repository && (git cat-file -e 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 || git fetch origin master) && git reset -q --hard 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 && git log --no-decorate -n1 --oneline && opam update -uCOPY --chown=1000:1000 duration.opam ./RUN opam pin add -yn duration.dev './'RUN echo '(lang dune 3.0)' > './dune-project'ENV DEPS="alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base cmdliner.2.1.0 dune.3.22.2 fmt.0.11.0 ocaml.5.4.1 ocaml-base-compiler.5.4.1 ocaml-compiler.5.4.1 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 re.1.14.0 stdlib-shims.0.3.0 topkg.1.1.1 uutf.1.0.4"ENV CI="true"ENV OCAMLCI="true"RUN opam update --depexts && opam install --cli=2.5 --depext-only -y duration.dev $DEPSRUN opam install $DEPSCOPY --chown=1000:1000 . /srcRUN opam exec -- dune build @install @check @runtest && rm -rf _buildEND-OF-DOCKERFILEdocker build .END-REPRO-BLOCK2026-04-16 16:38.37: Using cache hint "hannesm/duration-ocaml/opam:ubuntu-22.04-ocaml-5.4@sha256:820d5bdb3799f5da6694d98eaf83c30643622415a2382ee9f2be3676799737f7-ubuntu-22.04-5.4_opam-2.5-2dac388420a8907fb8cecb3249a0a397"2026-04-16 16:38.37: Using OBuilder spec:((from ocaml/opam:ubuntu-22.04-ocaml-5.4@sha256:820d5bdb3799f5da6694d98eaf83c30643622415a2382ee9f2be3676799737f7)(comment ubuntu-22.04-5.4_opam-2.5)(user (uid 1000) (gid 1000))(env CLICOLOR_FORCE 1)(env OPAMCOLOR always)(workdir /src)(run (shell "sudo ln -f /usr/bin/opam-2.5 /usr/bin/opam"))(run (shell "opam init --reinit -ni"))(run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))(workdir /src)(run (shell "sudo chown opam /src"))(run (cache (opam-archives (target /home/opam/.opam/download-cache)))(network host)(shell "cd ~/opam-repository && (git cat-file -e 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 || git fetch origin master) && git reset -q --hard 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 && git log --no-decorate -n1 --oneline && opam update -u"))(copy (src duration.opam) (dst ./))(run (network host)(shell "opam pin add -yn duration.dev './'"))(run (shell "echo '(lang dune 3.0)' > './dune-project'"))(env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base cmdliner.2.1.0 dune.3.22.2 fmt.0.11.0 ocaml.5.4.1 ocaml-base-compiler.5.4.1 ocaml-compiler.5.4.1 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 re.1.14.0 stdlib-shims.0.3.0 topkg.1.1.1 uutf.1.0.4")(env CI true)(env OCAMLCI true)(run (cache (opam-archives (target /home/opam/.opam/download-cache)))(network host)(shell "opam update --depexts && opam install --cli=2.5 --depext-only -y duration.dev $DEPS"))(run (cache (opam-archives (target /home/opam/.opam/download-cache)))(network host)(shell "opam install $DEPS"))(copy (src .) (dst /src))(run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")))2026-04-16 16:38.37: Waiting for resource in pool OCluster2026-04-16 18:58.56: Waiting for worker…2026-04-16 19:07.06: Got resource from pool OClusterBuilding on phoebe.caelum.ci.devAll commits already cachedHEAD is now at 0b278aa changes for 0.3.0(from ocaml/opam:ubuntu-22.04-ocaml-5.4@sha256:820d5bdb3799f5da6694d98eaf83c30643622415a2382ee9f2be3676799737f7)Unable to find image 'ocaml/opam:ubuntu-22.04-ocaml-5.4@sha256:820d5bdb3799f5da6694d98eaf83c30643622415a2382ee9f2be3676799737f7' locallydocker.io/ocaml/opam@sha256:820d5bdb3799f5da6694d98eaf83c30643622415a2382ee9f2be3676799737f7: Pulling from ocaml/opamde47083ed7d7: Pulling fs layerae7ac0da60c3: Pulling fs layer57ff9bc83013: Pulling fs layera288301b5d01: Pulling fs layerf352b66a76e4: Pulling fs layerf509f3aae84b: Pulling fs layer1674fa14ab09: Pulling fs layer2698574bb308: Pulling fs layerf6298ee465ed: Pulling fs layerc0144cfcd9e7: Pulling fs layera288301b5d01: Waitingf352b66a76e4: Waitingf509f3aae84b: Waiting1222e5b97bf7: Pulling fs layer2698574bb308: Waitingf6298ee465ed: Waitingc0144cfcd9e7: Waiting7894caceea27: Pulling fs layer1222e5b97bf7: Waitingbebaf8dbf49e: Pulling fs layer7894caceea27: Waiting272347abc412: Pulling fs layerbebaf8dbf49e: Waiting272347abc412: Waiting75f374e606d8: Pulling fs layer712806a06ccc: Pulling fs layer75f374e606d8: Waitingd464987372fd: Pulling fs layer712806a06ccc: Waitingd464987372fd: Waiting4f4fb700ef54: Pulling fs layer1674fa14ab09: Waitingb9f4b7812175: Pulling fs layer45615c57dc28: Pulling fs layer4f4fb700ef54: Waitingb9f4b7812175: Waitingd939b9fd721c: Pulling fs layer45615c57dc28: Waitingd939b9fd721c: Waitingd349c59e05ec: Pulling fs layer5d929fb3122d: Pulling fs layerd349c59e05ec: Waitingced6e49d89aa: Pulling fs layer5d929fb3122d: Waiting98f37ff91287: Pulling fs layerb0cdb242d0af: Pulling fs layerced6e49d89aa: Waiting98f37ff91287: Waiting89adf72eb9a4: Pulling fs layer181427a5010e: Pulling fs layerb0cdb242d0af: Waiting89adf72eb9a4: Waiting0ecf8e12c8cc: Pulling fs layer181427a5010e: Waiting0ecf8e12c8cc: Waiting9655b24677e6: Pulling fs layer8e0b925edd61: Pulling fs layer9655b24677e6: Waiting2213c8f60be2: Pulling fs layer8e0b925edd61: Waiting99c5f3c2e946: Pulling fs layer2213c8f60be2: Waiting99c5f3c2e946: Waiting85a338c15b57: Pulling fs layer0a1aa60a6b47: Pulling fs layera073965d9bcb: Pulling fs layer54a820b98e2c: Pulling fs layer61fa9bc5bce5: Pulling fs layer85a338c15b57: Waiting8aca8b1ce062: Pulling fs layer0a1aa60a6b47: Waiting46a9515cde75: Pulling fs layera073965d9bcb: Waiting54a820b98e2c: Waiting61fa9bc5bce5: Waiting262d9bd8c855: Pulling fs layerae5331734743: Pulling fs layer8aca8b1ce062: Waiting46a9515cde75: Waiting08bd63570bca: Pulling fs layer78eb3fe40c1b: Pulling fs layer3a79a58b2092: Pulling fs layerac7e8a5a96a7: Pulling fs layer262d9bd8c855: Waitingae5331734743: Waiting08bd63570bca: Waiting3a79a58b2092: Waiting78eb3fe40c1b: Waitingac7e8a5a96a7: Waitingae7ac0da60c3: Verifying Checksumae7ac0da60c3: Download complete57ff9bc83013: Verifying Checksum57ff9bc83013: Download completef352b66a76e4: Verifying Checksumf352b66a76e4: Download completede47083ed7d7: Verifying Checksumde47083ed7d7: Download complete1674fa14ab09: Download complete2698574bb308: Download completea288301b5d01: Download completef6298ee465ed: Download completec0144cfcd9e7: Verifying Checksumc0144cfcd9e7: Download complete1222e5b97bf7: Download completebebaf8dbf49e: Download complete7894caceea27: Verifying Checksum7894caceea27: Download complete272347abc412: Download complete75f374e606d8: Download complete712806a06ccc: Verifying Checksum712806a06ccc: Download completef509f3aae84b: Verifying Checksumf509f3aae84b: Download completed464987372fd: Verifying Checksumd464987372fd: Download complete4f4fb700ef54: Verifying Checksum4f4fb700ef54: Download completeb9f4b7812175: Verifying Checksumb9f4b7812175: Download complete45615c57dc28: Verifying Checksum45615c57dc28: Download completed939b9fd721c: Verifying Checksumd939b9fd721c: Download completed349c59e05ec: Verifying Checksumd349c59e05ec: Download complete5d929fb3122d: Verifying Checksum5d929fb3122d: Download completeced6e49d89aa: Verifying Checksumced6e49d89aa: Download complete98f37ff91287: Verifying Checksum98f37ff91287: Download completeb0cdb242d0af: Verifying Checksumb0cdb242d0af: Download complete89adf72eb9a4: Verifying Checksum89adf72eb9a4: Download complete181427a5010e: Download complete9655b24677e6: Verifying Checksum9655b24677e6: Download complete0ecf8e12c8cc: Download complete8e0b925edd61: Download complete2213c8f60be2: Verifying Checksum2213c8f60be2: Download complete99c5f3c2e946: Verifying Checksum99c5f3c2e946: Download completede47083ed7d7: Pull completeae7ac0da60c3: Pull complete57ff9bc83013: Pull complete0a1aa60a6b47: Verifying Checksum0a1aa60a6b47: Download complete54a820b98e2c: Verifying Checksum54a820b98e2c: Download complete61fa9bc5bce5: Verifying Checksum61fa9bc5bce5: Download complete8aca8b1ce062: Download complete46a9515cde75: Download complete262d9bd8c855: Verifying Checksum262d9bd8c855: Download completeae5331734743: Verifying Checksumae5331734743: Download completea288301b5d01: Pull completef352b66a76e4: Pull completea073965d9bcb: Verifying Checksuma073965d9bcb: Download complete78eb3fe40c1b: Verifying Checksum78eb3fe40c1b: Download complete3a79a58b2092: Verifying Checksum3a79a58b2092: Download complete85a338c15b57: Verifying Checksum85a338c15b57: Download completeac7e8a5a96a7: Verifying Checksumac7e8a5a96a7: Download complete08bd63570bca: Verifying Checksum08bd63570bca: Download completef509f3aae84b: Pull complete1674fa14ab09: Pull complete2698574bb308: Pull completef6298ee465ed: Pull completec0144cfcd9e7: Pull complete1222e5b97bf7: Pull complete7894caceea27: Pull completebebaf8dbf49e: Pull complete272347abc412: Pull complete75f374e606d8: Pull complete712806a06ccc: Pull completed464987372fd: Pull complete4f4fb700ef54: Pull completeb9f4b7812175: Pull complete45615c57dc28: Pull completed939b9fd721c: Pull completed349c59e05ec: Pull complete5d929fb3122d: Pull completeced6e49d89aa: Pull complete98f37ff91287: Pull completeb0cdb242d0af: Pull complete89adf72eb9a4: Pull complete181427a5010e: Pull complete0ecf8e12c8cc: Pull complete9655b24677e6: Pull complete8e0b925edd61: Pull complete2213c8f60be2: Pull complete99c5f3c2e946: Pull complete85a338c15b57: Pull complete0a1aa60a6b47: Pull completea073965d9bcb: Pull complete54a820b98e2c: Pull complete61fa9bc5bce5: Pull complete8aca8b1ce062: Pull complete46a9515cde75: Pull complete262d9bd8c855: Pull completeae5331734743: Pull complete08bd63570bca: Pull complete78eb3fe40c1b: Pull complete3a79a58b2092: Pull completeac7e8a5a96a7: Pull completeDigest: sha256:820d5bdb3799f5da6694d98eaf83c30643622415a2382ee9f2be3676799737f7Status: Downloaded newer image for ocaml/opam@sha256:820d5bdb3799f5da6694d98eaf83c30643622415a2382ee9f2be3676799737f72026-04-16 19:07.07 ---> using "d2564225bf1b0f86f879d98077c5aee1af360c988d8f5d2b60b97ba1f9e07761" from cache/: (comment ubuntu-22.04-5.4_opam-2.5)/: (user (uid 1000) (gid 1000))/: (env CLICOLOR_FORCE 1)/: (env OPAMCOLOR always)/: (workdir /src)/src: (run (shell "sudo ln -f /usr/bin/opam-2.5 /usr/bin/opam"))2026-04-16 19:07.07 ---> using "6173b475db7783a1c34961d8c0aaafb3b382c024f78aacc75dadbdbb936b85d4" from cache/src: (run (shell "opam init --reinit -ni"))Configuring from /home/opam/.opamrc and then 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] yFormat upgrade done.<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>[default] Initialised2026-04-16 19:07.07 ---> using "66cb56b7a1bde2643b508320ad816b5e889a6c383d870e6c22e4b9a554e7404f" from cache/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))Linux 6.8.0-107-genericThe OCaml toplevel, version 5.4.12.5.02026-04-16 19:07.07 ---> using "e7e8c309fc8dc0f965860a37d87001b835a5e47de72f1345f21f0d262101c352" from cache/src: (workdir /src)/src: (run (shell "sudo chown opam /src"))2026-04-16 19:07.07 ---> using "6db34e0f0c6b7c2450cd6b22daeecef2536e20c11596e7f80d694dbb4746bbe7" from cache/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))(network host)(shell "cd ~/opam-repository && (git cat-file -e 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 || git fetch origin master) && git reset -q --hard 5f7bb1a6e69f1ea15d8b2b08eeaa70a162c6fd41 && git log --no-decorate -n1 --oneline && opam update -u"))From https://github.com/ocaml/opam-repository* branch master -> FETCH_HEAD42844088d7..0b0acbee05 master -> origin/master5f7bb1a6e6 Merge pull request #29704 from shonfeder/release-dune-3.22.2<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>[default] synchronised from git+file:///home/opam/opam-repositoryEverything as up-to-date as possibleHowever, you may "opam upgrade" these packages explicitly at these versions (e.g. "opam upgrade ocaml.5.5.0"), which will ask permission to downgrade or uninstall the conflicting packages.Nothing to do.# To update the current shell environment, run: eval $(opam env)2026-04-16 19:07.07 ---> using "c8827eb5def96c533cb6189e039e957f8d1cb3a9f1100949c42085617f3219b5" from cache/src: (copy (src duration.opam) (dst ./))2026-04-16 19:07.07 ---> using "0eaba148759da06f349fe4e180ce337727518bf76bf83a6f0cbde039c3667228" from cache/src: (run (network host)(shell "opam pin add -yn duration.dev './'"))[duration.dev] synchronised (file:///src)duration is now pinned to file:///src (version dev)2026-04-16 19:07.07 ---> using "1afe808a061a2265cc9a311d4a03c45cd564ae35fbabf0e3b3c2975ffe959cd9" from cache/src: (run (shell "echo '(lang dune 3.0)' > './dune-project'"))2026-04-16 19:07.07 ---> using "87574bb0b16e51be03071c7016335591e987b34093ac92bf3d4aa6b5e3eae1b1" from cache/src: (env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base cmdliner.2.1.0 dune.3.22.2 fmt.0.11.0 ocaml.5.4.1 ocaml-base-compiler.5.4.1 ocaml-compiler.5.4.1 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 re.1.14.0 stdlib-shims.0.3.0 topkg.1.1.1 uutf.1.0.4")/src: (env CI true)/src: (env OCAMLCI true)/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))(network host)(shell "opam update --depexts && opam install --cli=2.5 --depext-only -y duration.dev $DEPS"))+ /usr/bin/sudo "apt-get" "update"- Get:1 http://security.ubuntu.com/ubuntu jammy-security InRelease [129 kB]- Hit:2 http://archive.ubuntu.com/ubuntu jammy InRelease- Get:3 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [128 kB]- Get:4 http://security.ubuntu.com/ubuntu jammy-security/universe amd64 Packages [1311 kB]- Get:5 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages [3929 kB]- Get:6 http://security.ubuntu.com/ubuntu jammy-security/restricted amd64 Packages [7015 kB]- Get:7 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [127 kB]- Get:8 http://archive.ubuntu.com/ubuntu jammy-updates/restricted amd64 Packages [7232 kB]- Get:9 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages [4264 kB]- Get:10 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 Packages [1623 kB]- Get:11 http://archive.ubuntu.com/ubuntu jammy-backports/universe amd64 Packages [35.9 kB]- Fetched 25.8 MB in 13s (1990 kB/s)- Reading package lists...-<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>[duration.dev] synchronised (file:///src)[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).[NOTE] Package ocaml-config is already installed (current version is 3).[NOTE] Package ocaml-compiler is already installed (current version is 5.4.1).[NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.1).[NOTE] Package ocaml is already installed (current version is 5.4.1).[NOTE] Package base-unix is already installed (current version is base).[NOTE] Package base-threads is already installed (current version is base).[NOTE] Package base-nnp is already installed (current version is base).[NOTE] Package base-effects is already installed (current version is base).[NOTE] Package base-domains is already installed (current version is base).[NOTE] Package base-bigarray is already installed (current version is base).# To update the current shell environment, run: eval $(opam env)2026-04-16 19:07.07 ---> using "13c5f3108b2bc403fa2754adb1aa2a169e0ec07221ecc25520ff39ecab9a5680" from cache/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))(network host)(shell "opam install $DEPS"))[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).[NOTE] Package ocaml-config is already installed (current version is 3).[NOTE] Package ocaml-compiler is already installed (current version is 5.4.1).[NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.1).[NOTE] Package ocaml is already installed (current version is 5.4.1).[NOTE] Package base-unix is already installed (current version is base).[NOTE] Package base-threads is already installed (current version is base).[NOTE] Package base-nnp is already installed (current version is base).[NOTE] Package base-effects is already installed (current version is base).[NOTE] Package base-domains is already installed (current version is base).[NOTE] Package base-bigarray is already installed (current version is base).The following actions will be performed:=== install 12 packages- install alcotest 1.9.1- install astring 0.8.5- install cmdliner 2.1.0- install dune 3.22.2- install fmt 0.11.0- install ocaml-syntax-shims 1.0.0- install ocamlbuild 0.16.1- install ocamlfind 1.9.8- install re 1.14.0- install stdlib-shims 0.3.0- install topkg 1.1.1- install uutf 1.0.4<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>-> retrieved alcotest.1.9.1 (cached)-> retrieved astring.0.8.5 (cached)-> retrieved cmdliner.2.1.0 (cached)-> retrieved fmt.0.11.0 (cached)-> retrieved ocaml-syntax-shims.1.0.0 (cached)-> retrieved ocamlbuild.0.16.1 (cached)-> retrieved ocamlfind.1.9.8 (cached)-> retrieved re.1.14.0 (cached)-> retrieved stdlib-shims.0.3.0 (cached)-> retrieved uutf.1.0.4 (cached)-> retrieved topkg.1.1.1 (cached)-> retrieved dune.3.22.2 (cached)-> installed cmdliner.2.1.0-> installed ocamlfind.1.9.8-> installed ocamlbuild.0.16.1-> installed topkg.1.1.1-> installed fmt.0.11.0-> installed uutf.1.0.4-> installed astring.0.8.5-> installed dune.3.22.2-> installed stdlib-shims.0.3.0-> installed ocaml-syntax-shims.1.0.0-> installed re.1.14.0-> installed alcotest.1.9.1Done.# To update the current shell environment, run: eval $(opam env)2026-04-16 19:09.09 ---> saved as "1fb9a3d454e977f0ea64bae5780cb529f2ff8290a56060ddf626b7feaa99a697"/src: (copy (src .) (dst /src))2026-04-16 19:09.10 ---> saved as "c7f82c711d274429bd2945d382d71bb95215792636ee7e7d01d11faa13f4f616"/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))(cd _build/default && ./tests.exe)Testing `Duration tests'.This run has ID `XT9VIOSE'.[OK] Duration 0 of_us is good.[OK] Duration 1 to_us is good.[OK] Duration 2 inverse of/to_us.[OK] Duration 3 of_us is good.[OK] Duration 4 to_us is good.[OK] Duration 5 inverse of/to_us.[OK] Duration 6 of_ms is good.[OK] Duration 7 to_ms is good.[OK] Duration 8 inverse of/to_ms.[OK] Duration 9 of_ms is good.[OK] Duration 10 to_ms is good.[OK] Duration 11 inverse of/to_ms.[OK] Duration 12 of_sec is good.[OK] Duration 13 to_sec is good.[OK] Duration 14 inverse of/to_sec.[OK] Duration 15 of_sec is good.[OK] Duration 16 to_sec is good.[OK] Duration 17 inverse of/to_sec.[OK] Duration 18 of_min is good.[OK] Duration 19 to_min is good.[OK] Duration 20 inverse of/to_min.[OK] Duration 21 of_hour is good.[OK] Duration 22 to_hour is good.[OK] Duration 23 inverse of/to_hour.[OK] Duration 24 of_day is good.[OK] Duration 25 to_day is good.[OK] Duration 26 inverse of/to_day.[OK] Duration 27 of_year is good.[OK] Duration 28 to_year is good.[OK] Duration 29 inverse of/to_year.[OK] Duration 30 of_f is good.[OK] Duration 31 to_f is good.[OK] Duration 32 inverse of/to_f.[OK] Duration 33 of_string_exn.[OK] Duration 34 of_string_exn: composite.[OK] Duration 35 of_string_exn: duplicate metrics.[OK] Duration 36 of_string_exn: invalid metric.[OK] Duration 37 of_string_exn: malformed input.[OK] Duration 38 of_string_exn: out of range.[OK] Duration 39 of_string_exn: empty string.Full test results in `/src/_build/default/_build/_tests/Duration tests'.Test Successful in 0.007s. 40 tests run.2026-04-16 19:09.12 ---> saved as "91a4e4f227bbce2f8af041ae283cf908f17c4927ebc04f6084dafc5c1b4bb77b"Job succeeded2026-04-16 19:09.12: Job succeeded