Diff of the two buildlogs:

--
--- b1/build.log	2025-01-08 02:27:53.890473483 +0000
+++ b2/build.log	2025-01-08 02:33:26.703358438 +0000
@@ -1,6 +1,6 @@
 I: pbuilder: network access will be disabled during build
-I: Current time: Tue Jan  7 14:14:56 -12 2025
-I: pbuilder-time-stamp: 1736302496
+I: Current time: Wed Jan  8 16:28:09 +14 2025
+I: pbuilder-time-stamp: 1736303289
 I: Building the build Environment
 I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz]
 I: copying local configuration
@@ -22,52 +22,84 @@
 dpkg-source: info: unpacking mender-connect_2.3.0+ds1-1.debian.tar.xz
 I: Not using root during the build.
 I: Installing the build-deps
-I: user script /srv/workspace/pbuilder/20146/tmp/hooks/D02_print_environment starting
+I: user script /srv/workspace/pbuilder/3501/tmp/hooks/D01_modify_environment starting
+debug: Running on virt64b.
+I: Changing host+domainname to test build reproducibility
+I: Adding a custom variable just for the fun of it...
+I: Changing /bin/sh to bash
+'/bin/sh' -> '/bin/bash'
+lrwxrwxrwx 1 root root 9 Jan  8 02:28 /bin/sh -> /bin/bash
+I: Setting pbuilder2's login shell to /bin/bash
+I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other
+I: user script /srv/workspace/pbuilder/3501/tmp/hooks/D01_modify_environment finished
+I: user script /srv/workspace/pbuilder/3501/tmp/hooks/D02_print_environment starting
 I: set
-  BUILDDIR='/build/reproducible-path'
-  BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other'
-  BUILDUSERNAME='pbuilder1'
-  BUILD_ARCH='armhf'
-  DEBIAN_FRONTEND='noninteractive'
-  DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=3 '
-  DISTRIBUTION='unstable'
-  HOME='/root'
-  HOST_ARCH='armhf'
+  BASH=/bin/sh
+  BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath
+  BASH_ALIASES=()
+  BASH_ARGC=()
+  BASH_ARGV=()
+  BASH_CMDS=()
+  BASH_LINENO=([0]="12" [1]="0")
+  BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:.
+  BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment")
+  BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="arm-unknown-linux-gnueabihf")
+  BASH_VERSION='5.2.37(1)-release'
+  BUILDDIR=/build/reproducible-path
+  BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other'
+  BUILDUSERNAME=pbuilder2
+  BUILD_ARCH=armhf
+  DEBIAN_FRONTEND=noninteractive
+  DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=4 '
+  DIRSTACK=()
+  DISTRIBUTION=unstable
+  EUID=0
+  FUNCNAME=([0]="Echo" [1]="main")
+  GROUPS=()
+  HOME=/root
+  HOSTNAME=i-capture-the-hostname
+  HOSTTYPE=arm
+  HOST_ARCH=armhf
   IFS=' 	
   '
-  INVOCATION_ID='f3c0f86e714b4c98b0184613401ca2ee'
-  LANG='C'
-  LANGUAGE='en_US:en'
-  LC_ALL='C'
-  MAIL='/var/mail/root'
-  OPTIND='1'
-  PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games'
-  PBCURRENTCOMMANDLINEOPERATION='build'
-  PBUILDER_OPERATION='build'
-  PBUILDER_PKGDATADIR='/usr/share/pbuilder'
-  PBUILDER_PKGLIBDIR='/usr/lib/pbuilder'
-  PBUILDER_SYSCONFDIR='/etc'
-  PPID='20146'
-  PS1='# '
-  PS2='> '
+  INVOCATION_ID=5bca305d5449436480e2f03ea649eba2
+  LANG=C
+  LANGUAGE=it_CH:it
+  LC_ALL=C
+  MACHTYPE=arm-unknown-linux-gnueabihf
+  MAIL=/var/mail/root
+  OPTERR=1
+  OPTIND=1
+  OSTYPE=linux-gnueabihf
+  PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path
+  PBCURRENTCOMMANDLINEOPERATION=build
+  PBUILDER_OPERATION=build
+  PBUILDER_PKGDATADIR=/usr/share/pbuilder
+  PBUILDER_PKGLIBDIR=/usr/lib/pbuilder
+  PBUILDER_SYSCONFDIR=/etc
+  PIPESTATUS=([0]="0")
+  POSIXLY_CORRECT=y
+  PPID=3501
   PS4='+ '
-  PWD='/'
-  SHELL='/bin/bash'
-  SHLVL='2'
-  SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.8xSkX1uk/pbuilderrc_TzDG --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.8xSkX1uk/b1 --logfile b1/build.log mender-connect_2.3.0+ds1-1.dsc'
-  SUDO_GID='113'
-  SUDO_UID='107'
-  SUDO_USER='jenkins'
-  TERM='unknown'
-  TZ='/usr/share/zoneinfo/Etc/GMT+12'
-  USER='root'
-  _='/usr/bin/systemd-run'
-  http_proxy='http://10.0.0.15:3142/'
+  PWD=/
+  SHELL=/bin/bash
+  SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix
+  SHLVL=3
+  SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.8xSkX1uk/pbuilderrc_c9ZY --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.8xSkX1uk/b2 --logfile b2/build.log mender-connect_2.3.0+ds1-1.dsc'
+  SUDO_GID=113
+  SUDO_UID=107
+  SUDO_USER=jenkins
+  TERM=unknown
+  TZ=/usr/share/zoneinfo/Etc/GMT-14
+  UID=0
+  USER=root
+  _='I: set'
+  http_proxy=http://10.0.0.15:3142/
 I: uname -a
-  Linux wbq0 6.1.0-28-armmp #1 SMP Debian 6.1.119-1 (2024-11-22) armv7l GNU/Linux
+  Linux i-capture-the-hostname 6.1.0-28-arm64 #1 SMP Debian 6.1.119-1 (2024-11-22) aarch64 GNU/Linux
 I: ls -l /bin
   lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin
-I: user script /srv/workspace/pbuilder/20146/tmp/hooks/D02_print_environment finished
+I: user script /srv/workspace/pbuilder/3501/tmp/hooks/D02_print_environment finished
  -> Attempting to satisfy build-dependencies
  -> Creating pbuilder-satisfydepends-dummy package
 Package: pbuilder-satisfydepends-dummy
@@ -284,7 +316,7 @@
 Get: 149 http://deb.debian.org/debian unstable/main armhf libglib2.0-bin armhf 2.82.4-1 [120 kB]
 Get: 150 http://deb.debian.org/debian unstable/main armhf libglib2.0-dev-bin armhf 2.82.4-1 [52.0 kB]
 Get: 151 http://deb.debian.org/debian unstable/main armhf libglib2.0-dev armhf 2.82.4-1 [52.7 kB]
-Fetched 98.0 MB in 8s (11.7 MB/s)
+Fetched 98.0 MB in 2s (46.7 MB/s)
 Preconfiguring packages ...
 Selecting previously unselected package libdbus-1-3:armhf.
 (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 ... 19561 files and directories currently installed.)
@@ -787,8 +819,8 @@
 Setting up tzdata (2024b-4) ...
 
 Current default time zone: 'Etc/UTC'
-Local time is now:      Wed Jan  8 02:17:47 UTC 2025.
-Universal Time is now:  Wed Jan  8 02:17:47 UTC 2025.
+Local time is now:      Wed Jan  8 02:29:25 UTC 2025.
+Universal Time is now:  Wed Jan  8 02:29:25 UTC 2025.
 Run 'dpkg-reconfigure tzdata' if you wish to change it.
 
 Setting up libsysprof-capture-4-dev:armhf (47.2-1) ...
@@ -923,7 +955,11 @@
 Building tag database...
  -> Finished parsing the build-deps
 I: Building the package
-I: Running cd /build/reproducible-path/mender-connect-2.3.0+ds1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S  > ../mender-connect_2.3.0+ds1-1_source.changes
+I: user script /srv/workspace/pbuilder/3501/tmp/hooks/A99_set_merged_usr starting
+Not re-configuring usrmerge for unstable
+I: user script /srv/workspace/pbuilder/3501/tmp/hooks/A99_set_merged_usr finished
+hostname: Name or service not known
+I: Running cd /build/reproducible-path/mender-connect-2.3.0+ds1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S  > ../mender-connect_2.3.0+ds1-1_source.changes
 dpkg-buildpackage: info: source package mender-connect
 dpkg-buildpackage: info: source version 2.3.0+ds1-1
 dpkg-buildpackage: info: source distribution unstable
@@ -944,42 +980,42 @@
 make[1]: Entering directory '/build/reproducible-path/mender-connect-2.3.0+ds1'
 dh_auto_build -O--buildsystem=golang -- \
 	-ldflags "-X github.com/mendersoftware/mender-connect/config.Version="
-	cd _build && go install -trimpath -v -p 3 -ldflags "-X github.com/mendersoftware/mender-connect/config.Version=" github.com/mendersoftware/mender-connect github.com/mendersoftware/mender-connect/app github.com/mendersoftware/mender-connect/cli github.com/mendersoftware/mender-connect/client/dbus github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/dbus/test github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/connection github.com/mendersoftware/mender-connect/connectionmanager github.com/mendersoftware/mender-connect/limits/filetransfer github.com/mendersoftware/mender-connect/procps github.com/mendersoftware/mender-connect/session github.com/mendersoftware/mender-connect/session/mocks github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/utils
-internal/unsafeheader
+	cd _build && go install -trimpath -v -p 4 -ldflags "-X github.com/mendersoftware/mender-connect/config.Version=" github.com/mendersoftware/mender-connect github.com/mendersoftware/mender-connect/app github.com/mendersoftware/mender-connect/cli github.com/mendersoftware/mender-connect/client/dbus github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/dbus/test github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/connection github.com/mendersoftware/mender-connect/connectionmanager github.com/mendersoftware/mender-connect/limits/filetransfer github.com/mendersoftware/mender-connect/procps github.com/mendersoftware/mender-connect/session github.com/mendersoftware/mender-connect/session/mocks github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/utils
 internal/goarch
-internal/cpu
+internal/unsafeheader
 internal/byteorder
+internal/coverage/rtcov
+internal/cpu
 internal/abi
 internal/chacha8rand
-internal/bytealg
-internal/coverage/rtcov
 internal/godebugs
 internal/goexperiment
 internal/goos
+internal/bytealg
 internal/profilerecord
 internal/runtime/atomic
 internal/runtime/syscall
-internal/stringslite
 runtime/internal/math
+internal/stringslite
 runtime/internal/sys
-internal/runtime/exithook
 internal/race
 sync/atomic
 internal/asan
 internal/itoa
+internal/runtime/exithook
 internal/msan
 cmp
 math/bits
 unicode/utf8
-math
 unicode
-runtime
 encoding
+math
 github.com/mendersoftware/go-lib-micro/ws
 github.com/mendersoftware/go-lib-micro/ws/shell
 unicode/utf16
 log/internal
 crypto/internal/alias
+runtime
 crypto/internal/boring/sig
 container/list
 vendor/golang.org/x/crypto/cryptobyte/asn1
@@ -990,149 +1026,149 @@
 github.com/mendersoftware/go-lib-micro/ws/menderclient
 github.com/mendersoftware/go-lib-micro/ws/portforward
 iter
-sync
+crypto/subtle
 internal/reflectlite
+sync
 slices
-crypto/subtle
 internal/weak
 maps
-internal/testlog
 internal/bisect
+internal/testlog
 runtime/cgo
+internal/singleflight
 errors
 internal/godebug
+sort
 internal/oserror
 strconv
 syscall
-reflect
-time
 io
+reflect
 path
+strings
+bytes
+time
 internal/syscall/unix
 internal/syscall/execenv
-strings
+bufio
+html
+regexp/syntax
+hash
+crypto
 context
 io/fs
-internal/poll
-internal/filepathlite
-bytes
 internal/fmtsort
+internal/poll
 encoding/binary
-bufio
-os
-sort
+internal/filepathlite
+regexp
+crypto/cipher
+crypto/internal/boring
+crypto/internal/randutil
 encoding/base64
-html
+os
 golang.org/x/sys/unix
-regexp/syntax
+math/rand
+crypto/sha1
+crypto/aes
+crypto/des
+crypto/internal/edwards25519/field
+crypto/internal/nistec/fiat
+crypto/sha512
+crypto/internal/edwards25519
 fmt
-regexp
+path/filepath
+io/ioutil
+crypto/hmac
+vendor/golang.org/x/crypto/chacha20
 github.com/pkg/errors
-github.com/mendersoftware/mender-connect/client/dbus
 encoding/json
+github.com/mendersoftware/mender-connect/client/dbus
 log
 flag
-github.com/sirupsen/logrus
 github.com/russross/blackfriday/v2
 github.com/xrash/smetrics
-path/filepath
+github.com/sirupsen/logrus
 text/tabwriter
 net/url
-github.com/cpuguy83/go-md2man/v2/md2man
 text/template/parse
-io/ioutil
 os/user
-text/template
-github.com/urfave/cli/v2
+github.com/cpuguy83/go-md2man/v2/md2man
 compress/flate
-hash
-crypto
-crypto/cipher
-crypto/internal/boring
-crypto/internal/randutil
-math/rand
+text/template
 math/big
-github.com/mendersoftware/mender-connect/config
-crypto/sha1
-crypto/aes
-crypto/des
-crypto/internal/edwards25519/field
-crypto/internal/nistec/fiat
+github.com/urfave/cli/v2
+crypto/internal/nistec
 crypto/rand
 crypto/internal/bigmod
 crypto/internal/boring/bbig
-crypto/sha512
 encoding/asn1
-vendor/golang.org/x/crypto/cryptobyte
-crypto/internal/edwards25519
-crypto/internal/nistec
-crypto/ed25519
-crypto/hmac
-vendor/golang.org/x/crypto/chacha20
 crypto/ecdh
 crypto/elliptic
+vendor/golang.org/x/crypto/cryptobyte
+github.com/mendersoftware/mender-connect/config
+crypto/ed25519
 vendor/golang.org/x/crypto/internal/poly1305
 vendor/golang.org/x/crypto/chacha20poly1305
-crypto/ecdsa
 vendor/golang.org/x/crypto/hkdf
-crypto/internal/hpke
 vendor/golang.org/x/sys/cpu
+crypto/internal/hpke
+crypto/ecdsa
 vendor/golang.org/x/crypto/sha3
 crypto/md5
 crypto/rc4
-crypto/rsa
 crypto/internal/mlkem768
+crypto/rsa
 crypto/sha256
 crypto/dsa
 encoding/hex
 encoding/pem
-crypto/x509/pkix
 vendor/golang.org/x/net/dns/dnsmessage
-internal/singleflight
+crypto/x509/pkix
 math/rand/v2
-internal/concurrent
-unique
-net/netip
 hash/crc32
 compress/gzip
+internal/concurrent
 vendor/golang.org/x/text/transform
+unique
 vendor/golang.org/x/text/unicode/bidi
-net
-vendor/golang.org/x/text/secure/bidirule
 vendor/golang.org/x/text/unicode/norm
-vendor/golang.org/x/net/idna
-github.com/mendersoftware/mender-connect/client/mender
+net/netip
+vendor/golang.org/x/text/secure/bidirule
 vendor/golang.org/x/net/http2/hpack
 mime
+net
+vendor/golang.org/x/net/idna
 mime/quotedprintable
 net/http/internal
 net/http/internal/ascii
 github.com/vmihailenco/tagparser/v2/internal/parser
-database/sql/driver
 github.com/vmihailenco/tagparser/v2
+database/sql/driver
 github.com/vmihailenco/msgpack/v5
 github.com/go-ozzo/ozzo-validation/v4
 github.com/mendersoftware/go-lib-micro/ws/filetransfer
 github.com/mendersoftware/mender-connect/session/model
 github.com/mendersoftware/mender-connect/utils
-github.com/mendersoftware/mender-connect/limits/filetransfer
 os/exec
+github.com/mendersoftware/mender-connect/limits/filetransfer
 os/signal
-github.com/davecgh/go-spew/spew
 github.com/mendersoftware/mender-connect/procps
 github.com/creack/pty
+github.com/davecgh/go-spew/spew
 github.com/pmezard/go-difflib/difflib
 github.com/stretchr/objx
 gopkg.in/yaml.v3
 net/http/internal/testcert
 runtime/debug
-crypto/x509
+github.com/mendersoftware/mender-connect/client/dbus/test
 net/textproto
+crypto/x509
 vendor/golang.org/x/net/http/httpguts
 vendor/golang.org/x/net/http/httpproxy
 mime/multipart
-github.com/mendersoftware/mender-connect/client/dbus/test
 crypto/tls
+github.com/mendersoftware/mender-connect/client/mender
 net/http/httptrace
 net/http
 net/http/httptest
@@ -1145,8 +1181,8 @@
 github.com/stretchr/testify/mock
 github.com/mendersoftware/mender-connect/app
 github.com/mendersoftware/mender-connect/client/mender/mocks
-github.com/mendersoftware/mender-connect/client/dbus/mocks
 github.com/mendersoftware/mender-connect/session/mocks
+github.com/mendersoftware/mender-connect/client/dbus/mocks
 github.com/mendersoftware/mender-connect/cli
 github.com/mendersoftware/mender-connect
 make[1]: Leaving directory '/build/reproducible-path/mender-connect-2.3.0+ds1'
@@ -1156,20 +1192,20 @@
 	--bus-type=system \
 	--max-wait=600 \
 	-t dh_auto_test
-DBus daemon: unix:path=/tmp/dbus-4NHlLnyxjX,guid=fee2daf0077c83810a56d171677de12b
-task-0: Started with PID: 25070
-task-0: 	cd _build && go test -vet=off -v -p 3 github.com/mendersoftware/mender-connect github.com/mendersoftware/mender-connect/app github.com/mendersoftware/mender-connect/cli github.com/mendersoftware/mender-connect/client/dbus github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/dbus/test github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/connection github.com/mendersoftware/mender-connect/connectionmanager github.com/mendersoftware/mender-connect/limits/filetransfer github.com/mendersoftware/mender-connect/procps github.com/mendersoftware/mender-connect/session github.com/mendersoftware/mender-connect/session/mocks github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/utils
+DBus daemon: unix:path=/tmp/dbus-HuyqhTASnC,guid=f075202ddb797c9864d13097677de353
+task-0: Started with PID: 7850
+task-0: 	cd _build && go test -vet=off -v -p 4 github.com/mendersoftware/mender-connect github.com/mendersoftware/mender-connect/app github.com/mendersoftware/mender-connect/cli github.com/mendersoftware/mender-connect/client/dbus github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/dbus/test github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/connection github.com/mendersoftware/mender-connect/connectionmanager github.com/mendersoftware/mender-connect/limits/filetransfer github.com/mendersoftware/mender-connect/procps github.com/mendersoftware/mender-connect/session github.com/mendersoftware/mender-connect/session/mocks github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/utils
 task-0: === RUN   TestMainExitCodes
 task-0: unknown	runtime: go1.23.4
 task-0: --- PASS: TestMainExitCodes (0.00s)
 task-0: === RUN   TestMainRequiresConfig
-task-0: time="2025-01-07T14:24:27-12:00" level=info msg="No configuration files present. Using defaults"
-task-0: time="2025-01-07T14:24:27-12:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh"
-task-0: time="2025-01-07T14:24:27-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2025-01-07T14:24:27-12:00" level=error msg="please provide a user to run the shell as"
-task-0: --- PASS: TestMainRequiresConfig (0.01s)
+task-0: time="2025-01-08T16:31:40+14:00" level=info msg="No configuration files present. Using defaults"
+task-0: time="2025-01-08T16:31:40+14:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh"
+task-0: time="2025-01-08T16:31:40+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-01-08T16:31:40+14:00" level=error msg="please provide a user to run the shell as"
+task-0: --- PASS: TestMainRequiresConfig (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect	0.073s
+task-0: ok  	github.com/mendersoftware/mender-connect	0.017s
 task-0: ?   	github.com/mendersoftware/mender-connect/cli	[no test files]
 task-0: ?   	github.com/mendersoftware/mender-connect/client/dbus/mocks	[no test files]
 task-0: ?   	github.com/mendersoftware/mender-connect/client/dbus/test	[no test files]
@@ -1180,42 +1216,42 @@
 task-0:     daemon_test.go:143: starting mock httpd with websockets
 task-0: newShellTransaction sendMessage(SpwanShell)=<nil>
 task-0:     daemon_test.go:166: read message: type, session_id, data new, c4993deb-26b4-4c58-aaee-fd0c9e694328, 
-task-0: time="2025-01-07T14:24:29-12:00" level=info msg="mender-connect starting shell command passing process, pid: 26934"
+task-0: time="2025-01-08T16:31:41+14:00" level=info msg="mender-connect starting shell command passing process, pid: 9658"
 task-0: newShellTransaction (0) sendMessage=&{Header:{Proto:1 MsgType:new SessionID:c4993deb-26b4-4c58-aaee-fd0c9e694328 Properties:map[status:1]} Body:[83 104 101 108 108 32 115 116 97 114 116 101 100]},<nil>
 task-0: newShellTransaction (1) sendMessage=<nil>
 task-0: newShellTransaction (2) sendMessage=<nil>
 task-0: newShellTransaction (3) sendMessage=<nil>
 task-0: newShellTransaction (4) sendMessage=<nil>
-task-0:     daemon_test.go:175: read message: type, session_id, data shell, c4993deb-26b4-4c58-aaee-fd0c9e694328, echo newShellTransaction.6157111 > /tmp/TestMenderShellExec3090088994
-task-0:     daemon_test.go:182: read message: type, session_id, data shell, undefined-session-id, rm -f /tmp/TestMenderShellExec3090088994
-task-0: time="2025-01-07T14:24:29-12:00" level=error msg="session not found"
+task-0:     daemon_test.go:175: read message: type, session_id, data shell, c4993deb-26b4-4c58-aaee-fd0c9e694328, echo newShellTransaction.5211031 > /tmp/TestMenderShellExec303120124
+task-0:     daemon_test.go:182: read message: type, session_id, data shell, undefined-session-id, rm -f /tmp/TestMenderShellExec303120124
+task-0: time="2025-01-08T16:31:41+14:00" level=error msg="session not found"
 task-0:     daemon_test.go:185: route message error: session not found
 task-0:     daemon_test.go:189: read message: type, session_id, data shell, c4993deb-26b4-4c58-aaee-fd0c9e694328, thiscommand probably does not exist
 task-0:     daemon_test.go:196: read message: type, session_id, data stop, undefined-session-id, 
-task-0: time="2025-01-07T14:24:29-12:00" level=error msg="routeMessage: StopShellMessage: session not found for id undefined-session-id"
+task-0: time="2025-01-08T16:31:41+14:00" level=error msg="routeMessage: StopShellMessage: session not found for id undefined-session-id"
 task-0:     daemon_test.go:199: route message error: routeMessage: StopShellMessage: session not found for id undefined-session-id
 task-0:     daemon_test.go:203: read message: type, session_id, data stop, c4993deb-26b4-4c58-aaee-fd0c9e694328, 
-task-0: time="2025-01-07T14:24:33-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
+task-0: time="2025-01-08T16:31:45+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
 task-0:     daemon_test.go:209: checking command execution results
-task-0:     daemon_test.go:212: checking if /tmp/TestMenderShellExec3090088994 contains newShellTransaction.6157111
-task-0:     daemon_test.go:215: got: 'newShellTransaction.6157111'
-task-0: --- PASS: TestMenderShellSessionStart (8.03s)
+task-0:     daemon_test.go:212: checking if /tmp/TestMenderShellExec303120124 contains newShellTransaction.5211031
+task-0:     daemon_test.go:215: got: 'newShellTransaction.5211031'
+task-0: --- PASS: TestMenderShellSessionStart (8.02s)
 task-0: === RUN   TestMenderShellStopByUserId
 task-0:     daemon_test.go:253: starting mock httpd with websockets
 task-0: newShellStopByUserId starting
 task-0: (0) newShellStopByUserId sendMessage: <nil>
 task-0:     daemon_test.go:278: read message: type, session_id, data new, c4993deb-26b4-4c58-aaee-fd0c9e694328, 
-task-0: time="2025-01-07T14:24:39-12:00" level=info msg="mender-connect starting shell command passing process, pid: 26940"
+task-0: time="2025-01-08T16:31:51+14:00" level=info msg="mender-connect starting shell command passing process, pid: 9706"
 task-0: (1) newShellStopByUserId sendMessage: <nil>
 task-0: (2) newShellStopByUserId sendMessage: <nil>
 task-0: (3) newShellStopByUserId sendMessage: <nil>
 task-0:     daemon_test.go:292: read message: type, session_id, data stop, c4993deb-26b4-4c58-aaee-fd0c9e694328, 
-task-0: time="2025-01-07T14:24:39-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
-task-0: time="2025-01-07T14:24:39-12:00" level=error msg="error reading stdout: read /dev/ptmx: input/output error"
-task-0: time="2025-01-07T14:24:43-12:00" level=error msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328, shell pid 26940, termination error: error waiting for the process: signal: interrupt"
-task-0: time="2025-01-07T14:24:43-12:00" level=error msg="process error on exit: error waiting for the process: signal: interrupt"
+task-0: time="2025-01-08T16:31:51+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
+task-0: time="2025-01-08T16:31:51+14:00" level=error msg="error reading stdout: read /dev/ptmx: input/output error"
+task-0: time="2025-01-08T16:31:55+14:00" level=error msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328, shell pid 9706, termination error: error waiting for the process: signal: interrupt"
+task-0: time="2025-01-08T16:31:55+14:00" level=error msg="process error on exit: error waiting for the process: signal: interrupt"
 task-0:     daemon_test.go:299: read message: type, session_id, data stop, c4993deb-26b4-4c58-aaee-fd0c9e694328, 
-task-0: time="2025-01-07T14:24:43-12:00" level=error msg="routeMessage: StopShellMessage: session not found for id c4993deb-26b4-4c58-aaee-fd0c9e694328"
+task-0: time="2025-01-08T16:31:55+14:00" level=error msg="routeMessage: StopShellMessage: session not found for id c4993deb-26b4-4c58-aaee-fd0c9e694328"
 task-0:     daemon_test.go:302: route message error: routeMessage: StopShellMessage: session not found for id c4993deb-26b4-4c58-aaee-fd0c9e694328
 task-0: --- PASS: TestMenderShellStopByUserId (7.02s)
 task-0: === RUN   TestMenderShellUnknownMessage
@@ -1228,12 +1264,12 @@
 task-0:     daemon_test.go:391: starting mock httpd with websockets
 task-0: newShellMulti: starting
 task-0: 
-task-0:     daemon_test.go:424: read message: type, session_id, data new, bb618fd2-141e-48bb-b006-ce1267f52578, 
-task-0: time="2025-01-07T14:24:46-12:00" level=info msg="mender-connect starting shell command passing process, pid: 26961"
-task-0:     daemon_test.go:424: read message: type, session_id, data new, c5ae3acb-0ae1-4740-ba18-31b58d76476b, 
-task-0: time="2025-01-07T14:24:46-12:00" level=info msg="mender-connect starting shell command passing process, pid: 26962"
-task-0:     daemon_test.go:433: read message: type, session_id, data new, 827965c4-ce24-433b-90cb-2c4948648eb1, 
-task-0: time="2025-01-07T14:24:46-12:00" level=error msg="user has too many open sessions"
+task-0:     daemon_test.go:424: read message: type, session_id, data new, f0ef4eaf-d2f2-463a-bbe0-5c7d1c721dcc, 
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="mender-connect starting shell command passing process, pid: 9850"
+task-0:     daemon_test.go:424: read message: type, session_id, data new, 54a60b1d-eeb8-4c23-8fd2-96824ab5bce6, 
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="mender-connect starting shell command passing process, pid: 9851"
+task-0:     daemon_test.go:433: read message: type, session_id, data new, aef88c38-0715-4c6d-ab6f-1cb5cf29130f, 
+task-0: time="2025-01-08T16:31:58+14:00" level=error msg="user has too many open sessions"
 task-0:     daemon_test.go:436: route message error: user has too many open sessions
 task-0: --- PASS: TestMenderShellSessionLimitPerUser (0.01s)
 task-0: === RUN   TestMenderShellStopDaemon
@@ -1247,14 +1283,14 @@
 task-0: 
 task-0: newShellMulti: starting
 task-0: 
-task-0:     daemon_test.go:578: read message: type, session_id, data new, fa9b10ec-7de4-4a4c-9774-1bec320674b1, 
-task-0: time="2025-01-07T14:24:57-12:00" level=info msg="mender-connect starting shell command passing process, pid: 26981"
-task-0:     daemon_test.go:578: read message: type, session_id, data new, 097313eb-9b21-4e44-bd6c-128cb85007f1, 
-task-0: time="2025-01-07T14:24:58-12:00" level=info msg="mender-connect starting shell command passing process, pid: 26984"
-task-0:     daemon_test.go:587: read message: type, session_id, data new, d87649d3-f2e7-4e40-ba62-c90711c1996b, 
-task-0: time="2025-01-07T14:24:58-12:00" level=error msg="too many shells spawned"
+task-0:     daemon_test.go:578: read message: type, session_id, data new, f73169c9-30c3-4951-a2a2-ee6b7131c5a9, 
+task-0: time="2025-01-08T16:32:09+14:00" level=info msg="mender-connect starting shell command passing process, pid: 9942"
+task-0:     daemon_test.go:578: read message: type, session_id, data new, f8daa2ea-3599-4c53-bcb9-ffe35086ec8f, 
+task-0: time="2025-01-08T16:32:10+14:00" level=info msg="mender-connect starting shell command passing process, pid: 9943"
+task-0:     daemon_test.go:587: read message: type, session_id, data new, 355fff08-95d7-4ee2-b09a-217b1cc11163, 
+task-0: time="2025-01-08T16:32:10+14:00" level=error msg="too many shells spawned"
 task-0:     daemon_test.go:590: route message error: too many shells spawned
-task-0: --- PASS: TestMenderShellMaxShellsLimit (2.02s)
+task-0: --- PASS: TestMenderShellMaxShellsLimit (2.01s)
 task-0: === RUN   TestMenderShellNeedsReconnect
 task-0: --- PASS: TestMenderShellNeedsReconnect (1.00s)
 task-0: === RUN   TestMenderShellPostEvent
@@ -1262,25 +1298,25 @@
 task-0: === RUN   TestMenderShellReadEvent
 task-0: --- PASS: TestMenderShellReadEvent (0.00s)
 task-0: === RUN   TestOutputStatus
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="mender-connect daemon vunknown"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg=" status: "
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="  shells: 0/2"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="  sessions: 4"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   id:bb618fd2-141e-48bb-b006-ce1267f52578 status:0 started:Wed Jan 8 02:24:46 +0000 UTC 2025"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   expires:Wed Jan 8 02:26:54 +0000 UTC 2025 active:Wed Jan 8 02:24:46 +0000 UTC 2025"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   shell:/bin/sh"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   id:c5ae3acb-0ae1-4740-ba18-31b58d76476b status:0 started:Wed Jan 8 02:24:46 +0000 UTC 2025"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   expires:Wed Jan 8 02:26:54 +0000 UTC 2025 active:Wed Jan 8 02:24:46 +0000 UTC 2025"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   shell:/bin/sh"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   id:fa9b10ec-7de4-4a4c-9774-1bec320674b1 status:0 started:Wed Jan 8 02:24:57 +0000 UTC 2025"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   expires:Wed Jan 8 02:42:01 +0000 UTC 2025 active:Wed Jan 8 02:24:57 +0000 UTC 2025"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   shell:/bin/sh"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   id:097313eb-9b21-4e44-bd6c-128cb85007f1 status:0 started:Wed Jan 8 02:24:58 +0000 UTC 2025"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   expires:Wed Jan 8 02:42:02 +0000 UTC 2025 active:Wed Jan 8 02:24:58 +0000 UTC 2025"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   shell:/bin/sh"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="  file-transfer:"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   total: tx/rx 0/0"
-task-0: time="2025-01-07T14:24:59-12:00" level=info msg="   1m: tx rx 0.00 0.00 (w)"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="mender-connect daemon vunknown"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg=" status: "
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="  shells: 0/2"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="  sessions: 4"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   id:f73169c9-30c3-4951-a2a2-ee6b7131c5a9 status:0 started:Wed Jan 8 02:32:09 +0000 UTC 2025"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   expires:Wed Jan 8 02:49:13 +0000 UTC 2025 active:Wed Jan 8 02:32:09 +0000 UTC 2025"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   shell:/bin/sh"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   id:f8daa2ea-3599-4c53-bcb9-ffe35086ec8f status:0 started:Wed Jan 8 02:32:10 +0000 UTC 2025"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   expires:Wed Jan 8 02:49:14 +0000 UTC 2025 active:Wed Jan 8 02:32:10 +0000 UTC 2025"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   shell:/bin/sh"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   id:f0ef4eaf-d2f2-463a-bbe0-5c7d1c721dcc status:0 started:Wed Jan 8 02:31:58 +0000 UTC 2025"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   expires:Wed Jan 8 02:34:06 +0000 UTC 2025 active:Wed Jan 8 02:31:58 +0000 UTC 2025"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   shell:/bin/sh"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   id:54a60b1d-eeb8-4c23-8fd2-96824ab5bce6 status:0 started:Wed Jan 8 02:31:58 +0000 UTC 2025"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   expires:Wed Jan 8 02:34:06 +0000 UTC 2025 active:Wed Jan 8 02:31:58 +0000 UTC 2025"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   shell:/bin/sh"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="  file-transfer:"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   total: tx/rx 0/0"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="   1m: tx rx 0.00 0.00 (w)"
 task-0: --- PASS: TestOutputStatus (0.00s)
 task-0: === RUN   TestTimeToSweepSessions
 task-0: --- PASS: TestTimeToSweepSessions (4.00s)
@@ -1305,19 +1341,19 @@
 task-0: === NAME  TestMessageMainLoop
 task-0:     daemon_test.go:993: ok: expected to run forever
 task-0: === RUN   TestMessageMainLoop/ws-nil-error
-task-0: time="2025-01-07T14:25:51-12:00" level=error msg="session bb618fd2-141e-48bb-b006-ce1267f52578, health check failed, connection with the client lost"
-task-0: time="2025-01-07T14:25:51-12:00" level=info msg="session bb618fd2-141e-48bb-b006-ce1267f52578 status:0 stopping shell"
-task-0: time="2025-01-07T14:25:51-12:00" level=error msg="session c5ae3acb-0ae1-4740-ba18-31b58d76476b, health check failed, connection with the client lost"
-task-0: time="2025-01-07T14:25:51-12:00" level=info msg="session c5ae3acb-0ae1-4740-ba18-31b58d76476b status:0 stopping shell"
-task-0: time="2025-01-07T14:25:55-12:00" level=info msg="session bb618fd2-141e-48bb-b006-ce1267f52578 successfully stopped"
-task-0: time="2025-01-07T14:25:55-12:00" level=info msg="session c5ae3acb-0ae1-4740-ba18-31b58d76476b successfully stopped"
-task-0: time="2025-01-07T14:26:02-12:00" level=error msg="session fa9b10ec-7de4-4a4c-9774-1bec320674b1, health check failed, connection with the client lost"
-task-0: time="2025-01-07T14:26:02-12:00" level=info msg="session fa9b10ec-7de4-4a4c-9774-1bec320674b1 status:0 stopping shell"
-task-0: time="2025-01-07T14:26:03-12:00" level=error msg="session 097313eb-9b21-4e44-bd6c-128cb85007f1, health check failed, connection with the client lost"
-task-0: time="2025-01-07T14:26:03-12:00" level=info msg="session 097313eb-9b21-4e44-bd6c-128cb85007f1 status:0 stopping shell"
+task-0: time="2025-01-08T16:33:03+14:00" level=error msg="session 54a60b1d-eeb8-4c23-8fd2-96824ab5bce6, health check failed, connection with the client lost"
+task-0: time="2025-01-08T16:33:03+14:00" level=info msg="session 54a60b1d-eeb8-4c23-8fd2-96824ab5bce6 status:0 stopping shell"
+task-0: time="2025-01-08T16:33:03+14:00" level=error msg="session f0ef4eaf-d2f2-463a-bbe0-5c7d1c721dcc, health check failed, connection with the client lost"
+task-0: time="2025-01-08T16:33:03+14:00" level=info msg="session f0ef4eaf-d2f2-463a-bbe0-5c7d1c721dcc status:0 stopping shell"
+task-0: time="2025-01-08T16:33:07+14:00" level=info msg="session f0ef4eaf-d2f2-463a-bbe0-5c7d1c721dcc successfully stopped"
+task-0: time="2025-01-08T16:33:07+14:00" level=info msg="session 54a60b1d-eeb8-4c23-8fd2-96824ab5bce6 successfully stopped"
+task-0: time="2025-01-08T16:33:14+14:00" level=error msg="session f73169c9-30c3-4951-a2a2-ee6b7131c5a9, health check failed, connection with the client lost"
+task-0: time="2025-01-08T16:33:14+14:00" level=info msg="session f73169c9-30c3-4951-a2a2-ee6b7131c5a9 status:0 stopping shell"
+task-0: time="2025-01-08T16:33:15+14:00" level=error msg="session f8daa2ea-3599-4c53-bcb9-ffe35086ec8f, health check failed, connection with the client lost"
+task-0: time="2025-01-08T16:33:15+14:00" level=info msg="session f8daa2ea-3599-4c53-bcb9-ffe35086ec8f status:0 stopping shell"
 task-0: === NAME  TestMessageMainLoop
 task-0:     daemon_test.go:993: ok: expected to run forever
-task-0: --- PASS: TestMessageMainLoop (30.01s)
+task-0: --- PASS: TestMessageMainLoop (30.00s)
 task-0:     --- PASS: TestMessageMainLoop/normal-exit (0.00s)
 task-0: === RUN   TestRun
 task-0: --- PASS: TestRun (0.00s)
@@ -1328,61 +1364,61 @@
 task-0: === CONT  TestRouteMessage
 task-0: === CONT  TestDecreaseSpawnedShellsCount
 task-0: === RUN   TestDecreaseSpawnedShellsCount/decrease_by_1_with_1
-task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_1_with_1
 task-0: === RUN   TestRouteMessage/ok,_session_router
 task-0: === PAUSE TestRouteMessage/ok,_session_router
 task-0: === RUN   TestRouteMessage/error,_session_router
-task-0: === RUN   TestDecreaseSpawnedShellsCount/decrease_by_1_with_many
 task-0: === PAUSE TestRouteMessage/error,_session_router
-task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_1_with_many
 task-0: === CONT  TestRouteMessage/ok,_session_router
+task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_1_with_1
+task-0: === RUN   TestDecreaseSpawnedShellsCount/decrease_by_1_with_many
+task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_1_with_many
 task-0: === RUN   TestDecreaseSpawnedShellsCount/decrease_by_many_with_many
 task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_many_with_many
 task-0: === RUN   TestDecreaseSpawnedShellsCount/decrease_by_many_with_some
 task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_many_with_some
+task-0: === CONT  TestRouteMessage/error,_session_router
+task-0: --- PASS: TestRouteMessage (0.00s)
+task-0:     --- PASS: TestRouteMessage/ok,_session_router (0.00s)
+task-0:     --- PASS: TestRouteMessage/error,_session_router (0.00s)
 task-0: === RUN   TestDecreaseSpawnedShellsCount/decrease_by_some_with_many
 task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_some_with_many
 task-0: === RUN   TestDecreaseSpawnedShellsCount/decrease_by_many_with_0
 task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_many_with_0
 task-0: === RUN   TestDecreaseSpawnedShellsCount/decrease_by_0_with_0
-task-0: === CONT  TestRouteMessage/error,_session_router
 task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_0_with_0
 task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_1_with_1
-task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_some_with_many
-task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_many_with_some
 task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_0_with_0
+task-0: time="2025-01-08T16:33:17+14:00" level=warning msg="can't decrement shellsSpawned count: it is 0."
 task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_many_with_0
+task-0: time="2025-01-08T16:33:17+14:00" level=warning msg="can't decrement shellsSpawned count: it is 0."
+task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_some_with_many
+task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_many_with_some
 task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_many_with_many
-task-0: time="2025-01-07T14:26:05-12:00" level=warning msg="can't decrement shellsSpawned count: it is 0."
-task-0: time="2025-01-07T14:26:05-12:00" level=warning msg="can't decrement shellsSpawned count: it is 0."
 task-0: === CONT  TestDecreaseSpawnedShellsCount/decrease_by_1_with_many
-task-0: --- PASS: TestRouteMessage (0.00s)
-task-0:     --- PASS: TestRouteMessage/ok,_session_router (0.00s)
-task-0:     --- PASS: TestRouteMessage/error,_session_router (0.00s)
 task-0: --- PASS: TestDecreaseSpawnedShellsCount (0.00s)
-task-0:     --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_some_with_many (0.00s)
 task-0:     --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_1_with_1 (0.00s)
-task-0:     --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_many_with_some (0.00s)
 task-0:     --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_0_with_0 (0.00s)
-task-0:     --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_many_with_many (0.00s)
 task-0:     --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_many_with_0 (0.00s)
+task-0:     --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_some_with_many (0.00s)
+task-0:     --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_many_with_some (0.00s)
+task-0:     --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_many_with_many (0.00s)
 task-0:     --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_1_with_many (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/app	96.178s
+task-0: ok  	github.com/mendersoftware/mender-connect/app	96.110s
 task-0: === RUN   TestBusGet
-task-0: --- PASS: TestBusGet (0.03s)
+task-0: --- PASS: TestBusGet (0.00s)
 task-0: === RUN   TestBusProxyNew
 task-0: === RUN   TestBusProxyNew/ok
 task-0: === RUN   TestBusProxyNew/ko,_wrong_path
 task-0: 
-task-0: (process:27122): GLib-GIO-CRITICAL **: 14:25:12.123: g_dbus_proxy_new_sync: assertion 'g_variant_is_object_path (object_path)' failed
-task-0: --- PASS: TestBusProxyNew (0.01s)
+task-0: (process:9772): GLib-GIO-CRITICAL **: 16:31:56.077: g_dbus_proxy_new_sync: assertion 'g_variant_is_object_path (object_path)' failed
+task-0: --- PASS: TestBusProxyNew (0.00s)
 task-0:     --- PASS: TestBusProxyNew/ok (0.00s)
 task-0:     --- PASS: TestBusProxyNew/ko,_wrong_path (0.00s)
 task-0: === RUN   TestBusProxyCall
 task-0: === RUN   TestBusProxyCall/ok
 task-0: === RUN   TestBusProxyCall/ko,_already_handled_Hello_message
-task-0: --- PASS: TestBusProxyCall (0.01s)
+task-0: --- PASS: TestBusProxyCall (0.00s)
 task-0:     --- PASS: TestBusProxyCall/ok (0.00s)
 task-0:     --- PASS: TestBusProxyCall/ko,_already_handled_Hello_message (0.00s)
 task-0: === RUN   TestMainLoop
@@ -1397,7 +1433,7 @@
 task-0: === RUN   TestError
 task-0: --- PASS: TestError (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/client/dbus	0.318s
+task-0: ok  	github.com/mendersoftware/mender-connect/client/dbus	0.227s
 task-0: === RUN   TestNewAuthClientDefaultDBusAPI
 task-0: --- PASS: TestNewAuthClientDefaultDBusAPI (0.00s)
 task-0: === RUN   TestNewAuthClient
@@ -1431,50 +1467,50 @@
 task-0:     --- PASS: TestAuthClientWaitForJwtTokenStateChange/ok-with-params (0.00s)
 task-0:     --- PASS: TestAuthClientWaitForJwtTokenStateChange/error (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/client/mender	0.062s
+task-0: ok  	github.com/mendersoftware/mender-connect/client/mender	0.017s
 task-0: === RUN   Test_readConfigFile_noFile_returnsError
 task-0: --- PASS: Test_readConfigFile_noFile_returnsError (0.00s)
 task-0: === RUN   Test_readConfigFile_brokenContent_returnsError
-task-0: time="2025-01-07T14:25:20-12:00" level=error msg="Error loading configuration from file: /tmp/mendertest889627691/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)"
-task-0: time="2025-01-07T14:25:20-12:00" level=error msg="Error loading configuration from file: /tmp/mendertest889627691/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)"
+task-0: time="2025-01-08T16:31:58+14:00" level=error msg="Error loading configuration from file: /tmp/mendertest508241042/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)"
+task-0: time="2025-01-08T16:31:58+14:00" level=error msg="Error loading configuration from file: /tmp/mendertest508241042/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)"
 task-0: --- PASS: Test_readConfigFile_brokenContent_returnsError (0.00s)
 task-0: === RUN   Test_LoadConfig_correctConfFile_returnsConfiguration
-task-0: time="2025-01-07T14:25:20-12:00" level=info msg="Loaded configuration file: /tmp/mendertest3287300211/mender-connect.conf"
-task-0: time="2025-01-07T14:25:20-12:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh"
-task-0: time="2025-01-07T14:25:20-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2025-01-07T14:25:20-12:00" level=warning msg="both ExpireAfter and ExpireAfterIdle specified."
-task-0: time="2025-01-07T14:25:20-12:00" level=info msg="Loaded configuration file: /tmp/mendertest3287300211/mender-connect.conf"
-task-0: time="2025-01-07T14:25:20-12:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh"
-task-0: time="2025-01-07T14:25:20-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2025-01-07T14:25:20-12:00" level=warning msg="both ExpireAfter and ExpireAfterIdle specified."
-task-0: --- PASS: Test_LoadConfig_correctConfFile_returnsConfiguration (0.01s)
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="Loaded configuration file: /tmp/mendertest792519443/mender-connect.conf"
+task-0: time="2025-01-08T16:31:58+14:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh"
+task-0: time="2025-01-08T16:31:58+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-01-08T16:31:58+14:00" level=warning msg="both ExpireAfter and ExpireAfterIdle specified."
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="Loaded configuration file: /tmp/mendertest792519443/mender-connect.conf"
+task-0: time="2025-01-08T16:31:58+14:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh"
+task-0: time="2025-01-08T16:31:58+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-01-08T16:31:58+14:00" level=warning msg="both ExpireAfter and ExpireAfterIdle specified."
+task-0: --- PASS: Test_LoadConfig_correctConfFile_returnsConfiguration (0.00s)
 task-0: === RUN   TestConfigurationMergeSettings
-task-0: time="2025-01-07T14:25:20-12:00" level=info msg="Loaded configuration file: fallback.config"
-task-0: time="2025-01-07T14:25:20-12:00" level=info msg="Loaded configuration file: main.config"
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="Loaded configuration file: fallback.config"
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="Loaded configuration file: main.config"
 task-0: --- PASS: TestConfigurationMergeSettings (0.00s)
 task-0: === RUN   Test_LoadConfig_various_errors
-task-0: time="2025-01-07T14:25:20-12:00" level=info msg="Loaded configuration file: /tmp/mendertest3920786343/mender-connect.conf"
-task-0: time="2025-01-07T14:25:20-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2025-01-07T14:25:20-12:00" level=info msg="Loaded configuration file: /tmp/mendertest3920786343/mender-connect.conf"
-task-0: time="2025-01-07T14:25:20-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2025-01-07T14:25:20-12:00" level=info msg="Loaded configuration file: /tmp/mendertest3920786343/mender-connect.conf"
-task-0: time="2025-01-07T14:25:20-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2025-01-07T14:25:20-12:00" level=info msg="Loaded configuration file: /tmp/mendertest3920786343/mender-connect.conf"
-task-0: time="2025-01-07T14:25:20-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2025-01-07T14:25:20-12:00" level=info msg="Loaded configuration file: /tmp/mendertest3920786343/mender-connect.conf"
-task-0: time="2025-01-07T14:25:20-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2025-01-07T14:25:20-12:00" level=error msg="ShellCommand /bin/ls is not present in /etc/shells"
-task-0: time="2025-01-07T14:25:20-12:00" level=error msg="Error loading configuration from file: /tmp/mendertest3920786343/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)"
-task-0: time="2025-01-07T14:25:20-12:00" level=error msg="Error loading configuration from file: /tmp/mendertest3920786343/mender-connect.conf (Error parsing config file: json: cannot unmarshal number into Go struct field MenderShellConfigFromFile.ShellCommand of type string)"
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="Loaded configuration file: /tmp/mendertest1104878717/mender-connect.conf"
+task-0: time="2025-01-08T16:31:58+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="Loaded configuration file: /tmp/mendertest1104878717/mender-connect.conf"
+task-0: time="2025-01-08T16:31:58+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="Loaded configuration file: /tmp/mendertest1104878717/mender-connect.conf"
+task-0: time="2025-01-08T16:31:58+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="Loaded configuration file: /tmp/mendertest1104878717/mender-connect.conf"
+task-0: time="2025-01-08T16:31:58+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="Loaded configuration file: /tmp/mendertest1104878717/mender-connect.conf"
+task-0: time="2025-01-08T16:31:58+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-01-08T16:31:58+14:00" level=error msg="ShellCommand /bin/ls is not present in /etc/shells"
+task-0: time="2025-01-08T16:31:58+14:00" level=error msg="Error loading configuration from file: /tmp/mendertest1104878717/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)"
+task-0: time="2025-01-08T16:31:58+14:00" level=error msg="Error loading configuration from file: /tmp/mendertest1104878717/mender-connect.conf (Error parsing config file: json: cannot unmarshal number into Go struct field MenderShellConfigFromFile.ShellCommand of type string)"
 task-0: --- PASS: Test_LoadConfig_various_errors (0.01s)
 task-0: === RUN   TestConfigurationNeitherFileExistsIsNotError
-task-0: time="2025-01-07T14:25:20-12:00" level=info msg="No configuration files present. Using defaults"
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="No configuration files present. Using defaults"
 task-0: --- PASS: TestConfigurationNeitherFileExistsIsNotError (0.00s)
 task-0: === RUN   TestShellArgumentsEmptyDefaults
-task-0: time="2025-01-07T14:25:20-12:00" level=info msg="Loaded configuration file: main.config"
-task-0: time="2025-01-07T14:25:20-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
-task-0: time="2025-01-07T14:25:20-12:00" level=info msg="Loaded configuration file: main.config"
-task-0: time="2025-01-07T14:25:20-12:00" level=info msg="Loaded configuration file: main.config"
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="Loaded configuration file: main.config"
+task-0: time="2025-01-08T16:31:58+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]"
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="Loaded configuration file: main.config"
+task-0: time="2025-01-08T16:31:58+14:00" level=info msg="Loaded configuration file: main.config"
 task-0: --- PASS: TestShellArgumentsEmptyDefaults (0.00s)
 task-0: === RUN   TestServerArgumentsDeprecated
 task-0: --- PASS: TestServerArgumentsDeprecated (0.01s)
@@ -1492,67 +1528,67 @@
 task-0: === RUN   TestMenderShowVersion
 task-0: --- PASS: TestMenderShowVersion (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/config	0.064s
+task-0: ok  	github.com/mendersoftware/mender-connect/config	0.033s
 task-0: === RUN   TestNewConnection
 task-0:     connection_test.go:97: starting mock httpd with websockets
-task-0: --- PASS: TestNewConnection (0.02s)
+task-0: --- PASS: TestNewConnection (0.00s)
 task-0: === RUN   TestConnection_ReadMessage
 task-0:     connection_test.go:126: starting mock httpd with websockets
 task-0:     connection_test.go:143: read: 'hello'
 task-0: --- PASS: TestConnection_ReadMessage (1.00s)
 task-0: === RUN   TestConnection_WriteMessage
 task-0:     connection_test.go:149: starting mock httpd with websockets
-task-0: --- PASS: TestConnection_WriteMessage (1.01s)
+task-0: --- PASS: TestConnection_WriteMessage (1.00s)
 task-0: === RUN   TestConnection_Close
 task-0:     connection_test.go:174: starting mock httpd with websockets
 task-0: --- PASS: TestConnection_Close (1.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/connection	3.063s
+task-0: ok  	github.com/mendersoftware/mender-connect/connection	3.018s
 task-0: === RUN   TestGetWriteTimeout
 task-0: --- PASS: TestGetWriteTimeout (0.00s)
 task-0: === RUN   TestGetWsScheme
 task-0: --- PASS: TestGetWsScheme (0.00s)
 task-0: === RUN   TestConnect
-task-0: 2025/01/07 14:25:26 [130 163 104 100 114 129 165 112 114 111 116 111 205 0 1 164 98 111 100 121 196 5 100 117 109 109 121]
-task-0: --- PASS: TestConnect (2.01s)
+task-0: --- PASS: TestConnect (2.00s)
+task-0: 2025/01/08 16:32:02 [130 163 104 100 114 129 165 112 114 111 116 111 205 0 1 164 98 111 100 121 196 5 100 117 109 109 121]
 task-0: === RUN   TestReconnect
-task-0: 2025/01/07 14:25:26 http: panic serving 127.0.0.1:54928: websocket: close 1006 (abnormal closure): unexpected EOF
-task-0: goroutine 19 [running]:
+task-0: 2025/01/08 16:32:02 http: panic serving 127.0.0.1:35852: websocket: close 1006 (abnormal closure): unexpected EOF
+task-0: goroutine 34 [running]:
 task-0: net/http.(*conn).serve.func1()
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:1947 +0xe4
 task-0: panic({0x37cc38, 0x6219f8})
 task-0: 	/usr/lib/go-1.23/src/runtime/panic.go:785 +0xfc
-task-0: github.com/mendersoftware/mender-connect/connectionmanager.newWebsocketServer.func2({0x43fa74, 0x14981e8}, 0x15f0168)
+task-0: github.com/mendersoftware/mender-connect/connectionmanager.newWebsocketServer.func2({0x43fa74, 0x11cc0a8}, 0x11c8008)
 task-0: 	/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/connectionmanager/connectionmanager_test.go:63 +0x1d0
-task-0: net/http.HandlerFunc.ServeHTTP(0x1430560, {0x43fa74, 0x14981e8}, 0x15f0168)
+task-0: net/http.HandlerFunc.ServeHTTP(0x1030550, {0x43fa74, 0x11cc0a8}, 0x11c8008)
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:2220 +0x34
-task-0: net/http.(*ServeMux).ServeHTTP(0x1550008, {0x43fa74, 0x14981e8}, 0x15f0168)
+task-0: net/http.(*ServeMux).ServeHTTP(0x114e008, {0x43fa74, 0x11cc0a8}, 0x11c8008)
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:2747 +0x224
-task-0: net/http.serverHandler.ServeHTTP({0x1510648}, {0x43fa74, 0x14981e8}, 0x15f0168)
+task-0: net/http.serverHandler.ServeHTTP({0x110c5a8}, {0x43fa74, 0x11cc0a8}, 0x11c8008)
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:3210 +0xe0
-task-0: net/http.(*conn).serve(0x1584060, {0x43fce4, 0x159a1e0})
+task-0: net/http.(*conn).serve(0x11a8000, {0x43fce4, 0x110e5b8})
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:2092 +0x604
-task-0: created by net/http.(*Server).Serve in goroutine 10
+task-0: created by net/http.(*Server).Serve in goroutine 8
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:3360 +0x430
-task-0: --- PASS: TestReconnect (2.00s)
+task-0: --- PASS: TestReconnect (2.01s)
 task-0: === RUN   TestConnectFailed
-task-0: 2025/01/07 14:25:28 http: panic serving 127.0.0.1:43504: read tcp 127.0.0.1:8999->127.0.0.1:43504: read: connection reset by peer
-task-0: goroutine 35 [running]:
+task-0: 2025/01/08 16:32:04 http: panic serving 127.0.0.1:35860: read tcp 127.0.0.1:8999->127.0.0.1:35860: read: connection reset by peer
+task-0: goroutine 50 [running]:
 task-0: net/http.(*conn).serve.func1()
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:1947 +0xe4
-task-0: panic({0x399168, 0x15b8330})
+task-0: panic({0x399168, 0x1280030})
 task-0: 	/usr/lib/go-1.23/src/runtime/panic.go:785 +0xfc
-task-0: github.com/mendersoftware/mender-connect/connectionmanager.newWebsocketServer.func2({0x43fa74, 0x1498508}, 0x14c2008)
+task-0: github.com/mendersoftware/mender-connect/connectionmanager.newWebsocketServer.func2({0x43fa74, 0x110c8c8}, 0x1100378)
 task-0: 	/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/connectionmanager/connectionmanager_test.go:63 +0x1d0
-task-0: net/http.HandlerFunc.ServeHTTP(0x14306a0, {0x43fa74, 0x1498508}, 0x14c2008)
+task-0: net/http.HandlerFunc.ServeHTTP(0x1030860, {0x43fa74, 0x110c8c8}, 0x1100378)
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:2220 +0x34
-task-0: net/http.(*ServeMux).ServeHTTP(0x1550098, {0x43fa74, 0x1498508}, 0x14c2008)
+task-0: net/http.(*ServeMux).ServeHTTP(0x114e098, {0x43fa74, 0x110c8c8}, 0x1100378)
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:2747 +0x224
-task-0: net/http.serverHandler.ServeHTTP({0x15106e8}, {0x43fa74, 0x1498508}, 0x14c2008)
+task-0: net/http.serverHandler.ServeHTTP({0x110c828}, {0x43fa74, 0x110c8c8}, 0x1100378)
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:3210 +0xe0
-task-0: net/http.(*conn).serve(0x14b6000, {0x43fce4, 0x1512558})
+task-0: net/http.(*conn).serve(0x1126a80, {0x43fce4, 0x110e7c8})
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:2092 +0x604
-task-0: created by net/http.(*Server).Serve in goroutine 16
+task-0: created by net/http.(*Server).Serve in goroutine 15
 task-0: 	/usr/lib/go-1.23/src/net/http/server.go:3360 +0x430
 task-0: --- PASS: TestConnectFailed (0.00s)
 task-0: === RUN   TestCloseFailed
@@ -1566,11 +1602,11 @@
 task-0: === RUN   TestMaxBackoff
 task-0: --- PASS: TestMaxBackoff (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/connectionmanager	4.051s
+task-0: ok  	github.com/mendersoftware/mender-connect/connectionmanager	4.024s
 task-0: === RUN   TestGetCounters
-task-0: --- PASS: TestGetCounters (8.03s)
+task-0: --- PASS: TestGetCounters (8.04s)
 task-0: === RUN   TestUpdateCounters
-task-0:     limits_test.go:160: after 18s; +{24576 24576 1663.3268261488847 1663.3268261488847 {13967798142243852935 8037448893 0x3c3980} {13967798142243855602 8037451559 0x3c3980}} 1663.00 vs 1663.33=0.33 1663.00 vs 1663.33=0.33
+task-0:     limits_test.go:160: after 18s; +{24576 24576 1663.3268261488847 1663.3268261488847 {13967798566991329585 8045585707 0x3c3980} {13967798566991329805 8045585927 0x3c3980}} 1663.00 vs 1663.33=0.33 1663.00 vs 1663.33=0.33
 task-0: --- PASS: TestUpdateCounters (20.01s)
 task-0: === RUN   TestPermit_PreserveOwnerGroup
 task-0: --- PASS: TestPermit_PreserveOwnerGroup (0.00s)
@@ -1620,7 +1656,7 @@
 task-0: === RUN   TestPermit_UploadFile/file_exists_allowed_to_overwrite_group_match
 task-0: === RUN   TestPermit_UploadFile/suid_bit_not_allowed_in_modes
 task-0: === RUN   TestPermit_UploadFile/suid_bit_allowed_in_modes
-task-0: --- PASS: TestPermit_UploadFile (0.01s)
+task-0: --- PASS: TestPermit_UploadFile (0.00s)
 task-0:     --- PASS: TestPermit_UploadFile/over_the_max_file_size_limit_in_bytes (0.00s)
 task-0:     --- PASS: TestPermit_UploadFile/not_in_a_chroot (0.00s)
 task-0:     --- PASS: TestPermit_UploadFile/forbidden_to_follow_links (0.00s)
@@ -1633,11 +1669,11 @@
 task-0:     --- PASS: TestPermit_UploadFile/suid_bit_not_allowed_in_modes (0.00s)
 task-0:     --- PASS: TestPermit_UploadFile/suid_bit_allowed_in_modes (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/limits/filetransfer	28.097s
+task-0: ok  	github.com/mendersoftware/mender-connect/limits/filetransfer	28.076s
 task-0: === RUN   TestMenderShellProcPs
 task-0: --- PASS: TestMenderShellProcPs (4.02s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/procps	4.048s
+task-0: ok  	github.com/mendersoftware/mender-connect/procps	4.028s
 task-0: === RUN   TestFileTransferUpload
 task-0: === PAUSE TestFileTransferUpload
 task-0: === RUN   TestFileTransferDownload
@@ -1649,22 +1685,22 @@
 task-0: === RUN   TestMenderClientHandler
 task-0: --- PASS: TestMenderClientHandler (0.00s)
 task-0: === RUN   TestRunCommand
-task-0: --- PASS: TestRunCommand (0.01s)
+task-0: --- PASS: TestRunCommand (0.00s)
 task-0: === RUN   TestPortForwardHandler
-task-0: time="2025-01-07T14:25:42-12:00" level=error msg="portForwardHandler(unknown message type\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7290\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7257\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_arm.s:884)"
-task-0: time="2025-01-07T14:25:43-12:00" level=info msg="port-forward: new session/c1: tcp/localhost:39419"
-task-0: time="2025-01-07T14:25:43-12:00" level=error msg="portForwardHandler(dial tcp 127.0.0.1:39419: connect: connection refused)"
-task-0: time="2025-01-07T14:25:43-12:00" level=info msg="port-forward: new session/c1: dummy/localhost:46327"
-task-0: time="2025-01-07T14:25:43-12:00" level=error msg="portForwardHandler(unknown protocol: dummy\ngithub.com/mendersoftware/mender-connect/session.(*MenderPortForwarder).Connect\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:74\ngithub.com/mendersoftware/mender-connect/session.(*PortForwardHandler).portForwardHandlerNew\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:276\ngithub.com/mendersoftware/mender-connect/session.(*PortForwardHandler).ServeProtoMsg\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:205\ngithub.com/mendersoftware/mender-connect/session.TestPortForwardHandler\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward_test.go:120\ntesting.tRunner\n\t/usr/lib/go-1.23/src/testing/testing.go:1690\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_arm.s:884)"
-task-0: time="2025-01-07T14:25:43-12:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7290\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7257\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_arm.s:884)"
-task-0: time="2025-01-07T14:25:43-12:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7290\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7257\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_arm.s:884)"
-task-0: --- PASS: TestPortForwardHandler (0.01s)
+task-0: time="2025-01-08T16:32:11+14:00" level=error msg="portForwardHandler(unknown message type\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7290\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7257\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_arm.s:884)"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="port-forward: new session/c1: tcp/localhost:39659"
+task-0: time="2025-01-08T16:32:11+14:00" level=error msg="portForwardHandler(dial tcp 127.0.0.1:39659: connect: connection refused)"
+task-0: time="2025-01-08T16:32:11+14:00" level=info msg="port-forward: new session/c1: dummy/localhost:43335"
+task-0: time="2025-01-08T16:32:11+14:00" level=error msg="portForwardHandler(unknown protocol: dummy\ngithub.com/mendersoftware/mender-connect/session.(*MenderPortForwarder).Connect\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:74\ngithub.com/mendersoftware/mender-connect/session.(*PortForwardHandler).portForwardHandlerNew\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:276\ngithub.com/mendersoftware/mender-connect/session.(*PortForwardHandler).ServeProtoMsg\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:205\ngithub.com/mendersoftware/mender-connect/session.TestPortForwardHandler\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward_test.go:120\ntesting.tRunner\n\t/usr/lib/go-1.23/src/testing/testing.go:1690\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_arm.s:884)"
+task-0: time="2025-01-08T16:32:11+14:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7290\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7257\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_arm.s:884)"
+task-0: time="2025-01-08T16:32:11+14:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7290\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7257\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_arm.s:884)"
+task-0: --- PASS: TestPortForwardHandler (0.00s)
 task-0: === RUN   TestPortForwardHandlerSuccessfulConnection
-task-0: time="2025-01-07T14:25:45-12:00" level=info msg="port-forward: new session/c1: tcp/localhost:42037"
-task-0: time="2025-01-07T14:25:45-12:00" level=info msg="port-forward: new session/c2: tcp/localhost:42037"
-task-0: time="2025-01-07T14:25:45-12:00" level=info msg="port-forward: stop session/c1"
-task-0: time="2025-01-07T14:25:46-12:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7290\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7257\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_arm.s:884)"
-task-0: --- PASS: TestPortForwardHandlerSuccessfulConnection (3.22s)
+task-0: time="2025-01-08T16:32:13+14:00" level=info msg="port-forward: new session/c1: tcp/localhost:40457"
+task-0: time="2025-01-08T16:32:13+14:00" level=info msg="port-forward: new session/c2: tcp/localhost:40457"
+task-0: time="2025-01-08T16:32:14+14:00" level=info msg="port-forward: stop session/c1"
+task-0: time="2025-01-08T16:32:14+14:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t<autogenerated>:1\nruntime.doInit1\n\t/usr/lib/go-1.23/src/runtime/proc.go:7290\nruntime.doInit\n\t/usr/lib/go-1.23/src/runtime/proc.go:7257\nruntime.main\n\t/usr/lib/go-1.23/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.23/src/runtime/asm_arm.s:884)"
+task-0: --- PASS: TestPortForwardHandlerSuccessfulConnection (3.21s)
 task-0: === RUN   TestRouter
 task-0: === PAUSE TestRouter
 task-0: === RUN   TestRouterRace
@@ -1673,36 +1709,36 @@
 task-0: === PAUSE TestSessionListen
 task-0: === RUN   TestMenderShellStartStopShell
 task-0:     session_test.go:587: starting mock httpd with websockets
-task-0: time="2025-01-07T14:25:46-12:00" level=info msg="mender-connect starting shell command passing process, pid: 27422"
+task-0: time="2025-01-08T16:32:14+14:00" level=info msg="mender-connect starting shell command passing process, pid: 9963"
 task-0:     session_test.go:631: created session:
 task-0:          id:c4993deb-26b4-4c58-aaee-fd0c9e694328,
-task-0:          createdAt:Wed Jan 8 02:25:46 +0000 UTC 2025,
-task-0:          expiresAt:Wed Jan 8 02:42:50 +0000 UTC 2025
-task-0:          now:Tue Jan 7 14:25:46 -1200 -12 2025
-task-0: time="2025-01-07T14:25:46-12:00" level=info msg="mender-connect starting shell command passing process, pid: 27423"
-task-0: time="2025-01-07T14:25:46-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
-task-0: time="2025-01-07T14:25:46-12:00" level=error msg="error reading stdout: read /dev/ptmx: input/output error"
-task-0: time="2025-01-07T14:25:50-12:00" level=error msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328, shell pid 27422, termination error: error waiting for the process: signal: interrupt"
-task-0: time="2025-01-07T14:25:50-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:4 stopping shell"
-task-0: time="2025-01-07T14:25:50-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
-task-0: --- PASS: TestMenderShellStartStopShell (8.03s)
+task-0:          createdAt:Wed Jan 8 02:32:14 +0000 UTC 2025,
+task-0:          expiresAt:Wed Jan 8 02:49:18 +0000 UTC 2025
+task-0:          now:Wed Jan 8 16:32:14 +1400 +14 2025
+task-0: time="2025-01-08T16:32:14+14:00" level=info msg="mender-connect starting shell command passing process, pid: 9964"
+task-0: time="2025-01-08T16:32:14+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
+task-0: time="2025-01-08T16:32:14+14:00" level=error msg="error reading stdout: read /dev/ptmx: input/output error"
+task-0: time="2025-01-08T16:32:18+14:00" level=error msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328, shell pid 9963, termination error: error waiting for the process: signal: interrupt"
+task-0: time="2025-01-08T16:32:18+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:4 stopping shell"
+task-0: time="2025-01-08T16:32:18+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
+task-0: --- PASS: TestMenderShellStartStopShell (8.02s)
 task-0: === RUN   TestMenderShellCommand
 task-0:     session_test.go:680: starting mock httpd with websockets
-task-0: time="2025-01-07T14:25:54-12:00" level=info msg="mender-connect starting shell command passing process, pid: 27424"
-task-0: time="2025-01-07T14:25:54-12:00" level=error msg="error reading stdout: read /dev/ptmx: file already closed"
-task-0: --- PASS: TestMenderShellCommand (0.01s)
+task-0: time="2025-01-08T16:32:22+14:00" level=info msg="mender-connect starting shell command passing process, pid: 9967"
+task-0: --- PASS: TestMenderShellCommand (0.00s)
 task-0: === RUN   TestMenderShellShellAlreadyStartedFailedToStart
 task-0:     session_test.go:757: starting mock httpd with websockets
-task-0: time="2025-01-07T14:25:54-12:00" level=info msg="mender-connect starting shell command passing process, pid: 27425"
-task-0: time="2025-01-07T14:25:54-12:00" level=error msg="failed to start shell: shell is already running"
-task-0: time="2025-01-07T14:25:54-12:00" level=error msg="failed to start shell: fork/exec thatissomethingelse/bin/sh: no such file or directory"
-task-0: --- PASS: TestMenderShellShellAlreadyStartedFailedToStart (0.02s)
+task-0: time="2025-01-08T16:32:22+14:00" level=info msg="mender-connect starting shell command passing process, pid: 9968"
+task-0: time="2025-01-08T16:32:22+14:00" level=error msg="failed to start shell: shell is already running"
+task-0: time="2025-01-08T16:32:22+14:00" level=error msg="error reading stdout: read /dev/ptmx: file already closed"
+task-0: time="2025-01-08T16:32:22+14:00" level=error msg="failed to start shell: fork/exec thatissomethingelse/bin/sh: no such file or directory"
+task-0: --- PASS: TestMenderShellShellAlreadyStartedFailedToStart (0.00s)
 task-0: === RUN   TestMenderShellSessionExpire
-task-0: time="2025-01-07T14:25:54-12:00" level=info msg="mender-connect starting shell command passing process, pid: 27427"
-task-0: --- PASS: TestMenderShellSessionExpire (4.01s)
+task-0: time="2025-01-08T16:32:22+14:00" level=info msg="mender-connect starting shell command passing process, pid: 9970"
+task-0: --- PASS: TestMenderShellSessionExpire (4.00s)
 task-0: === RUN   TestMenderShellSessionUpdateWS
-task-0: time="2025-01-07T14:25:58-12:00" level=info msg="mender-connect starting shell command passing process, pid: 27444"
-task-0: --- PASS: TestMenderShellSessionUpdateWS (0.00s)
+task-0: time="2025-01-08T16:32:26+14:00" level=info msg="mender-connect starting shell command passing process, pid: 9987"
+task-0: --- PASS: TestMenderShellSessionUpdateWS (0.01s)
 task-0: === RUN   TestMenderShellSessionGetByUserId
 task-0: --- PASS: TestMenderShellSessionGetByUserId (0.00s)
 task-0: === RUN   TestMenderShellSessionGetById
@@ -1714,38 +1750,39 @@
 task-0: === RUN   TestMenderSessionTerminateExpired
 task-0:     session_test.go:1142: created session:
 task-0:          id:c4993deb-26b4-4c58-aaee-fd0c9e694328,
-task-0:          createdAt:Wed Jan 8 02:25:58 +0000 UTC 2025,
-task-0:          expiresAt:Wed Jan 8 02:26:06 +0000 UTC 2025
-task-0:          now:Tue Jan 7 14:25:58 -1200 -12 2025
-task-0: time="2025-01-07T14:25:58-12:00" level=info msg="mender-connect starting shell command passing process, pid: 27446"
-task-0: time="2025-01-07T14:26:14-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
+task-0:          createdAt:Wed Jan 8 02:32:26 +0000 UTC 2025,
+task-0:          expiresAt:Wed Jan 8 02:32:34 +0000 UTC 2025
+task-0:          now:Wed Jan 8 16:32:26 +1400 +14 2025
+task-0: time="2025-01-08T16:32:26+14:00" level=info msg="mender-connect starting shell command passing process, pid: 9989"
+task-0: time="2025-01-08T16:32:42+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
 task-0: --- PASS: TestMenderSessionTerminateExpired (20.01s)
 task-0: === RUN   TestMenderSessionTerminateAll
 task-0:     session_test.go:1194: created session:
-task-0:          id:b3a94a82-4679-49d4-ab54-8cd18fe62804,
-task-0:          createdAt:Wed Jan 8 02:26:18 +0000 UTC 2025,
-task-0:          expiresAt:Wed Jan 8 02:26:26 +0000 UTC 2025
-task-0:          now:Tue Jan 7 14:26:18 -1200 -12 2025
-task-0: time="2025-01-07T14:26:18-12:00" level=info msg="mender-connect starting shell command passing process, pid: 27484"
+task-0:          id:7e28ebcb-5f41-44a8-b8a2-2db169ade2b6,
+task-0:          createdAt:Wed Jan 8 02:32:46 +0000 UTC 2025,
+task-0:          expiresAt:Wed Jan 8 02:32:54 +0000 UTC 2025
+task-0:          now:Wed Jan 8 16:32:46 +1400 +14 2025
+task-0: time="2025-01-08T16:32:46+14:00" level=info msg="mender-connect starting shell command passing process, pid: 10535"
 task-0:     session_test.go:1210: created session:
-task-0:          id:9c50d73a-6396-4d55-9d2a-a155468dd91f,
-task-0:          createdAt:Wed Jan 8 02:26:18 +0000 UTC 2025,
-task-0:          expiresAt:Wed Jan 8 02:26:26 +0000 UTC 2025
-task-0:          now:Tue Jan 7 14:26:18 -1200 -12 2025
-task-0: time="2025-01-07T14:26:18-12:00" level=info msg="mender-connect starting shell command passing process, pid: 27485"
-task-0: time="2025-01-07T14:26:18-12:00" level=info msg="session b3a94a82-4679-49d4-ab54-8cd18fe62804 status:0 stopping shell"
-task-0: time="2025-01-07T14:26:18-12:00" level=error msg="error reading stdout: read /dev/ptmx: input/output error"
-task-0: time="2025-01-07T14:26:22-12:00" level=info msg="session 9c50d73a-6396-4d55-9d2a-a155468dd91f status:0 stopping shell"
-task-0: --- PASS: TestMenderSessionTerminateAll (8.02s)
+task-0:          id:c2c65663-291d-48a9-80f1-5a9a010bb70e,
+task-0:          createdAt:Wed Jan 8 02:32:46 +0000 UTC 2025,
+task-0:          expiresAt:Wed Jan 8 02:32:54 +0000 UTC 2025
+task-0:          now:Wed Jan 8 16:32:46 +1400 +14 2025
+task-0: time="2025-01-08T16:32:46+14:00" level=info msg="mender-connect starting shell command passing process, pid: 10536"
+task-0: time="2025-01-08T16:32:46+14:00" level=info msg="session 7e28ebcb-5f41-44a8-b8a2-2db169ade2b6 status:0 stopping shell"
+task-0: time="2025-01-08T16:32:46+14:00" level=error msg="error reading stdout: read /dev/ptmx: input/output error"
+task-0: time="2025-01-08T16:32:50+14:00" level=error msg="session 7e28ebcb-5f41-44a8-b8a2-2db169ade2b6, shell pid 10535, termination error: error waiting for the process: signal: interrupt"
+task-0: time="2025-01-08T16:32:50+14:00" level=info msg="session c2c65663-291d-48a9-80f1-5a9a010bb70e status:0 stopping shell"
+task-0: --- PASS: TestMenderSessionTerminateAll (8.01s)
 task-0: === RUN   TestMenderSessionTerminateIdle
 task-0:     session_test.go:1251: created session:
 task-0:          id:c4993deb-26b4-4c58-aaee-fd0c9e694328,
-task-0:          createdAt:Wed Jan 8 02:26:26 +0000 UTC 2025,
-task-0:          expiresAt:Wed Jan 8 02:30:41 +0000 UTC 2025
-task-0:          now:Tue Jan 7 14:26:26 -1200 -12 2025
-task-0: time="2025-01-07T14:26:26-12:00" level=info msg="mender-connect starting shell command passing process, pid: 27486"
-task-0: time="2025-01-07T14:26:34-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
-task-0: --- PASS: TestMenderSessionTerminateIdle (12.02s)
+task-0:          createdAt:Wed Jan 8 02:32:54 +0000 UTC 2025,
+task-0:          expiresAt:Wed Jan 8 02:37:09 +0000 UTC 2025
+task-0:          now:Wed Jan 8 16:32:54 +1400 +14 2025
+task-0: time="2025-01-08T16:32:54+14:00" level=info msg="mender-connect starting shell command passing process, pid: 10541"
+task-0: time="2025-01-08T16:33:02+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell"
+task-0: --- PASS: TestMenderSessionTerminateIdle (12.00s)
 task-0: === RUN   TestMenderSessionTimeNow
 task-0: --- PASS: TestMenderSessionTimeNow (0.00s)
 task-0: === CONT  TestFileTransferUpload
@@ -1753,101 +1790,57 @@
 task-0: === RUN   TestRouter/ok
 task-0: === PAUSE TestRouter/ok
 task-0: === CONT  TestRouter/ok
-task-0: === CONT  TestSessionListen
 task-0: --- PASS: TestRouter (0.00s)
 task-0:     --- PASS: TestRouter/ok (0.00s)
-task-0: === CONT  TestRouterRace
-task-0: === RUN   TestFileTransferUpload/ok
-task-0: === PAUSE TestFileTransferUpload/ok
-task-0: === CONT  TestFileTransferStat
-task-0: === RUN   TestFileTransferUpload/ok,_relative_path
-task-0: === PAUSE TestFileTransferUpload/ok,_relative_path
+task-0: === CONT  TestSessionListen
+task-0: === CONT  TestFileTransferServeErrors
 task-0: === RUN   TestSessionListen/ok
-task-0: === RUN   TestFileTransferUpload/error,_file_too_big_upload_denied
 task-0: === PAUSE TestSessionListen/ok
-task-0: === PAUSE TestFileTransferUpload/error,_file_too_big_upload_denied
 task-0: === RUN   TestSessionListen/ok,_ping/pong_->_close
-task-0: === RUN   TestFileTransferUpload/error,_path_is_a_directory
 task-0: === PAUSE TestSessionListen/ok,_ping/pong_->_close
-task-0: === PAUSE TestFileTransferUpload/error,_path_is_a_directory
 task-0: === RUN   TestSessionListen/ok,_handshake
-task-0: === RUN   TestFileTransferUpload/error,_fake_error_from_client
 task-0: === PAUSE TestSessionListen/ok,_handshake
-task-0: === RUN   TestFileTransferStat/ok
 task-0: === RUN   TestSessionListen/error,_protocol_version_not_supported
-task-0: === PAUSE TestFileTransferStat/ok
 task-0: === PAUSE TestSessionListen/error,_protocol_version_not_supported
-task-0: === RUN   TestFileTransferStat/error,_malformed_schema
 task-0: === RUN   TestSessionListen/error,_bad_handshake_schema
-task-0: === PAUSE TestFileTransferStat/error,_malformed_schema
 task-0: === PAUSE TestSessionListen/error,_bad_handshake_schema
-task-0: === RUN   TestFileTransferStat/error,_invalid_parameters
 task-0: === RUN   TestSessionListen/ok,_accepted
-task-0: === PAUSE TestFileTransferStat/error,_invalid_parameters
 task-0: === PAUSE TestSessionListen/ok,_accepted
-task-0: === PAUSE TestFileTransferUpload/error,_fake_error_from_client
-task-0: === RUN   TestFileTransferStat/error,_invalid_parameters#01
-task-0: === RUN   TestFileTransferUpload/error,_unexpected_ACK_message_from_client
 task-0: === RUN   TestSessionListen/error,_malformed_handshake_response
-task-0: === PAUSE TestFileTransferUpload/error,_unexpected_ACK_message_from_client
-task-0: === RUN   TestFileTransferUpload/error,_chunk_missing_offset
-task-0: === PAUSE TestFileTransferStat/error,_invalid_parameters#01
-task-0: === CONT  TestFileTransferDownload
-task-0: === PAUSE TestFileTransferUpload/error,_chunk_missing_offset
-task-0: === RUN   TestFileTransferUpload/error,_offset_jumps_beyond_EOF
-task-0: === PAUSE TestFileTransferUpload/error,_offset_jumps_beyond_EOF
-task-0: === RUN   TestFileTransferUpload/error,_broken_response_writer
-task-0: === PAUSE TestFileTransferUpload/error,_broken_response_writer
-task-0: === RUN   TestFileTransferUpload/error,_parent_directory_does_not_exist
-task-0: === PAUSE TestFileTransferUpload/error,_parent_directory_does_not_exist
 task-0: === PAUSE TestSessionListen/error,_malformed_handshake_response
-task-0: === CONT  TestFileTransferServeErrors
-task-0: === RUN   TestFileTransferDownload/ok
-task-0: === PAUSE TestFileTransferDownload/ok
+task-0: === CONT  TestRouterRace
+task-0: === RUN   TestFileTransferServeErrors/malformed_upload_request
+task-0: === PAUSE TestFileTransferServeErrors/malformed_upload_request
+task-0: === RUN   TestFileTransferServeErrors/invalid_upload_request_parameters
+task-0: === PAUSE TestFileTransferServeErrors/invalid_upload_request_parameters
+task-0: === RUN   TestFileTransferServeErrors/upload_already_in_progress
+task-0: === PAUSE TestFileTransferServeErrors/upload_already_in_progress
 task-0: === RUN   TestSessionListen/error,_invalid_handshake_version
-task-0: === RUN   TestFileTransferDownload/ok,_file_larger_than_window
 task-0: === PAUSE TestSessionListen/error,_invalid_handshake_version
-task-0: === PAUSE TestFileTransferDownload/ok,_file_larger_than_window
+task-0: === RUN   TestFileTransferServeErrors/malformed_download_request
+task-0: === PAUSE TestFileTransferServeErrors/malformed_download_request
 task-0: === RUN   TestSessionListen/error,_control_message_not_understood
-task-0: === RUN   TestFileTransferDownload/error,_bad_ack_data_type
 task-0: === PAUSE TestSessionListen/error,_control_message_not_understood
-task-0: === PAUSE TestFileTransferDownload/error,_bad_ack_data_type
 task-0: === RUN   TestSessionListen/error,_bad_protocol_->_close_error
-task-0: === RUN   TestFileTransferDownload/error,_no_offset_in_ack
 task-0: === PAUSE TestSessionListen/error,_bad_protocol_->_close_error
-task-0: === PAUSE TestFileTransferDownload/error,_no_offset_in_ack
 task-0: === RUN   TestSessionListen/error,_session_timeout
-task-0: === RUN   TestFileTransferDownload/error,_unexpected_ack_message
+task-0: === RUN   TestFileTransferUpload/ok
 task-0: === PAUSE TestSessionListen/error,_session_timeout
-task-0: === PAUSE TestFileTransferDownload/error,_unexpected_ack_message
 task-0: === RUN   TestSessionListen/error,_ping_write_error
-task-0: === RUN   TestFileTransferDownload/error,_client_malformed_error_message
 task-0: === PAUSE TestSessionListen/error,_ping_write_error
-task-0: === PAUSE TestFileTransferDownload/error,_client_malformed_error_message
 task-0: === RUN   TestSessionListen/error,_write_error
+task-0: === PAUSE TestFileTransferUpload/ok
 task-0: === PAUSE TestSessionListen/error,_write_error
-task-0: === RUN   TestFileTransferDownload/error,_client_error_message
-task-0: === CONT  TestFileTransferStat/ok
-task-0: === PAUSE TestFileTransferDownload/error,_client_error_message
-task-0: === RUN   TestFileTransferDownload/error,_file_does_not_exist
-task-0: === RUN   TestFileTransferServeErrors/malformed_upload_request
-task-0: === PAUSE TestFileTransferServeErrors/malformed_upload_request
-task-0: === RUN   TestFileTransferServeErrors/invalid_upload_request_parameters
-task-0: === PAUSE TestFileTransferDownload/error,_file_does_not_exist
-task-0: === PAUSE TestFileTransferServeErrors/invalid_upload_request_parameters
-task-0: === RUN   TestFileTransferDownload/error,_forbidden_to_follow_links
-task-0: === PAUSE TestFileTransferDownload/error,_forbidden_to_follow_links
-task-0: === CONT  TestFileTransferUpload/ok
-task-0: === RUN   TestFileTransferServeErrors/upload_already_in_progress
-task-0: === PAUSE TestFileTransferServeErrors/upload_already_in_progress
-task-0: === RUN   TestFileTransferServeErrors/malformed_download_request
-task-0: === CONT  TestFileTransferStat/error,_invalid_parameters
-task-0: === PAUSE TestFileTransferServeErrors/malformed_download_request
+task-0: === RUN   TestFileTransferUpload/ok,_relative_path
+task-0: === PAUSE TestFileTransferUpload/ok,_relative_path
+task-0: === RUN   TestFileTransferUpload/error,_file_too_big_upload_denied
+task-0: === PAUSE TestFileTransferUpload/error,_file_too_big_upload_denied
+task-0: === RUN   TestFileTransferUpload/error,_path_is_a_directory
+task-0: === PAUSE TestFileTransferUpload/error,_path_is_a_directory
 task-0: === RUN   TestFileTransferServeErrors/invalid_download_request_parameters
 task-0: === PAUSE TestFileTransferServeErrors/invalid_download_request_parameters
 task-0: === RUN   TestFileTransferServeErrors/download_already_in_progress
 task-0: === PAUSE TestFileTransferServeErrors/download_already_in_progress
-task-0: === CONT  TestFileTransferStat/error,_invalid_parameters#01
 task-0: === RUN   TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress
 task-0: === PAUSE TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress
 task-0: === RUN   TestFileTransferServeErrors/generic_error_from_client
@@ -1855,101 +1848,83 @@
 task-0: === RUN   TestFileTransferServeErrors/malformed_error_from_client
 task-0: === PAUSE TestFileTransferServeErrors/malformed_error_from_client
 task-0: === RUN   TestFileTransferServeErrors/message_type_not_implemented
-task-0: === CONT  TestFileTransferUpload/error,_chunk_missing_offset
 task-0: === PAUSE TestFileTransferServeErrors/message_type_not_implemented
-task-0: === CONT  TestFileTransferUpload/error,_unexpected_ACK_message_from_client
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="invalid file chunk message: missing offset property"
-task-0: === CONT  TestFileTransferUpload/error,_fake_error_from_client
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="received unexpected message type 'ack' during file upload"
-task-0: === CONT  TestFileTransferUpload/error,_path_is_a_directory
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="Received error during upload: something unexpected happened"
-task-0: === CONT  TestFileTransferUpload/error,_file_too_big_upload_denied
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="handler aborted"
-task-0: === CONT  TestFileTransferUpload/ok,_relative_path
-task-0: === CONT  TestFileTransferStat/error,_malformed_schema
-task-0: === CONT  TestFileTransferUpload/error,_parent_directory_does_not_exist
-task-0: === CONT  TestFileTransferUpload/error,_broken_response_writer
-task-0: --- PASS: TestFileTransferStat (0.00s)
-task-0:     --- PASS: TestFileTransferStat/ok (0.00s)
-task-0:     --- PASS: TestFileTransferStat/error,_invalid_parameters (0.00s)
-task-0:     --- PASS: TestFileTransferStat/error,_invalid_parameters#01 (0.00s)
-task-0:     --- PASS: TestFileTransferStat/error,_malformed_schema (0.00s)
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="failed to create file: open /tmp/filetransfer-testing3276219895/parent/dir/does/not/exist/for/this/file.0000000600: no such file or directory"
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="failed to respond to client: io: read/write on closed pipe"
-task-0: === CONT  TestFileTransferUpload/error,_offset_jumps_beyond_EOF
+task-0: === CONT  TestFileTransferDownload
+task-0: === RUN   TestFileTransferDownload/ok
+task-0: === PAUSE TestFileTransferDownload/ok
+task-0: === RUN   TestFileTransferDownload/ok,_file_larger_than_window
+task-0: === PAUSE TestFileTransferDownload/ok,_file_larger_than_window
+task-0: === RUN   TestFileTransferDownload/error,_bad_ack_data_type
+task-0: === PAUSE TestFileTransferDownload/error,_bad_ack_data_type
+task-0: === RUN   TestFileTransferDownload/error,_no_offset_in_ack
+task-0: === PAUSE TestFileTransferDownload/error,_no_offset_in_ack
+task-0: === RUN   TestFileTransferDownload/error,_unexpected_ack_message
+task-0: === PAUSE TestFileTransferDownload/error,_unexpected_ack_message
+task-0: === RUN   TestFileTransferDownload/error,_client_malformed_error_message
+task-0: === PAUSE TestFileTransferDownload/error,_client_malformed_error_message
+task-0: === RUN   TestFileTransferDownload/error,_client_error_message
+task-0: === PAUSE TestFileTransferDownload/error,_client_error_message
+task-0: === RUN   TestFileTransferDownload/error,_file_does_not_exist
+task-0: === PAUSE TestFileTransferDownload/error,_file_does_not_exist
+task-0: === RUN   TestFileTransferDownload/error,_forbidden_to_follow_links
+task-0: === PAUSE TestFileTransferDownload/error,_forbidden_to_follow_links
+task-0: === CONT  TestFileTransferStat
+task-0: === RUN   TestFileTransferStat/ok
+task-0: === PAUSE TestFileTransferStat/ok
+task-0: === RUN   TestFileTransferStat/error,_malformed_schema
+task-0: === PAUSE TestFileTransferStat/error,_malformed_schema
+task-0: === RUN   TestFileTransferStat/error,_invalid_parameters
+task-0: === PAUSE TestFileTransferStat/error,_invalid_parameters
+task-0: === RUN   TestFileTransferStat/error,_invalid_parameters#01
+task-0: === PAUSE TestFileTransferStat/error,_invalid_parameters#01
+task-0: === RUN   TestFileTransferUpload/error,_fake_error_from_client
+task-0: === PAUSE TestFileTransferUpload/error,_fake_error_from_client
+task-0: === RUN   TestFileTransferUpload/error,_unexpected_ACK_message_from_client
+task-0: === PAUSE TestFileTransferUpload/error,_unexpected_ACK_message_from_client
+task-0: === RUN   TestFileTransferUpload/error,_chunk_missing_offset
+task-0: === PAUSE TestFileTransferUpload/error,_chunk_missing_offset
+task-0: === RUN   TestFileTransferUpload/error,_offset_jumps_beyond_EOF
+task-0: === PAUSE TestFileTransferUpload/error,_offset_jumps_beyond_EOF
+task-0: === RUN   TestFileTransferUpload/error,_broken_response_writer
+task-0: === PAUSE TestFileTransferUpload/error,_broken_response_writer
+task-0: === RUN   TestFileTransferUpload/error,_parent_directory_does_not_exist
+task-0: === PAUSE TestFileTransferUpload/error,_parent_directory_does_not_exist
 task-0: === CONT  TestSessionListen/ok
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="handler aborted"
-task-0: === CONT  TestSessionListen/error,_invalid_handshake_version
 task-0: === CONT  TestSessionListen/error,_write_error
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="received unexpected chunk offset"
 task-0: === CONT  TestSessionListen/error,_ping_write_error
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="failed to write response to client: this is bad!"
 task-0: === CONT  TestSessionListen/error,_session_timeout
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="failed to write response to client: this is bad!"
 task-0: === CONT  TestSessionListen/error,_bad_protocol_->_close_error
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="session: received error from client: dunno what to do next..."
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="session: received error from client: dunno what to do next..."
 task-0: === CONT  TestSessionListen/error,_control_message_not_understood
-task-0: --- PASS: TestFileTransferUpload (0.01s)
-task-0:     --- PASS: TestFileTransferUpload/error,_chunk_missing_offset (0.00s)
-task-0:     --- PASS: TestFileTransferUpload/error,_unexpected_ACK_message_from_client (0.00s)
-task-0:     --- PASS: TestFileTransferUpload/error,_path_is_a_directory (0.00s)
-task-0:     --- PASS: TestFileTransferUpload/error,_fake_error_from_client (0.00s)
-task-0:     --- PASS: TestFileTransferUpload/ok,_relative_path (0.00s)
-task-0:     --- PASS: TestFileTransferUpload/ok (0.01s)
-task-0:     --- PASS: TestFileTransferUpload/error,_file_too_big_upload_denied (0.00s)
-task-0:     --- PASS: TestFileTransferUpload/error,_parent_directory_does_not_exist (0.00s)
-task-0:     --- PASS: TestFileTransferUpload/error,_broken_response_writer (0.00s)
-task-0:     --- PASS: TestFileTransferUpload/error,_offset_jumps_beyond_EOF (0.00s)
-task-0: === CONT  TestSessionListen/error,_bad_handshake_schema
+task-0: === CONT  TestSessionListen/error,_invalid_handshake_version
 task-0: === CONT  TestSessionListen/error,_malformed_handshake_response
 task-0: === CONT  TestSessionListen/ok,_accepted
-task-0: === CONT  TestSessionListen/ok,_handshake
-task-0: time="2025-01-07T14:26:38-12:00" level=info msg="session: accepting new session with ID: 1234"
+task-0: === CONT  TestSessionListen/error,_bad_handshake_schema
 task-0: === CONT  TestSessionListen/error,_protocol_version_not_supported
+task-0: === CONT  TestSessionListen/ok,_handshake
+task-0: time="2025-01-08T16:33:06+14:00" level=info msg="session: accepting new session with ID: 1234"
 task-0: === CONT  TestSessionListen/ok,_ping/pong_->_close
-task-0: time="2025-01-07T14:26:38-12:00" level=info msg="session: closed 1234"
-task-0: === CONT  TestFileTransferDownload/ok
-task-0: === CONT  TestFileTransferDownload/error,_forbidden_to_follow_links
-task-0: time="2025-01-07T14:26:38-12:00" level=warning msg="file download access denied: forbidden to follow the link"
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="access denied: forbidden to follow the link"
-task-0: === CONT  TestFileTransferDownload/error,_file_does_not_exist
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="failed to open file for reading: open lets say it does not exist: no such file or directory"
-task-0: === CONT  TestFileTransferDownload/error,_client_error_message
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="received error message from client: ENOSPC"
-task-0: === CONT  TestFileTransferDownload/error,_client_malformed_error_message
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="received malformed error message from client: aborting"
-task-0: === CONT  TestFileTransferDownload/error,_unexpected_ack_message
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="received unexpected message type 'file_chunk'; expected 'ack'"
-task-0: === CONT  TestFileTransferDownload/error,_no_offset_in_ack
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="ack message: offset property cannot be blank"
-task-0: === CONT  TestFileTransferDownload/error,_bad_ack_data_type
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="invalid offset data type: require int64"
-task-0: === CONT  TestFileTransferDownload/ok,_file_larger_than_window
+task-0: time="2025-01-08T16:33:06+14:00" level=info msg="session: closed 1234"
 task-0: === CONT  TestFileTransferServeErrors/malformed_upload_request
+task-0: === CONT  TestFileTransferDownload/ok
+task-0: === CONT  TestFileTransferStat/ok
 task-0: === CONT  TestFileTransferServeErrors/message_type_not_implemented
 task-0: === CONT  TestFileTransferServeErrors/malformed_error_from_client
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="Error decoding error message from client: msgpack: unexpected code=73 decoding map length"
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="Error decoding error message from client: msgpack: unexpected code=73 decoding map length"
 task-0: === CONT  TestFileTransferServeErrors/generic_error_from_client
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="Received error from client: generic error"
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="Received error from client: generic error"
 task-0: === CONT  TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress
 task-0: === CONT  TestFileTransferServeErrors/download_already_in_progress
-task-0: --- PASS: TestFileTransferDownload (0.01s)
-task-0:     --- PASS: TestFileTransferDownload/ok (0.00s)
-task-0:     --- PASS: TestFileTransferDownload/error,_forbidden_to_follow_links (0.00s)
-task-0:     --- PASS: TestFileTransferDownload/error,_file_does_not_exist (0.00s)
-task-0:     --- PASS: TestFileTransferDownload/error,_client_error_message (0.00s)
-task-0:     --- PASS: TestFileTransferDownload/error,_client_malformed_error_message (0.00s)
-task-0:     --- PASS: TestFileTransferDownload/error,_unexpected_ack_message (0.00s)
-task-0:     --- PASS: TestFileTransferDownload/error,_no_offset_in_ack (0.00s)
-task-0:     --- PASS: TestFileTransferDownload/error,_bad_ack_data_type (0.00s)
-task-0:     --- PASS: TestFileTransferDownload/ok,_file_larger_than_window (0.01s)
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="another file transfer is in progress"
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="another file transfer is in progress"
 task-0: === CONT  TestFileTransferServeErrors/invalid_download_request_parameters
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="invalid request parameters: path: cannot be blank."
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="invalid request parameters: path: cannot be blank."
 task-0: === CONT  TestFileTransferServeErrors/malformed_download_request
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="malformed request parameters: msgpack: unexpected code=2f decoding map length"
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="malformed request parameters: msgpack: unexpected code=2f decoding map length"
 task-0: === CONT  TestFileTransferServeErrors/upload_already_in_progress
 task-0: === CONT  TestFileTransferServeErrors/invalid_upload_request_parameters
-task-0: --- PASS: TestFileTransferServeErrors (0.01s)
+task-0: === CONT  TestFileTransferUpload/ok
+task-0: --- PASS: TestFileTransferServeErrors (0.00s)
 task-0:     --- PASS: TestFileTransferServeErrors/malformed_upload_request (0.00s)
 task-0:     --- PASS: TestFileTransferServeErrors/message_type_not_implemented (0.00s)
 task-0:     --- PASS: TestFileTransferServeErrors/malformed_error_from_client (0.00s)
@@ -1960,39 +1935,105 @@
 task-0:     --- PASS: TestFileTransferServeErrors/malformed_download_request (0.00s)
 task-0:     --- PASS: TestFileTransferServeErrors/upload_already_in_progress (0.00s)
 task-0:     --- PASS: TestFileTransferServeErrors/invalid_upload_request_parameters (0.00s)
-task-0: time="2025-01-07T14:26:38-12:00" level=error msg="failed to ping client: this is bad!"
-task-0: --- PASS: TestSessionListen (0.01s)
+task-0: === CONT  TestFileTransferDownload/error,_forbidden_to_follow_links
+task-0: time="2025-01-08T16:33:06+14:00" level=warning msg="file download access denied: forbidden to follow the link"
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="access denied: forbidden to follow the link"
+task-0: === CONT  TestFileTransferDownload/error,_file_does_not_exist
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="failed to open file for reading: open lets say it does not exist: no such file or directory"
+task-0: === CONT  TestFileTransferDownload/error,_client_error_message
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="received error message from client: ENOSPC"
+task-0: === CONT  TestFileTransferDownload/error,_client_malformed_error_message
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="received malformed error message from client: aborting"
+task-0: === CONT  TestFileTransferDownload/error,_unexpected_ack_message
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="received unexpected message type 'file_chunk'; expected 'ack'"
+task-0: === CONT  TestFileTransferDownload/error,_no_offset_in_ack
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="ack message: offset property cannot be blank"
+task-0: === CONT  TestFileTransferDownload/error,_bad_ack_data_type
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="invalid offset data type: require int64"
+task-0: === CONT  TestFileTransferDownload/ok,_file_larger_than_window
+task-0: === CONT  TestFileTransferUpload/error,_offset_jumps_beyond_EOF
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="received unexpected chunk offset"
+task-0: === CONT  TestFileTransferStat/error,_invalid_parameters#01
+task-0: --- PASS: TestFileTransferDownload (0.00s)
+task-0:     --- PASS: TestFileTransferDownload/ok (0.00s)
+task-0:     --- PASS: TestFileTransferDownload/error,_forbidden_to_follow_links (0.00s)
+task-0:     --- PASS: TestFileTransferDownload/error,_file_does_not_exist (0.00s)
+task-0:     --- PASS: TestFileTransferDownload/error,_client_error_message (0.00s)
+task-0:     --- PASS: TestFileTransferDownload/error,_client_malformed_error_message (0.00s)
+task-0:     --- PASS: TestFileTransferDownload/error,_unexpected_ack_message (0.00s)
+task-0:     --- PASS: TestFileTransferDownload/error,_no_offset_in_ack (0.00s)
+task-0:     --- PASS: TestFileTransferDownload/error,_bad_ack_data_type (0.00s)
+task-0:     --- PASS: TestFileTransferDownload/ok,_file_larger_than_window (0.00s)
+task-0: === CONT  TestFileTransferStat/error,_invalid_parameters
+task-0: === CONT  TestFileTransferStat/error,_malformed_schema
+task-0: === CONT  TestFileTransferUpload/error,_parent_directory_does_not_exist
+task-0: --- PASS: TestFileTransferStat (0.00s)
+task-0:     --- PASS: TestFileTransferStat/ok (0.00s)
+task-0:     --- PASS: TestFileTransferStat/error,_invalid_parameters#01 (0.00s)
+task-0:     --- PASS: TestFileTransferStat/error,_invalid_parameters (0.00s)
+task-0:     --- PASS: TestFileTransferStat/error,_malformed_schema (0.00s)
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="failed to create file: open /tmp/filetransfer-testing3363467887/parent/dir/does/not/exist/for/this/file.0000000300: no such file or directory"
+task-0: === CONT  TestFileTransferUpload/error,_broken_response_writer
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="failed to respond to client: io: read/write on closed pipe"
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="handler aborted"
+task-0: === CONT  TestFileTransferUpload/error,_path_is_a_directory
+task-0: === CONT  TestFileTransferUpload/error,_chunk_missing_offset
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="invalid file chunk message: missing offset property"
+task-0: === CONT  TestFileTransferUpload/error,_unexpected_ACK_message_from_client
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="received unexpected message type 'ack' during file upload"
+task-0: === CONT  TestFileTransferUpload/error,_fake_error_from_client
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="Received error during upload: something unexpected happened"
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="handler aborted"
+task-0: === CONT  TestFileTransferUpload/ok,_relative_path
+task-0: === CONT  TestFileTransferUpload/error,_file_too_big_upload_denied
+task-0: --- PASS: TestFileTransferUpload (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/ok (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/error,_offset_jumps_beyond_EOF (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/error,_parent_directory_does_not_exist (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/error,_broken_response_writer (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/error,_path_is_a_directory (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/error,_chunk_missing_offset (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/error,_unexpected_ACK_message_from_client (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/error,_fake_error_from_client (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/ok,_relative_path (0.00s)
+task-0:     --- PASS: TestFileTransferUpload/error,_file_too_big_upload_denied (0.00s)
+task-0: time="2025-01-08T16:33:06+14:00" level=error msg="failed to ping client: this is bad!"
+task-0: --- PASS: TestSessionListen (0.00s)
 task-0:     --- PASS: TestSessionListen/ok (0.00s)
-task-0:     --- PASS: TestSessionListen/error,_invalid_handshake_version (0.00s)
 task-0:     --- PASS: TestSessionListen/error,_write_error (0.00s)
 task-0:     --- PASS: TestSessionListen/error,_bad_protocol_->_close_error (0.00s)
 task-0:     --- PASS: TestSessionListen/error,_control_message_not_understood (0.00s)
-task-0:     --- PASS: TestSessionListen/error,_bad_handshake_schema (0.00s)
+task-0:     --- PASS: TestSessionListen/error,_invalid_handshake_version (0.00s)
 task-0:     --- PASS: TestSessionListen/error,_malformed_handshake_response (0.00s)
 task-0:     --- PASS: TestSessionListen/ok,_accepted (0.00s)
-task-0:     --- PASS: TestSessionListen/ok,_handshake (0.00s)
+task-0:     --- PASS: TestSessionListen/error,_bad_handshake_schema (0.00s)
 task-0:     --- PASS: TestSessionListen/error,_protocol_version_not_supported (0.00s)
+task-0:     --- PASS: TestSessionListen/ok,_handshake (0.00s)
 task-0:     --- PASS: TestSessionListen/ok,_ping/pong_->_close (0.00s)
 task-0:     --- PASS: TestSessionListen/error,_ping_write_error (0.20s)
 task-0:     --- PASS: TestSessionListen/error,_session_timeout (0.25s)
-task-0: time="2025-01-07T14:26:39-12:00" level=error msg="[panic] panicHandler" trace="\n<autogenerated>:1.(*panicHandler).ServeProtoMsg\n/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/session.go:369.(*Session).ListenAndServe\n/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/router.go:56.(*router).startSession\n/usr/lib/go-1.23/src/runtime/asm_arm.s:885.goexit"
+task-0: time="2025-01-08T16:33:07+14:00" level=error msg="[panic] panicHandler" trace="\n<autogenerated>:1.(*panicHandler).ServeProtoMsg\n/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/session.go:369.(*Session).ListenAndServe\n/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/router.go:56.(*router).startSession\n/usr/lib/go-1.23/src/runtime/asm_arm.s:885.goexit"
 task-0: --- PASS: TestRouterRace (1.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/session	56.419s
+task-0: ok  	github.com/mendersoftware/mender-connect/session	56.305s
 task-0: === RUN   TestNewMenderShell
 task-0: --- PASS: TestNewMenderShell (0.00s)
 task-0: === RUN   TestNewMenderShellReadStdIn
-task-0: --- PASS: TestNewMenderShellReadStdIn (8.01s)
+task-0:     exec_test.go:142: 
+task-0:         	Error Trace:	/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/shell/exec_test.go:142
+task-0:         	Error:      	[]string{"\x1b[?2004h", "sh-5.2$ echo _ok_", "\x1b[?2004l\r_ok_", "\x1b[?2004hsh-5.2$ "} does not contain "_ok_"
+task-0:         	Test:       	TestNewMenderShellReadStdIn
+task-0: --- FAIL: TestNewMenderShellReadStdIn (8.01s)
 task-0: === RUN   TestPipeStdout
 task-0:     exec_test.go:156: starting mock httpd with websockets
-task-0: time="2025-01-07T14:26:07-12:00" level=error msg="error reading stdout: EOF"
-task-0: --- PASS: TestPipeStdout (8.01s)
+task-0: time="2025-01-08T16:32:40+14:00" level=error msg="error reading stdout: EOF"
+task-0: --- PASS: TestPipeStdout (8.00s)
 task-0: === RUN   TestMenderShellExecShell
-task-0:     shell_test.go:82: started shell, pid: 27483
-task-0:     shell_test.go:85: FindProcess p: &{27483 1 {{} {} 1} {{0 0} 0 0 {{} 0} {{} 0}} 13} err: <nil>
-task-0: --- PASS: TestMenderShellExecShell (4.02s)
-task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/shell	20.076s
+task-0:     shell_test.go:82: started shell, pid: 10540
+task-0:     shell_test.go:85: FindProcess p: &{10540 1 {{} {} 1} {{0 0} 0 0 {{} 0} {{} 0}} 13} err: <nil>
+task-0: --- PASS: TestMenderShellExecShell (4.01s)
+task-0: FAIL
+task-0: FAIL	github.com/mendersoftware/mender-connect/shell	20.035s
 task-0: === RUN   TestFileSize
 task-0: --- PASS: TestFileSize (0.00s)
 task-0: === RUN   TestFileExists
@@ -2008,83 +2049,52 @@
 task-0: === RUN   TestIsInChroot
 task-0: --- PASS: TestIsInChroot (0.00s)
 task-0: === RUN   TestNum64
-task-0: === RUN   TestNum64/uint32
 task-0: === RUN   TestNum64/uintptr
+task-0: === RUN   TestNum64/int64
+task-0: === RUN   TestNum64/uint
+task-0: === RUN   TestNum64/uint8
+task-0: === RUN   TestNum64/uint32
+task-0: === RUN   TestNum64/uint64
+task-0: === RUN   TestNum64/int
 task-0: === RUN   TestNum64/int8
 task-0: === RUN   TestNum64/int16
 task-0: === RUN   TestNum64/int32
-task-0: === RUN   TestNum64/int64
-task-0: === RUN   TestNum64/uint8
 task-0: === RUN   TestNum64/uint16
-task-0: === RUN   TestNum64/int
-task-0: === RUN   TestNum64/uint
-task-0: === RUN   TestNum64/uint64
 task-0: --- PASS: TestNum64 (0.00s)
-task-0:     --- PASS: TestNum64/uint32 (0.00s)
 task-0:     --- PASS: TestNum64/uintptr (0.00s)
+task-0:     --- PASS: TestNum64/int64 (0.00s)
+task-0:     --- PASS: TestNum64/uint (0.00s)
+task-0:     --- PASS: TestNum64/uint8 (0.00s)
+task-0:     --- PASS: TestNum64/uint32 (0.00s)
+task-0:     --- PASS: TestNum64/uint64 (0.00s)
+task-0:     --- PASS: TestNum64/int (0.00s)
 task-0:     --- PASS: TestNum64/int8 (0.00s)
 task-0:     --- PASS: TestNum64/int16 (0.00s)
 task-0:     --- PASS: TestNum64/int32 (0.00s)
-task-0:     --- PASS: TestNum64/int64 (0.00s)
-task-0:     --- PASS: TestNum64/uint8 (0.00s)
 task-0:     --- PASS: TestNum64/uint16 (0.00s)
-task-0:     --- PASS: TestNum64/int (0.00s)
-task-0:     --- PASS: TestNum64/uint (0.00s)
-task-0:     --- PASS: TestNum64/uint64 (0.00s)
 task-0: PASS
-task-0: ok  	github.com/mendersoftware/mender-connect/utils	0.034s
+task-0: ok  	github.com/mendersoftware/mender-connect/utils	0.014s
+task-0: FAIL
+dh_auto_test: error: cd _build && go test -vet=off -v -p 4 github.com/mendersoftware/mender-connect github.com/mendersoftware/mender-connect/app github.com/mendersoftware/mender-connect/cli github.com/mendersoftware/mender-connect/client/dbus github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/dbus/test github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/connection github.com/mendersoftware/mender-connect/connectionmanager github.com/mendersoftware/mender-connect/limits/filetransfer github.com/mendersoftware/mender-connect/procps github.com/mendersoftware/mender-connect/session github.com/mendersoftware/mender-connect/session/mocks github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/utils returned exit code 1
+task-0: Exited with status 6400
 task-0: Shutting down
 DBus daemon: Shutdown
+make[1]: *** [debian/rules:18: override_dh_auto_test] Error 255
 make[1]: Leaving directory '/build/reproducible-path/mender-connect-2.3.0+ds1'
-   create-stamp debian/debhelper-build-stamp
-   dh_testroot -O--builddirectory=_build -O--buildsystem=golang
-   dh_prep -O--builddirectory=_build -O--buildsystem=golang
-   debian/rules override_dh_auto_install
-make[1]: Entering directory '/build/reproducible-path/mender-connect-2.3.0+ds1'
-dh_auto_install -- --no-source
-	cd _build && mkdir -p /build/reproducible-path/mender-connect-2.3.0\+ds1/debian/mender-connect/usr
-	cd _build && cp -r bin /build/reproducible-path/mender-connect-2.3.0\+ds1/debian/mender-connect/usr
-# Install example config provided by upstream
-/usr/bin/make DESTDIR=debian/mender-connect install-conf
-make[2]: Entering directory '/build/reproducible-path/mender-connect-2.3.0+ds1'
-make[2]: Leaving directory '/build/reproducible-path/mender-connect-2.3.0+ds1'
-make[1]: Leaving directory '/build/reproducible-path/mender-connect-2.3.0+ds1'
-   dh_installdocs -O--builddirectory=_build -O--buildsystem=golang
-   dh_installchangelogs -O--builddirectory=_build -O--buildsystem=golang
-   dh_installinit -O--builddirectory=_build -O--buildsystem=golang
-   dh_installsystemd -O--builddirectory=_build -O--buildsystem=golang
-   dh_installsystemduser -O--builddirectory=_build -O--buildsystem=golang
-   dh_perl -O--builddirectory=_build -O--buildsystem=golang
-   dh_link -O--builddirectory=_build -O--buildsystem=golang
-   dh_strip_nondeterminism -O--builddirectory=_build -O--buildsystem=golang
-   dh_compress -O--builddirectory=_build -O--buildsystem=golang
-   dh_fixperms -O--builddirectory=_build -O--buildsystem=golang
-   dh_missing -O--builddirectory=_build -O--buildsystem=golang
-   dh_strip -a -O--builddirectory=_build -O--buildsystem=golang
-   dh_makeshlibs -a -O--builddirectory=_build -O--buildsystem=golang
-   dh_shlibdeps -a -O--builddirectory=_build -O--buildsystem=golang
-   dh_installdeb -O--builddirectory=_build -O--buildsystem=golang
-   dh_golang -O--builddirectory=_build -O--buildsystem=golang
-   dh_gencontrol -O--builddirectory=_build -O--buildsystem=golang
-dpkg-gencontrol: warning: package mender-connect: substitution variable ${misc:Static-Built-Using} unused, but is defined
-dpkg-gencontrol: warning: package mender-connect: substitution variable ${misc:Static-Built-Using} unused, but is defined
-   dh_md5sums -O--builddirectory=_build -O--buildsystem=golang
-   dh_builddeb -O--builddirectory=_build -O--buildsystem=golang
-dpkg-deb: building package 'mender-connect-dbgsym' in '../mender-connect-dbgsym_2.3.0+ds1-1_armhf.deb'.
-dpkg-deb: building package 'mender-connect' in '../mender-connect_2.3.0+ds1-1_armhf.deb'.
- dpkg-genbuildinfo --build=binary -O../mender-connect_2.3.0+ds1-1_armhf.buildinfo
- dpkg-genchanges --build=binary -O../mender-connect_2.3.0+ds1-1_armhf.changes
-dpkg-genchanges: info: binary-only upload (no source code included)
- dpkg-source --after-build .
-dpkg-buildpackage: info: binary-only upload (no source included)
-dpkg-genchanges: info: including full source code in upload
+make: *** [debian/rules:6: binary] Error 2
+dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
 I: copying local configuration
+E: Failed autobuilding of package
+I: user script /srv/workspace/pbuilder/3501/tmp/hooks/C01_cleanup starting
+debug output: disk usage on i-capture-the-hostname at Wed Jan  8 02:33:17 UTC 2025
+Filesystem      Size  Used Avail Use% Mounted on
+tmpfs           3.4G     0  3.4G   0% /dev/shm
+
+I: user script /srv/workspace/pbuilder/3501/tmp/hooks/C01_cleanup finished
 I: unmounting dev/ptmx filesystem
 I: unmounting dev/pts filesystem
 I: unmounting dev/shm filesystem
 I: unmounting proc filesystem
 I: unmounting sys filesystem
 I: cleaning the build env 
-I: removing directory /srv/workspace/pbuilder/20146 and its subdirectories
-I: Current time: Tue Jan  7 14:27:49 -12 2025
-I: pbuilder-time-stamp: 1736303269
+I: removing directory /srv/workspace/pbuilder/3501 and its subdirectories