2026-10-22T08:22:36.657263445Z Current runner version: 'v0.6.0' 2026-10-22T08:22:36.665912797Z ##[group]GITHUB_TOKEN Permissions 2026-10-22T08:22:36.665959878Z Contents: read 2026-10-22T08:22:36.665975077Z Metadata: read 2026-10-22T08:22:36.665979722Z ##[endgroup] 2026-10-22T08:22:36.665985029Z Secret source: Actions 2026-10-22T08:22:36.665991452Z Cache mode: write 2026-10-22T08:22:36.665994801Z Prepare workflow directory 2026-10-22T08:22:36.666717179Z Prepare all required actions 2026-10-22T08:22:36.666834135Z Getting action download info 2026-10-22T08:22:36.673255495Z Download action repository 'actions/checkout@v6' (SHA:d23441a48e516b6c34aea4fa41551a30e30af803) 2026-10-22T08:22:36.717854809Z Download action repository 'actions/setup-go@v5' (SHA:40f1582b2485089dde7abd97c1529aa768e1baff) 2026-10-22T08:22:36.825939896Z Complete job name: Test 2026-10-22T08:22:36.828071237Z ##[group]Run actions/checkout@v6 2026-10-22T08:22:36.828089878Z with: 2026-10-22T08:22:36.828094056Z repository: bnema/gordon 2026-10-22T08:22:36.828097031Z token: *** 2026-10-22T08:22:36.828109552Z ssh-strict: true 2026-10-22T08:22:36.828111847Z ssh-user: git 2026-10-22T08:22:36.828113909Z persist-credentials: true 2026-10-22T08:22:36.828115991Z clean: true 2026-10-22T08:22:36.828118176Z sparse-checkout-cone-mode: true 2026-10-22T08:22:36.828124254Z fetch-depth: 1 2026-10-22T08:22:36.828126697Z fetch-tags: false 2026-10-22T08:22:36.828129226Z show-progress: true 2026-10-22T08:22:36.82813112Z lfs: false 2026-10-22T08:22:36.828132956Z submodules: false 2026-10-22T08:22:36.828134842Z set-safe-directory: true 2026-10-22T08:22:36.828136835Z allow-unsafe-pr-checkout: false 2026-10-22T08:22:36.828138613Z ##[endgroup] 2026-10-22T08:22:36.96552579Z Syncing repository: bnema/gordon 2026-10-22T08:22:36.965554154Z ##[group]Getting Git version info 2026-10-22T08:22:36.965569018Z Working directory is '/home/runner/work/gordon/gordon' 2026-10-22T08:22:36.967644379Z [command]/usr/bin/git version 2026-10-22T08:22:36.975463376Z git version 2.53.0 2026-10-22T08:22:36.977843954Z ##[endgroup] 2026-10-22T08:22:36.977880553Z Temporarily overriding HOME='/home/runner/work/_temp/25fdccd5-3a16-435c-92f5-ec443334e57f' before making global git config changes 2026-10-22T08:22:36.977892703Z Adding repository directory to the temporary git global config as a safe directory 2026-10-22T08:22:36.977905837Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/gordon/gordon 2026-10-22T08:22:36.983378798Z Deleting the contents of '/home/runner/work/gordon/gordon' 2026-10-22T08:22:36.983413266Z ##[group]Determining repository object format 2026-10-22T08:22:36.983417672Z ##[endgroup] 2026-10-22T08:22:36.983421414Z ##[group]Initializing the repository 2026-10-22T08:22:36.983426869Z [command]/usr/bin/git init /home/runner/work/gordon/gordon 2026-10-22T08:22:36.990203432Z hint: Using 'master' as the name for the initial branch. This default branch name 2026-10-22T08:22:36.990238966Z hint: will change to "main" in Git 3.0. To configure the initial branch name 2026-10-22T08:22:36.990245846Z hint: to use in all of your new repositories, which will suppress this warning, 2026-10-22T08:22:36.990252086Z hint: call: 2026-10-22T08:22:36.990259547Z hint: 2026-10-22T08:22:36.990313567Z hint: git config --global init.defaultBranch 2026-10-22T08:22:36.99033366Z hint: 2026-10-22T08:22:36.990346155Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 2026-10-22T08:22:36.990357077Z hint: 'development'. The just-created branch can be renamed via this command: 2026-10-22T08:22:36.990402791Z hint: 2026-10-22T08:22:36.990422212Z hint: git branch -m 2026-10-22T08:22:36.990429227Z hint: 2026-10-22T08:22:36.990434585Z hint: Disable this message with "git config set advice.defaultBranchName false" 2026-10-22T08:22:36.990439977Z Initialized empty Git repository in /home/runner/work/gordon/gordon/.git/ 2026-10-22T08:22:36.990450427Z [command]/usr/bin/git remote add origin http://ermite:7341/bnema/gordon 2026-10-22T08:22:36.993500912Z ##[endgroup] 2026-10-22T08:22:36.993524816Z ##[group]Disabling automatic garbage collection 2026-10-22T08:22:36.993539908Z [command]/usr/bin/git config --local gc.auto 0 2026-10-22T08:22:36.996389137Z ##[endgroup] 2026-10-22T08:22:36.996414565Z ##[group]Setting up auth 2026-10-22T08:22:36.996438001Z Removing SSH command configuration 2026-10-22T08:22:36.99645466Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand 2026-10-22T08:22:36.998995607Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" 2026-10-22T08:22:37.033034944Z Removing HTTP extra header 2026-10-22T08:22:37.033079113Z [command]/usr/bin/git config --local --name-only --get-regexp http\.http\:\/\/ermite\:7341\/\.extraheader 2026-10-22T08:22:37.035480525Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.http\:\/\/ermite\:7341\/\.extraheader' && git config --local --unset-all 'http.http://ermite:7341/.extraheader' || :" 2026-10-22T08:22:37.056277206Z Removing includeIf entries pointing to credentials config files 2026-10-22T08:22:37.05631018Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: 2026-10-22T08:22:37.058855233Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url 2026-10-22T08:22:37.079810763Z [command]/usr/bin/git config --file /home/runner/work/_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config http.http://ermite:7341/.extraheader AUTHORIZATION: basic *** 2026-10-22T08:22:37.081977498Z [command]/usr/bin/git config --local includeIf.gitdir:/home/runner/work/gordon/gordon/.git.path /home/runner/work/_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config 2026-10-22T08:22:37.084362844Z [command]/usr/bin/git config --local includeIf.gitdir:/home/runner/work/gordon/gordon/.git/worktrees/*.path /home/runner/work/_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config 2026-10-22T08:22:37.086698429Z [command]/usr/bin/git config --local includeIf.gitdir:/github/workspace/.git.path /github/runner_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config 2026-10-22T08:22:37.088915913Z [command]/usr/bin/git config --local includeIf.gitdir:/github/workspace/.git/worktrees/*.path /github/runner_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config 2026-10-22T08:22:37.091672368Z ##[endgroup] 2026-10-22T08:22:37.091700569Z ##[group]Fetching the repository 2026-10-22T08:22:37.091723395Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +32074ce8f32652bcf1c033f20eda79fab059088e:refs/remotes/pull/1/merge 2026-10-22T08:22:37.419525193Z From http://ermite:7341/bnema/gordon 2026-10-22T08:22:37.41956676Z * [new ref] 32074ce8f32652bcf1c033f20eda79fab059088e -> pull/1/merge 2026-10-22T08:22:37.422058484Z ##[endgroup] 2026-10-22T08:22:37.422099285Z ##[group]Determining the checkout info 2026-10-22T08:22:37.422105689Z ##[endgroup] 2026-10-22T08:22:37.42213107Z [command]/usr/bin/git sparse-checkout disable 2026-10-22T08:22:37.427167108Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig 2026-10-22T08:22:37.427204064Z ##[group]Checking out the ref 2026-10-22T08:22:37.429767907Z [command]/usr/bin/git checkout --progress --force refs/remotes/pull/1/merge 2026-10-22T08:22:37.50481564Z Note: switching to 'refs/remotes/pull/1/merge'. 2026-10-22T08:22:37.504857767Z 2026-10-22T08:22:37.504870624Z You are in 'detached HEAD' state. You can look around, make experimental 2026-10-22T08:22:37.504890385Z changes and commit them, and you can discard any commits you make in this 2026-10-22T08:22:37.50490913Z state without impacting any branches by switching back to a branch. 2026-10-22T08:22:37.504939402Z 2026-10-22T08:22:37.504956586Z If you want to create a new branch to retain commits you create, you may 2026-10-22T08:22:37.504976513Z do so (now or later) by using -c with the switch command. Example: 2026-10-22T08:22:37.504990915Z 2026-10-22T08:22:37.505003181Z git switch -c 2026-10-22T08:22:37.505023773Z 2026-10-22T08:22:37.505040735Z Or undo this operation with: 2026-10-22T08:22:37.505056342Z 2026-10-22T08:22:37.505082169Z git switch - 2026-10-22T08:22:37.505095476Z 2026-10-22T08:22:37.505102725Z Turn off this advice by setting config variable advice.detachedHead to false 2026-10-22T08:22:37.505109592Z 2026-10-22T08:22:37.5051283Z HEAD is now at 32074ce Merge 8345e76c4726a85985a2d128c0ce04eb3157c313 into c9e9163d8e10ed27f6d17474eb94538be54e665b 2026-10-22T08:22:37.50514009Z ##[endgroup] 2026-10-22T08:22:37.507469772Z [command]/usr/bin/git log -1 --format=%H 2026-10-22T08:22:37.510417562Z 32074ce8f32652bcf1c033f20eda79fab059088e 2026-10-22T08:22:37.519230266Z ##[group]Run actions/setup-go@v5 2026-10-22T08:22:37.519254746Z with: 2026-10-22T08:22:37.519262258Z go-version: 1.27.x 2026-10-22T08:22:37.519319566Z cache: true 2026-10-22T08:22:37.519335832Z check-latest: false 2026-10-22T08:22:37.519341386Z ##[endgroup] 2026-10-22T08:22:37.664338344Z Setup go version spec 1.27.x 2026-10-22T08:22:37.669103102Z (node:402) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. 2026-10-22T08:22:37.669137933Z (Use `node --trace-deprecation ...` to show where the warning was created) 2026-10-22T08:22:37.669147493Z Found in cache @ /opt/hostedtoolcache/go/1.27.3/x64 2026-10-22T08:22:37.669150364Z Added go to the path 2026-10-22T08:22:37.669152605Z Successfully set up Go version 1.27.x 2026-10-22T08:22:37.700075136Z [command]/opt/hostedtoolcache/go/1.27.3/x64/bin/go env GOMODCACHE 2026-10-22T08:22:37.703588984Z [command]/opt/hostedtoolcache/go/1.27.3/x64/bin/go env GOCACHE 2026-10-22T08:22:37.706904609Z /home/runner/go/pkg/mod 2026-10-22T08:22:37.710144652Z /home/runner/.cache/go-build 2026-10-22T08:22:47.654633022Z Cache Size: ~275 MB (288821446 B) 2026-10-22T08:22:47.659185383Z [command]/usr/bin/tar -xf /home/runner/work/_temp/eb119813-cec3-4c5a-9588-b5550c82796e/cache.tgz -P -C /home/runner/work/gordon/gordon -z 2026-10-22T08:22:51.323469783Z Cache restored successfully 2026-10-22T08:22:51.354025749Z Cache restored from key: setup-go-Linux-x64-undefined-go-1.27.3-437aff1a951869a25a3f14777df461869b8e34e0c831a9cc78161d339cef3be7 2026-10-22T08:22:51.354242982Z go version go1.27.3 linux/amd64 2026-10-22T08:22:51.354259209Z 2026-10-22T08:22:51.354264272Z ##[group]go env 2026-10-22T08:22:51.364713592Z AR='ar' 2026-10-22T08:22:51.36475634Z CC='gcc' 2026-10-22T08:22:51.364781639Z CGO_CFLAGS='-O2 -g' 2026-10-22T08:22:51.364800649Z CGO_CPPFLAGS='' 2026-10-22T08:22:51.364809964Z CGO_CXXFLAGS='-O2 -g' 2026-10-22T08:22:51.364819392Z CGO_ENABLED='1' 2026-10-22T08:22:51.364826711Z CGO_FFLAGS='-O2 -g' 2026-10-22T08:22:51.364847695Z CGO_LDFLAGS='-O2 -g' 2026-10-22T08:22:51.364869898Z CXX='g++' 2026-10-22T08:22:51.36488466Z GCCGO='gccgo' 2026-10-22T08:22:51.364903386Z GO111MODULE='' 2026-10-22T08:22:51.364912066Z GOAMD64='v1' 2026-10-22T08:22:51.364925981Z GOARCH='amd64' 2026-10-22T08:22:51.364938145Z GOAUTH='netrc' 2026-10-22T08:22:51.364954709Z GOBIN='/home/runner/go/bin' 2026-10-22T08:22:51.364970336Z GOCACHE='/home/runner/.cache/go-build' 2026-10-22T08:22:51.364982078Z GOCACHEPROG='' 2026-10-22T08:22:51.364997513Z GODEBUG='' 2026-10-22T08:22:51.365018104Z GOENV='/home/runner/.config/go/env' 2026-10-22T08:22:51.365035572Z GOEXE='' 2026-10-22T08:22:51.365046759Z GOEXPERIMENT='' 2026-10-22T08:22:51.365064365Z GOFIPS140='off' 2026-10-22T08:22:51.36507219Z GOFLAGS='' 2026-10-22T08:22:51.365090813Z GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build2030328743=/tmp/go-build -gno-record-gcc-switches' 2026-10-22T08:22:51.36511196Z GOHOSTARCH='amd64' 2026-10-22T08:22:51.365121147Z GOHOSTOS='linux' 2026-10-22T08:22:51.365134127Z GOINSECURE='' 2026-10-22T08:22:51.365144289Z GOMOD='/home/runner/work/gordon/gordon/go.mod' 2026-10-22T08:22:51.365159277Z GOMODCACHE='/home/runner/go/pkg/mod' 2026-10-22T08:22:51.365169665Z GONOPROXY='' 2026-10-22T08:22:51.365183986Z GONOSUMDB='' 2026-10-22T08:22:51.365197544Z GOOS='linux' 2026-10-22T08:22:51.36521195Z GOPACKAGESDRIVER='' 2026-10-22T08:22:51.365231052Z GOPATH='/home/runner/go' 2026-10-22T08:22:51.365247575Z GOPRIVATE='' 2026-10-22T08:22:51.365262161Z GOPROXY='https://proxy.golang.org,direct' 2026-10-22T08:22:51.365276037Z GOROOT='/opt/hostedtoolcache/go/1.27.3/x64' 2026-10-22T08:22:51.365291926Z GOSUMDB='sum.golang.org' 2026-10-22T08:22:51.365304369Z GOTELEMETRY='local' 2026-10-22T08:22:51.365319064Z GOTELEMETRYDIR='/home/runner/.config/go/telemetry' 2026-10-22T08:22:51.365330561Z GOTMPDIR='' 2026-10-22T08:22:51.365348232Z GOTOOLCHAIN='auto' 2026-10-22T08:22:51.365366272Z GOTOOLDIR='/opt/hostedtoolcache/go/1.27.3/x64/pkg/tool/linux_amd64' 2026-10-22T08:22:51.365381685Z GOVCS='' 2026-10-22T08:22:51.365397612Z GOVERSION='go1.27.3' 2026-10-22T08:22:51.365409258Z GOWORK='' 2026-10-22T08:22:51.365426574Z PKG_CONFIG='pkg-config' 2026-10-22T08:22:51.365505509Z 2026-10-22T08:22:51.365522493Z ##[endgroup] 2026-10-22T08:22:51.373293888Z ##[group]Run go test -race -v ./... 2026-10-22T08:22:51.373311033Z go test -race -v ./... 2026-10-22T08:22:51.37335844Z shell: /usr/bin/bash -e {0} 2026-10-22T08:22:51.373367214Z ##[endgroup] 2026-10-22T08:23:37.557607341Z ? github.com/bnema/gordon [no test files] 2026-10-22T08:23:41.100844984Z === RUN TestAppErrorEnvelopeKeys 2026-10-22T08:23:41.100891403Z --- PASS: TestAppErrorEnvelopeKeys (0.00s) 2026-10-22T08:23:41.100902491Z === RUN TestAppApplyResponseKeys 2026-10-22T08:23:41.100911055Z --- PASS: TestAppApplyResponseKeys (0.00s) 2026-10-22T08:23:41.100918751Z === RUN TestAppDeployResponseKeys 2026-10-22T08:23:41.100931725Z --- PASS: TestAppDeployResponseKeys (0.00s) 2026-10-22T08:23:41.100941295Z === RUN TestAppShowResponseKeys 2026-10-22T08:23:41.100958478Z --- PASS: TestAppShowResponseKeys (0.00s) 2026-10-22T08:23:41.100977895Z === RUN TestAppResponsesCarryNoSecretValues 2026-10-22T08:23:41.100991156Z --- PASS: TestAppResponsesCarryNoSecretValues (0.00s) 2026-10-22T08:23:41.101001157Z === RUN TestBackupDTOsUseAppIdentity 2026-10-22T08:23:41.101010697Z === RUN TestBackupDTOsUseAppIdentity/database_job 2026-10-22T08:23:41.101029354Z === RUN TestBackupDTOsUseAppIdentity/volume_job 2026-10-22T08:23:41.101042657Z --- PASS: TestBackupDTOsUseAppIdentity (0.00s) 2026-10-22T08:23:41.101066048Z --- PASS: TestBackupDTOsUseAppIdentity/database_job (0.00s) 2026-10-22T08:23:41.101097524Z --- PASS: TestBackupDTOsUseAppIdentity/volume_job (0.00s) 2026-10-22T08:23:41.101113857Z PASS 2026-10-22T08:23:41.101131866Z ok github.com/bnema/gordon/internal/adapters/dto 1.020s 2026-10-22T08:23:41.176645035Z === RUN TestParse_SecretForms 2026-10-22T08:23:41.176697218Z === RUN TestParse_SecretForms/short_form 2026-10-22T08:23:41.176705187Z === RUN TestParse_SecretForms/table_name_only 2026-10-22T08:23:41.17671084Z === RUN TestParse_SecretForms/table_env 2026-10-22T08:23:41.17671762Z === RUN TestParse_SecretForms/table_file 2026-10-22T08:23:41.176722522Z === RUN TestParse_SecretForms/sub-table 2026-10-22T08:23:41.17674738Z === RUN TestParse_SecretForms/mixed 2026-10-22T08:23:41.176761669Z --- PASS: TestParse_SecretForms (0.00s) 2026-10-22T08:23:41.176774556Z --- PASS: TestParse_SecretForms/short_form (0.00s) 2026-10-22T08:23:41.176787033Z --- PASS: TestParse_SecretForms/table_name_only (0.00s) 2026-10-22T08:23:41.17679819Z --- PASS: TestParse_SecretForms/table_env (0.00s) 2026-10-22T08:23:41.176828082Z --- PASS: TestParse_SecretForms/table_file (0.00s) 2026-10-22T08:23:41.176845918Z --- PASS: TestParse_SecretForms/sub-table (0.00s) 2026-10-22T08:23:41.176857287Z --- PASS: TestParse_SecretForms/mixed (0.00s) 2026-10-22T08:23:41.176862352Z === RUN TestParse_NoSecretsKeepsEmptyMap 2026-10-22T08:23:41.176867573Z --- PASS: TestParse_NoSecretsKeepsEmptyMap (0.00s) 2026-10-22T08:23:41.176877206Z === RUN TestParse_SecretFormsInvalid 2026-10-22T08:23:41.176902943Z === RUN TestParse_SecretFormsInvalid/bad_as 2026-10-22T08:23:41.176915466Z === RUN TestParse_SecretFormsInvalid/empty_as 2026-10-22T08:23:41.176921675Z === RUN TestParse_SecretFormsInvalid/as_not_string 2026-10-22T08:23:41.176926972Z === RUN TestParse_SecretFormsInvalid/missing_name 2026-10-22T08:23:41.176932046Z === RUN TestParse_SecretFormsInvalid/name_not_string 2026-10-22T08:23:41.176938037Z === RUN TestParse_SecretFormsInvalid/extra_key 2026-10-22T08:23:41.176943783Z === RUN TestParse_SecretFormsInvalid/integer_value 2026-10-22T08:23:41.176951894Z === RUN TestParse_SecretFormsInvalid/array_value 2026-10-22T08:23:41.17695787Z === RUN TestParse_SecretFormsInvalid/file_key_collision 2026-10-22T08:23:41.176985737Z --- PASS: TestParse_SecretFormsInvalid (0.00s) 2026-10-22T08:23:41.176998518Z --- PASS: TestParse_SecretFormsInvalid/bad_as (0.00s) 2026-10-22T08:23:41.177010457Z --- PASS: TestParse_SecretFormsInvalid/empty_as (0.00s) 2026-10-22T08:23:41.177026452Z --- PASS: TestParse_SecretFormsInvalid/as_not_string (0.00s) 2026-10-22T08:23:41.177050135Z --- PASS: TestParse_SecretFormsInvalid/missing_name (0.00s) 2026-10-22T08:23:41.177070972Z --- PASS: TestParse_SecretFormsInvalid/name_not_string (0.00s) 2026-10-22T08:23:41.177087415Z --- PASS: TestParse_SecretFormsInvalid/extra_key (0.00s) 2026-10-22T08:23:41.17710427Z --- PASS: TestParse_SecretFormsInvalid/integer_value (0.00s) 2026-10-22T08:23:41.177120285Z --- PASS: TestParse_SecretFormsInvalid/array_value (0.00s) 2026-10-22T08:23:41.177136867Z --- PASS: TestParse_SecretFormsInvalid/file_key_collision (0.00s) 2026-10-22T08:23:41.177145463Z === RUN TestParse_ValidWeb 2026-10-22T08:23:41.177157097Z --- PASS: TestParse_ValidWeb (0.00s) 2026-10-22T08:23:41.177168077Z === RUN TestParse_SharedNetwork 2026-10-22T08:23:41.177176732Z --- PASS: TestParse_SharedNetwork (0.00s) 2026-10-22T08:23:41.177185565Z === RUN TestParse_FileNameMismatchIsWarning 2026-10-22T08:23:41.177194596Z --- PASS: TestParse_FileNameMismatchIsWarning (0.00s) 2026-10-22T08:23:41.177203001Z === RUN TestParse_MissingTagNormalizesToLatest 2026-10-22T08:23:41.177211664Z --- PASS: TestParse_MissingTagNormalizesToLatest (0.00s) 2026-10-22T08:23:41.177218703Z === RUN TestParse_UnknownFieldsRejected 2026-10-22T08:23:41.177224078Z === RUN TestParse_UnknownFieldsRejected/top_level 2026-10-22T08:23:41.177247254Z === RUN TestParse_UnknownFieldsRejected/service 2026-10-22T08:23:41.177297371Z === RUN TestParse_UnknownFieldsRejected/readiness 2026-10-22T08:23:41.17730903Z === RUN TestParse_UnknownFieldsRejected/http 2026-10-22T08:23:41.177319066Z --- PASS: TestParse_UnknownFieldsRejected (0.00s) 2026-10-22T08:23:41.177339803Z --- PASS: TestParse_UnknownFieldsRejected/top_level (0.00s) 2026-10-22T08:23:41.177360783Z --- PASS: TestParse_UnknownFieldsRejected/service (0.00s) 2026-10-22T08:23:41.177374386Z --- PASS: TestParse_UnknownFieldsRejected/readiness (0.00s) 2026-10-22T08:23:41.177386232Z --- PASS: TestParse_UnknownFieldsRejected/http (0.00s) 2026-10-22T08:23:41.177396294Z === RUN TestParse_OldSyntaxRejected 2026-10-22T08:23:41.177402504Z === RUN TestParse_OldSyntaxRejected/legacy_service_array 2026-10-22T08:23:41.177411678Z === RUN TestParse_OldSyntaxRejected/legacy_plural_service_array 2026-10-22T08:23:41.17742116Z === RUN TestParse_OldSyntaxRejected/service_name_as_field 2026-10-22T08:23:41.17742683Z --- PASS: TestParse_OldSyntaxRejected (0.00s) 2026-10-22T08:23:41.177440088Z --- PASS: TestParse_OldSyntaxRejected/legacy_service_array (0.00s) 2026-10-22T08:23:41.177459066Z --- PASS: TestParse_OldSyntaxRejected/legacy_plural_service_array (0.00s) 2026-10-22T08:23:41.177473367Z --- PASS: TestParse_OldSyntaxRejected/service_name_as_field (0.00s) 2026-10-22T08:23:41.177478824Z === RUN TestParse_RetiredArraySyntaxHintIsActionable 2026-10-22T08:23:41.177490106Z === RUN TestParse_RetiredArraySyntaxHintIsActionable/singular 2026-10-22T08:23:41.177499599Z === RUN TestParse_RetiredArraySyntaxHintIsActionable/plural 2026-10-22T08:23:41.177509661Z --- PASS: TestParse_RetiredArraySyntaxHintIsActionable (0.00s) 2026-10-22T08:23:41.177527569Z --- PASS: TestParse_RetiredArraySyntaxHintIsActionable/singular (0.00s) 2026-10-22T08:23:41.177544997Z --- PASS: TestParse_RetiredArraySyntaxHintIsActionable/plural (0.00s) 2026-10-22T08:23:41.177553928Z === RUN TestParse_NonArrayTablesKeepPlainDiagnostic 2026-10-22T08:23:41.17756752Z === RUN TestParse_NonArrayTablesKeepPlainDiagnostic/service_table 2026-10-22T08:23:41.177577089Z === RUN TestParse_NonArrayTablesKeepPlainDiagnostic/service_scalar 2026-10-22T08:23:41.177588613Z === RUN TestParse_NonArrayTablesKeepPlainDiagnostic/services_string_array 2026-10-22T08:23:41.177598125Z --- PASS: TestParse_NonArrayTablesKeepPlainDiagnostic (0.00s) 2026-10-22T08:23:41.177616149Z --- PASS: TestParse_NonArrayTablesKeepPlainDiagnostic/service_table (0.00s) 2026-10-22T08:23:41.177634774Z --- PASS: TestParse_NonArrayTablesKeepPlainDiagnostic/service_scalar (0.00s) 2026-10-22T08:23:41.177655119Z --- PASS: TestParse_NonArrayTablesKeepPlainDiagnostic/services_string_array (0.00s) 2026-10-22T08:23:41.177665737Z === RUN TestParse_UnknownNestedFieldRejected 2026-10-22T08:23:41.177675154Z === RUN TestParse_UnknownNestedFieldRejected/unknown_protocol_table 2026-10-22T08:23:41.177684248Z === RUN TestParse_UnknownNestedFieldRejected/unknown_nested_table 2026-10-22T08:23:41.177694714Z --- PASS: TestParse_UnknownNestedFieldRejected (0.00s) 2026-10-22T08:23:41.177713706Z --- PASS: TestParse_UnknownNestedFieldRejected/unknown_protocol_table (0.00s) 2026-10-22T08:23:41.177732122Z --- PASS: TestParse_UnknownNestedFieldRejected/unknown_nested_table (0.00s) 2026-10-22T08:23:41.177742113Z === RUN TestParse_QuotedDottedServiceKey 2026-10-22T08:23:41.177751112Z --- PASS: TestParse_QuotedDottedServiceKey (0.00s) 2026-10-22T08:23:41.177759585Z === RUN TestParse_UnquotedDottedKeyRejected 2026-10-22T08:23:41.177768407Z --- PASS: TestParse_UnquotedDottedKeyRejected (0.00s) 2026-10-22T08:23:41.177778292Z === RUN TestParse_DuplicateServiceTableRejected 2026-10-22T08:23:41.1777897Z --- PASS: TestParse_DuplicateServiceTableRejected (0.00s) 2026-10-22T08:23:41.17779877Z === RUN TestParse_ServiceOrderDeterministic 2026-10-22T08:23:41.17780781Z --- PASS: TestParse_ServiceOrderDeterministic (0.00s) 2026-10-22T08:23:41.177817127Z === RUN TestParse_ServiceEnv 2026-10-22T08:23:41.177825857Z --- PASS: TestParse_ServiceEnv (0.00s) 2026-10-22T08:23:41.177834127Z === RUN TestParse_ServiceEnvInvalid 2026-10-22T08:23:41.177842797Z === RUN TestParse_ServiceEnvInvalid/secret_reference 2026-10-22T08:23:41.17785381Z === RUN TestParse_ServiceEnvInvalid/secret_key_collision 2026-10-22T08:23:41.177872552Z === RUN TestParse_ServiceEnvInvalid/newline 2026-10-22T08:23:41.17788948Z --- PASS: TestParse_ServiceEnvInvalid (0.00s) 2026-10-22T08:23:41.177921353Z --- PASS: TestParse_ServiceEnvInvalid/secret_reference (0.00s) 2026-10-22T08:23:41.177951486Z --- PASS: TestParse_ServiceEnvInvalid/secret_key_collision (0.00s) 2026-10-22T08:23:41.177978772Z --- PASS: TestParse_ServiceEnvInvalid/newline (0.00s) 2026-10-22T08:23:41.177994564Z === RUN TestParse_Names 2026-10-22T08:23:41.17800918Z === RUN TestParse_Names/bad_app 2026-10-22T08:23:41.17802472Z === RUN TestParse_Names/double_dash_app 2026-10-22T08:23:41.178042396Z === RUN TestParse_Names/reserved_app 2026-10-22T08:23:41.178057484Z === RUN TestParse_Names/no_services 2026-10-22T08:23:41.178073314Z === RUN TestParse_Names/dup_service 2026-10-22T08:23:41.178088276Z === RUN TestParse_Names/dup_service_case 2026-10-22T08:23:41.178104327Z === RUN TestParse_Names/normalized_collision 2026-10-22T08:23:41.178118595Z === RUN TestParse_Names/replicas_rejected 2026-10-22T08:23:41.178134266Z === RUN TestParse_Names/volume_double_dash 2026-10-22T08:23:41.178149493Z === RUN TestParse_Names/shared_volume 2026-10-22T08:23:41.178167132Z === RUN TestParse_Names/env_secret_key_collision 2026-10-22T08:23:41.178182071Z === RUN TestParse_Names/secret_ref_in_env 2026-10-22T08:23:41.178197232Z --- PASS: TestParse_Names (0.00s) 2026-10-22T08:23:41.178222707Z --- PASS: TestParse_Names/bad_app (0.00s) 2026-10-22T08:23:41.178245915Z --- PASS: TestParse_Names/double_dash_app (0.00s) 2026-10-22T08:23:41.178270783Z --- PASS: TestParse_Names/reserved_app (0.00s) 2026-10-22T08:23:41.178296869Z --- PASS: TestParse_Names/no_services (0.00s) 2026-10-22T08:23:41.178322348Z --- PASS: TestParse_Names/dup_service (0.00s) 2026-10-22T08:23:41.178351475Z --- PASS: TestParse_Names/dup_service_case (0.00s) 2026-10-22T08:23:41.17837896Z --- PASS: TestParse_Names/normalized_collision (0.00s) 2026-10-22T08:23:41.178406533Z --- PASS: TestParse_Names/replicas_rejected (0.00s) 2026-10-22T08:23:41.178434845Z --- PASS: TestParse_Names/volume_double_dash (0.00s) 2026-10-22T08:23:41.178460292Z --- PASS: TestParse_Names/shared_volume (0.00s) 2026-10-22T08:23:41.178490172Z --- PASS: TestParse_Names/env_secret_key_collision (0.00s) 2026-10-22T08:23:41.178518212Z --- PASS: TestParse_Names/secret_ref_in_env (0.00s) 2026-10-22T08:23:41.178533875Z === RUN TestParse_Readiness 2026-10-22T08:23:41.178550382Z === RUN TestParse_Readiness/bad_type 2026-10-22T08:23:41.178567494Z === RUN TestParse_Readiness/log_needs_path 2026-10-22T08:23:41.17858309Z === RUN TestParse_Readiness/http_needs_path 2026-10-22T08:23:41.178600407Z === RUN TestParse_Readiness/udp_tcp_rejected 2026-10-22T08:23:41.178618345Z === RUN TestParse_Readiness/multi_tcp_needs_port 2026-10-22T08:23:41.178635257Z === RUN TestParse_Readiness/bad_port_ref 2026-10-22T08:23:41.178664419Z === RUN TestParse_Readiness/bad_timeout 2026-10-22T08:23:41.178681896Z --- PASS: TestParse_Readiness (0.00s) 2026-10-22T08:23:41.17871566Z --- PASS: TestParse_Readiness/bad_type (0.00s) 2026-10-22T08:23:41.178741275Z --- PASS: TestParse_Readiness/log_needs_path (0.00s) 2026-10-22T08:23:41.178783212Z --- PASS: TestParse_Readiness/http_needs_path (0.00s) 2026-10-22T08:23:41.17881045Z --- PASS: TestParse_Readiness/udp_tcp_rejected (0.00s) 2026-10-22T08:23:41.178853018Z --- PASS: TestParse_Readiness/multi_tcp_needs_port (0.00s) 2026-10-22T08:23:41.178879171Z --- PASS: TestParse_Readiness/bad_port_ref (0.00s) 2026-10-22T08:23:41.17891867Z --- PASS: TestParse_Readiness/bad_timeout (0.00s) 2026-10-22T08:23:41.178935098Z === RUN TestParse_Interfaces 2026-10-22T08:23:41.178970158Z === RUN TestParse_Interfaces/tcp_needs_entrypoint 2026-10-22T08:23:41.178988686Z === RUN TestParse_Interfaces/publish_hostname 2026-10-22T08:23:41.179005369Z === RUN TestParse_Interfaces/rcon_table_rejected 2026-10-22T08:23:41.179038679Z === RUN TestParse_Interfaces/bad_host 2026-10-22T08:23:41.179055371Z --- PASS: TestParse_Interfaces (0.00s) 2026-10-22T08:23:41.179127239Z --- PASS: TestParse_Interfaces/tcp_needs_entrypoint (0.00s) 2026-10-22T08:23:41.179187737Z --- PASS: TestParse_Interfaces/publish_hostname (0.00s) 2026-10-22T08:23:41.17923392Z --- PASS: TestParse_Interfaces/rcon_table_rejected (0.00s) 2026-10-22T08:23:41.179260891Z --- PASS: TestParse_Interfaces/bad_host (0.00s) 2026-10-22T08:23:41.17929486Z === RUN TestParse_Backups 2026-10-22T08:23:41.17931158Z --- PASS: TestParse_Backups (0.00s) 2026-10-22T08:23:41.179329522Z === RUN TestParse_GameAndStagingExamples 2026-10-22T08:23:41.179365905Z --- PASS: TestParse_GameAndStagingExamples (0.00s) 2026-10-22T08:23:41.179383158Z === RUN TestParse_NoFileEnvSecretReads 2026-10-22T08:23:41.179399226Z --- PASS: TestParse_NoFileEnvSecretReads (0.00s) 2026-10-22T08:23:41.179433203Z === RUN TestParse_Binds 2026-10-22T08:23:41.179448772Z --- PASS: TestParse_Binds (0.00s) 2026-10-22T08:23:41.179466189Z === RUN TestParse_BindDestinationRejected 2026-10-22T08:23:41.179521389Z --- PASS: TestParse_BindDestinationRejected (0.00s) 2026-10-22T08:23:41.179536527Z === RUN TestParse_Devices 2026-10-22T08:23:41.181458464Z --- PASS: TestParse_Devices (0.00s) 2026-10-22T08:23:41.181480491Z === RUN TestParse_DevicesWrongType 2026-10-22T08:23:41.181490998Z --- PASS: TestParse_DevicesWrongType (0.00s) 2026-10-22T08:23:41.181502138Z === RUN TestParse_DevicesMalformedRejected 2026-10-22T08:23:41.181511898Z --- PASS: TestParse_DevicesMalformedRejected (0.00s) 2026-10-22T08:23:41.181521503Z === RUN TestParse_DevicesDuplicateRejected 2026-10-22T08:23:41.181534344Z --- PASS: TestParse_DevicesDuplicateRejected (0.00s) 2026-10-22T08:23:41.181549283Z === RUN TestParse_UnknownGPUFieldRejected 2026-10-22T08:23:41.181559571Z --- PASS: TestParse_UnknownGPUFieldRejected (0.00s) 2026-10-22T08:23:41.181568471Z === RUN TestParse_TelemetryLogsPrecedence 2026-10-22T08:23:41.181578944Z --- PASS: TestParse_TelemetryLogsPrecedence (0.00s) 2026-10-22T08:23:41.181594385Z === RUN TestParse_TelemetryLogsDefaultOn 2026-10-22T08:23:41.181608153Z --- PASS: TestParse_TelemetryLogsDefaultOn (0.00s) 2026-10-22T08:23:41.181613979Z === RUN TestParse_Capabilities 2026-10-22T08:23:41.181623082Z --- PASS: TestParse_Capabilities (0.00s) 2026-10-22T08:23:41.181635218Z === RUN TestParse_CapabilitiesWrongType 2026-10-22T08:23:41.181650225Z --- PASS: TestParse_CapabilitiesWrongType (0.00s) 2026-10-22T08:23:41.18167592Z === RUN TestParse_CapabilitiesMalformedAndDuplicateRejected 2026-10-22T08:23:41.181689724Z --- PASS: TestParse_CapabilitiesMalformedAndDuplicateRejected (0.00s) 2026-10-22T08:23:41.181703125Z === RUN TestParse_VisibilityNormalization 2026-10-22T08:23:41.181719715Z === RUN TestParse_VisibilityNormalization/absent_visibility_stays_public_with_auto_tls 2026-10-22T08:23:41.181732626Z === RUN TestParse_VisibilityNormalization/explicit_internal_keeps_tls_absent_and_has_no_host 2026-10-22T08:23:41.181743391Z === RUN TestParse_VisibilityNormalization/explicit_public_normalizes_to_auto_tls 2026-10-22T08:23:41.181754452Z --- PASS: TestParse_VisibilityNormalization (0.00s) 2026-10-22T08:23:41.181777589Z --- PASS: TestParse_VisibilityNormalization/absent_visibility_stays_public_with_auto_tls (0.00s) 2026-10-22T08:23:41.181800491Z --- PASS: TestParse_VisibilityNormalization/explicit_internal_keeps_tls_absent_and_has_no_host (0.00s) 2026-10-22T08:23:41.18183443Z --- PASS: TestParse_VisibilityNormalization/explicit_public_normalizes_to_auto_tls (0.00s) 2026-10-22T08:23:41.181847954Z === RUN TestParse_VisibilityRejections 2026-10-22T08:23:41.181860173Z === RUN TestParse_VisibilityRejections/internal_forbids_host 2026-10-22T08:23:41.181870349Z === RUN TestParse_VisibilityRejections/internal_forbids_tls 2026-10-22T08:23:41.181880636Z === RUN TestParse_VisibilityRejections/internal_forbids_explicitly_empty_tls 2026-10-22T08:23:41.181892387Z === RUN TestParse_VisibilityRejections/unknown_visibility_value 2026-10-22T08:23:41.181906856Z === RUN TestParse_VisibilityRejections/internal_port_also_published_as_tcp 2026-10-22T08:23:41.181917118Z --- PASS: TestParse_VisibilityRejections (0.00s) 2026-10-22T08:23:41.181937881Z --- PASS: TestParse_VisibilityRejections/internal_forbids_host (0.00s) 2026-10-22T08:23:41.181955893Z --- PASS: TestParse_VisibilityRejections/internal_forbids_tls (0.00s) 2026-10-22T08:23:41.181990952Z --- PASS: TestParse_VisibilityRejections/internal_forbids_explicitly_empty_tls (0.00s) 2026-10-22T08:23:41.182016909Z --- PASS: TestParse_VisibilityRejections/unknown_visibility_value (0.00s) 2026-10-22T08:23:41.182040767Z --- PASS: TestParse_VisibilityRejections/internal_port_also_published_as_tcp (0.00s) 2026-10-22T08:23:41.182052992Z === RUN TestParse_VisibilityUnknownFieldStillRejected 2026-10-22T08:23:41.186695462Z --- PASS: TestParse_VisibilityUnknownFieldStillRejected (0.00s) 2026-10-22T08:23:41.186729739Z PASS 2026-10-22T08:23:41.186738372Z ok github.com/bnema/gordon/internal/adapters/in/appmanifest 1.050s 2026-10-22T08:23:46.31558387Z === RUN TestRunAppsApply_DeployAcceptedPollsToSuccess 2026-10-22T08:23:46.315623862Z --- PASS: TestRunAppsApply_DeployAcceptedPollsToSuccess (0.00s) 2026-10-22T08:23:46.315637319Z === RUN TestRunAppsApply_DeployAcceptedNoSecondMutation 2026-10-22T08:23:46.315649529Z --- PASS: TestRunAppsApply_DeployAcceptedNoSecondMutation (0.00s) 2026-10-22T08:23:46.315676492Z === RUN TestRunAppsApply_DeployAcceptedUnchangedStateNotReprinted 2026-10-22T08:23:46.315696581Z --- PASS: TestRunAppsApply_DeployAcceptedUnchangedStateNotReprinted (0.01s) 2026-10-22T08:23:46.315722456Z === RUN TestRunAppsApply_DeployAcceptedPartialFailsButKeepsApply 2026-10-22T08:23:46.315749036Z --- PASS: TestRunAppsApply_DeployAcceptedPartialFailsButKeepsApply (0.00s) 2026-10-22T08:23:46.315775127Z === RUN TestRunAppsApply_DeployAcceptedJSONKeepsStdoutSingleCombinedDocument 2026-10-22T08:23:46.31580107Z --- PASS: TestRunAppsApply_DeployAcceptedJSONKeepsStdoutSingleCombinedDocument (0.00s) 2026-10-22T08:23:46.31582703Z === RUN TestRunAppsApply_DeployAcceptedJSONFailureKeepsApplyDocument 2026-10-22T08:23:46.315853254Z --- PASS: TestRunAppsApply_DeployAcceptedJSONFailureKeepsApplyDocument (0.00s) 2026-10-22T08:23:46.315877252Z === RUN TestRunAppsApply_DeployAcceptedCancelPrintsResume 2026-10-22T08:23:46.315902848Z --- PASS: TestRunAppsApply_DeployAcceptedCancelPrintsResume (0.00s) 2026-10-22T08:23:46.315926585Z === RUN TestRunAppsApply_DeployAcceptedCancelKeepsJSONStdoutClean 2026-10-22T08:23:46.31595118Z --- PASS: TestRunAppsApply_DeployAcceptedCancelKeepsJSONStdoutClean (0.00s) 2026-10-22T08:23:46.315974948Z === RUN TestRunAppsApply_DryRunOmitsEmptyRevisionAndRendersDiff 2026-10-22T08:23:46.315996911Z --- PASS: TestRunAppsApply_DryRunOmitsEmptyRevisionAndRendersDiff (0.00s) 2026-10-22T08:23:46.316008363Z === RUN TestRunAppsApply_NoopOmitsEmptyRevision 2026-10-22T08:23:46.316026353Z --- PASS: TestRunAppsApply_NoopOmitsEmptyRevision (0.00s) 2026-10-22T08:23:46.316044217Z === RUN TestRunAppLogs_RejectsJSONWithFollow 2026-10-22T08:23:46.316062129Z --- PASS: TestRunAppLogs_RejectsJSONWithFollow (0.00s) 2026-10-22T08:23:46.316086339Z === RUN TestAppLogRef_ZeroServicesAccurateError 2026-10-22T08:23:46.31610831Z --- PASS: TestAppLogRef_ZeroServicesAccurateError (0.00s) 2026-10-22T08:23:46.316131661Z === RUN TestRunStatusCmd_AppsLabelAndSortedHelpers 2026-10-22T08:23:46.316155703Z --- PASS: TestRunStatusCmd_AppsLabelAndSortedHelpers (0.00s) 2026-10-22T08:23:46.316180141Z === RUN TestSharedCommandLocalAdminComposition_Status 2026-10-22T08:23:46.316204086Z --- PASS: TestSharedCommandLocalAdminComposition_Status (0.01s) 2026-10-22T08:23:46.316227916Z === RUN TestAppLocalAdminComposition_EndToEnd 2026-10-22T08:23:46.316250751Z --- PASS: TestAppLocalAdminComposition_EndToEnd (0.01s) 2026-10-22T08:23:46.316274719Z === RUN TestResolveAppPlane_UsesLocalAdminSocket 2026-10-22T08:23:46.316299474Z --- PASS: TestResolveAppPlane_UsesLocalAdminSocket (0.00s) 2026-10-22T08:23:46.316321812Z === RUN TestControlPlane_LocalAndRemoteDTOParity 2026-10-22T08:23:46.31634647Z --- PASS: TestControlPlane_LocalAndRemoteDTOParity (0.01s) 2026-10-22T08:23:46.316371113Z === RUN TestResolveAppPlane_ExplicitRemoteNeverProbesLocal 2026-10-22T08:23:46.316395046Z === RUN TestResolveAppPlane_ExplicitRemoteNeverProbesLocal/remote_succeeds 2026-10-22T08:23:46.316423587Z === RUN TestResolveAppPlane_ExplicitRemoteNeverProbesLocal/remote_fails_without_local_fallback 2026-10-22T08:23:46.316450019Z --- PASS: TestResolveAppPlane_ExplicitRemoteNeverProbesLocal (0.00s) 2026-10-22T08:23:46.316490602Z --- PASS: TestResolveAppPlane_ExplicitRemoteNeverProbesLocal/remote_succeeds (0.00s) 2026-10-22T08:23:46.316533575Z --- PASS: TestResolveAppPlane_ExplicitRemoteNeverProbesLocal/remote_fails_without_local_fallback (0.00s) 2026-10-22T08:23:46.316553017Z === RUN TestResolveAppPlane_ReportsDaemonUnavailable 2026-10-22T08:23:46.316577501Z --- PASS: TestResolveAppPlane_ReportsDaemonUnavailable (0.00s) 2026-10-22T08:23:46.316600665Z === RUN TestRunAppsApply_RejectsDryRunWithDeploy 2026-10-22T08:23:46.316624154Z --- PASS: TestRunAppsApply_RejectsDryRunWithDeploy (0.00s) 2026-10-22T08:23:46.316649078Z === RUN TestRunAppsApply_RequiresFile 2026-10-22T08:23:46.316671179Z --- PASS: TestRunAppsApply_RequiresFile (0.00s) 2026-10-22T08:23:46.316693754Z === RUN TestRunAppsApply_JSONParity 2026-10-22T08:23:46.316717246Z --- PASS: TestRunAppsApply_JSONParity (0.00s) 2026-10-22T08:23:46.316740131Z === RUN TestRunAppsApply_ChainsAcceptedRevision 2026-10-22T08:23:46.316764196Z --- PASS: TestRunAppsApply_ChainsAcceptedRevision (0.00s) 2026-10-22T08:23:46.316788254Z === RUN TestRunAppsApply_ChainedJSONIsOneDocument 2026-10-22T08:23:46.316812215Z --- PASS: TestRunAppsApply_ChainedJSONIsOneDocument (0.00s) 2026-10-22T08:23:46.316836675Z === RUN TestRunAppsList_JSONParityAndSorting 2026-10-22T08:23:46.316860036Z --- PASS: TestRunAppsList_JSONParityAndSorting (0.00s) 2026-10-22T08:23:46.316882677Z === RUN TestRunAppsList_EmptyJSONIsArray 2026-10-22T08:23:46.316905387Z --- PASS: TestRunAppsList_EmptyJSONIsArray (0.00s) 2026-10-22T08:23:46.316922794Z === RUN TestRenderActiveServices_SingleWriterLegend 2026-10-22T08:23:46.316940062Z === RUN TestRenderActiveServices_SingleWriterLegend/none 2026-10-22T08:23:46.316958394Z === RUN TestRenderActiveServices_SingleWriterLegend/one 2026-10-22T08:23:46.316975837Z === RUN TestRenderActiveServices_SingleWriterLegend/two 2026-10-22T08:23:46.316993809Z --- PASS: TestRenderActiveServices_SingleWriterLegend (0.00s) 2026-10-22T08:23:46.317025915Z --- PASS: TestRenderActiveServices_SingleWriterLegend/none (0.00s) 2026-10-22T08:23:46.317054429Z --- PASS: TestRenderActiveServices_SingleWriterLegend/one (0.00s) 2026-10-22T08:23:46.317094679Z --- PASS: TestRenderActiveServices_SingleWriterLegend/two (0.00s) 2026-10-22T08:23:46.317110116Z === RUN TestRunAppsShow_JSONParity 2026-10-22T08:23:46.317125269Z --- PASS: TestRunAppsShow_JSONParity (0.00s) 2026-10-22T08:23:46.317141445Z === RUN TestRunAppsSecretsSet_NeverEchoesValues 2026-10-22T08:23:46.317158074Z --- PASS: TestRunAppsSecretsSet_NeverEchoesValues (0.00s) 2026-10-22T08:23:46.317175566Z === RUN TestRunAppsSecretsSet_RequiresService 2026-10-22T08:23:46.317193239Z --- PASS: TestRunAppsSecretsSet_RequiresService (0.00s) 2026-10-22T08:23:46.317210996Z === RUN TestRunAppsSecretsSet_StdinAndValidation 2026-10-22T08:23:46.317229006Z --- PASS: TestRunAppsSecretsSet_StdinAndValidation (0.00s) 2026-10-22T08:23:46.317246025Z === RUN TestRunAppDeploy_OutcomeUnknownMentionsKey 2026-10-22T08:23:46.317263258Z --- PASS: TestRunAppDeploy_OutcomeUnknownMentionsKey (0.00s) 2026-10-22T08:23:46.317281324Z === RUN TestRunAppDeploy_ConflictRendersJournal 2026-10-22T08:23:46.317296903Z --- PASS: TestRunAppDeploy_ConflictRendersJournal (0.00s) 2026-10-22T08:23:46.317305177Z === RUN TestRunAppDeploy_ConflictJSONRendersJournal 2026-10-22T08:23:46.317310568Z --- PASS: TestRunAppDeploy_ConflictJSONRendersJournal (0.00s) 2026-10-22T08:23:46.317315598Z === RUN TestRunAppLifecycle_ConflictRendersJournal 2026-10-22T08:23:46.31732071Z --- PASS: TestRunAppLifecycle_ConflictRendersJournal (0.00s) 2026-10-22T08:23:46.317325485Z === RUN TestRenderAppDeployResponse_SortedServices 2026-10-22T08:23:46.317330569Z --- PASS: TestRenderAppDeployResponse_SortedServices (0.00s) 2026-10-22T08:23:46.317334765Z === RUN TestAppLogRef_Selection 2026-10-22T08:23:46.31733947Z --- PASS: TestAppLogRef_Selection (0.00s) 2026-10-22T08:23:46.3173443Z === RUN TestResolveAppPlane_FailsWithoutDaemon 2026-10-22T08:23:46.317349953Z --- PASS: TestResolveAppPlane_FailsWithoutDaemon (0.00s) 2026-10-22T08:23:46.317354428Z === RUN TestAppCommandSurface 2026-10-22T08:23:46.31736001Z --- PASS: TestAppCommandSurface (0.00s) 2026-10-22T08:23:46.317364513Z === RUN TestRunAppsDiff_TextAndJSON 2026-10-22T08:23:46.317369096Z --- PASS: TestRunAppsDiff_TextAndJSON (0.00s) 2026-10-22T08:23:46.317374054Z === RUN TestRunAppsSecretsDelete 2026-10-22T08:23:46.317378676Z --- PASS: TestRunAppsSecretsDelete (0.00s) 2026-10-22T08:23:46.317383035Z === RUN TestRunAppRestart_AndLifecycle 2026-10-22T08:23:46.317388239Z --- PASS: TestRunAppRestart_AndLifecycle (0.00s) 2026-10-22T08:23:46.317392568Z === RUN TestRunAppStatus_Observed 2026-10-22T08:23:46.317396955Z --- PASS: TestRunAppStatus_Observed (0.00s) 2026-10-22T08:23:46.31740131Z === RUN TestRunAppLogs_TextJSONFollow 2026-10-22T08:23:46.317405994Z --- PASS: TestRunAppLogs_TextJSONFollow (0.00s) 2026-10-22T08:23:46.317411159Z === RUN TestRunAppsSecretsList_RendersMetadataAndWrapsErrors 2026-10-22T08:23:46.317416621Z --- PASS: TestRunAppsSecretsList_RendersMetadataAndWrapsErrors (0.00s) 2026-10-22T08:23:46.317421607Z === RUN TestRunAppDeploy_PollsAcceptedToTerminal 2026-10-22T08:23:46.317432854Z --- PASS: TestRunAppDeploy_PollsAcceptedToTerminal (0.00s) 2026-10-22T08:23:46.317438743Z === RUN TestRunAppDeploy_UnchangedStateNotReprinted 2026-10-22T08:23:46.317443869Z --- PASS: TestRunAppDeploy_UnchangedStateNotReprinted (0.00s) 2026-10-22T08:23:46.317449241Z === RUN TestRunAppDeploy_AcceptedIssuesNoSecondMutation 2026-10-22T08:23:46.317454565Z --- PASS: TestRunAppDeploy_AcceptedIssuesNoSecondMutation (0.00s) 2026-10-22T08:23:46.317459554Z === RUN TestRunAppDeploy_TerminalPartialRendersAndFails 2026-10-22T08:23:46.31746479Z --- PASS: TestRunAppDeploy_TerminalPartialRendersAndFails (0.00s) 2026-10-22T08:23:46.317469767Z === RUN TestRunAppDeploy_JSONKeepsStdoutMachineReadable 2026-10-22T08:23:46.317474847Z --- PASS: TestRunAppDeploy_JSONKeepsStdoutMachineReadable (0.00s) 2026-10-22T08:23:46.317479828Z === RUN TestWatchOperation_CancelPrintsResumeWithoutAbort 2026-10-22T08:23:46.317484947Z --- PASS: TestWatchOperation_CancelPrintsResumeWithoutAbort (0.00s) 2026-10-22T08:23:46.317489873Z === RUN TestWatchOperation_CancelKeepsJSONStdoutClean 2026-10-22T08:23:46.317494948Z --- PASS: TestWatchOperation_CancelKeepsJSONStdoutClean (0.00s) 2026-10-22T08:23:46.317499793Z === RUN TestRunAppsOperationsWatch_ResumesExisting 2026-10-22T08:23:46.317505284Z --- PASS: TestRunAppsOperationsWatch_ResumesExisting (0.00s) 2026-10-22T08:23:46.317510153Z === RUN TestAwaitOperation_TransientErrorsAreBounded 2026-10-22T08:23:46.317515303Z --- PASS: TestAwaitOperation_TransientErrorsAreBounded (0.01s) 2026-10-22T08:23:46.317519954Z === RUN TestAwaitOperation_NotFoundFailsFast 2026-10-22T08:23:46.317525364Z --- PASS: TestAwaitOperation_NotFoundFailsFast (0.00s) 2026-10-22T08:23:46.317529942Z === RUN TestAppsOperationsWatchCmd_Flags 2026-10-22T08:23:46.317534712Z --- PASS: TestAppsOperationsWatchCmd_Flags (0.00s) 2026-10-22T08:23:46.317539417Z === RUN TestParseAndConvertScopes_DefaultWildcard 2026-10-22T08:23:46.317544392Z --- PASS: TestParseAndConvertScopes_DefaultWildcard (0.00s) 2026-10-22T08:23:46.317548994Z === RUN TestParseAndConvertScopes_SpecificRepo 2026-10-22T08:23:46.317553959Z --- PASS: TestParseAndConvertScopes_SpecificRepo (0.00s) 2026-10-22T08:23:46.317559197Z === RUN TestParseAndConvertScopes_SpecificRepoPushOnly 2026-10-22T08:23:46.317564375Z --- PASS: TestParseAndConvertScopes_SpecificRepoPushOnly (0.00s) 2026-10-22T08:23:46.317569388Z === RUN TestParseAndConvertScopes_MixedWithAdminScopes 2026-10-22T08:23:46.317574868Z --- PASS: TestParseAndConvertScopes_MixedWithAdminScopes (0.00s) 2026-10-22T08:23:46.317581066Z === RUN TestParseAndConvertScopes_AlreadyV2Format_RepoIgnored 2026-10-22T08:23:46.317586737Z --- PASS: TestParseAndConvertScopes_AlreadyV2Format_RepoIgnored (0.00s) 2026-10-22T08:23:46.317591509Z === RUN TestParseAndConvertScopes_EmptyRepo 2026-10-22T08:23:46.317596351Z --- PASS: TestParseAndConvertScopes_EmptyRepo (0.00s) 2026-10-22T08:23:46.317601015Z === RUN TestParseAndConvertScopes_WhitespaceRepo 2026-10-22T08:23:46.31760587Z --- PASS: TestParseAndConvertScopes_WhitespaceRepo (0.00s) 2026-10-22T08:23:46.317610516Z === RUN TestRunAuthLoginWithToken_StoresToken 2026-10-22T08:23:46.317619191Z Warning: 'pass' not available. Storing token in plaintext config. Consider installing pass (https://www.passwordstore.org/) for secure token storage. 2026-10-22T08:23:46.31762548Z --- PASS: TestRunAuthLoginWithToken_StoresToken (0.00s) 2026-10-22T08:23:46.317630005Z === RUN TestVolumeBackupStatus_JSONFlag 2026-10-22T08:23:46.317634692Z --- PASS: TestVolumeBackupStatus_JSONFlag (0.00s) 2026-10-22T08:23:46.317640005Z === RUN TestVolumeBackupRun_PrintsPartialJobsBeforeReturningError 2026-10-22T08:23:46.3176454Z --- PASS: TestVolumeBackupRun_PrintsPartialJobsBeforeReturningError (0.00s) 2026-10-22T08:23:46.317650696Z === RUN TestCAExportRemoteUsesControlPlane 2026-10-22T08:23:46.317655417Z --- PASS: TestCAExportRemoteUsesControlPlane (0.00s) 2026-10-22T08:23:46.317659781Z === RUN TestCAExportRemoteWritesFile 2026-10-22T08:23:46.317669137Z  Before trusting this CA, check that fingerprint 59:86:0C:0A:6F:39:16:5A:91:CB:FF:8C:19:CC:38:4D:43:F6:70:7F:6D:B2:5A:88:3D:12:45:A9:21:E6:C3:2D matches `gordon ca info` on the Gordon host 2026-10-22T08:23:46.317675253Z --- PASS: TestCAExportRemoteWritesFile (0.00s) 2026-10-22T08:23:46.317680196Z === RUN TestCAInfoRemoteUsesControlPlane 2026-10-22T08:23:46.317684947Z --- PASS: TestCAInfoRemoteUsesControlPlane (0.00s) 2026-10-22T08:23:46.317689083Z === RUN TestCAInfoRemoteText 2026-10-22T08:23:46.317693944Z --- PASS: TestCAInfoRemoteText (0.00s) 2026-10-22T08:23:46.317698541Z === RUN TestCARemoteErrorIsWrapped 2026-10-22T08:23:46.317702988Z --- PASS: TestCARemoteErrorIsWrapped (0.00s) 2026-10-22T08:23:46.317707394Z === RUN TestCAInstallRejectsRemote 2026-10-22T08:23:46.317711987Z --- PASS: TestCAInstallRejectsRemote (0.00s) 2026-10-22T08:23:46.317716405Z === RUN TestCARemoteRejectsInvalidRoot 2026-10-22T08:23:46.317721242Z === RUN TestCARemoteRejectsInvalidRoot/invalid_pem 2026-10-22T08:23:46.317726082Z === RUN TestCARemoteRejectsInvalidRoot/garbage_der 2026-10-22T08:23:46.317731453Z === RUN TestCARemoteRejectsInvalidRoot/wrong_block_type 2026-10-22T08:23:46.317736464Z === RUN TestCARemoteRejectsInvalidRoot/multiple_certs 2026-10-22T08:23:46.317741246Z === RUN TestCARemoteRejectsInvalidRoot/not_a_CA 2026-10-22T08:23:46.317746317Z === RUN TestCARemoteRejectsInvalidRoot/fingerprint_mismatch 2026-10-22T08:23:46.317751644Z --- PASS: TestCARemoteRejectsInvalidRoot (0.00s) 2026-10-22T08:23:46.31776424Z --- PASS: TestCARemoteRejectsInvalidRoot/invalid_pem (0.00s) 2026-10-22T08:23:46.317776536Z --- PASS: TestCARemoteRejectsInvalidRoot/garbage_der (0.00s) 2026-10-22T08:23:46.317789537Z --- PASS: TestCARemoteRejectsInvalidRoot/wrong_block_type (0.00s) 2026-10-22T08:23:46.317802138Z --- PASS: TestCARemoteRejectsInvalidRoot/multiple_certs (0.00s) 2026-10-22T08:23:46.317813955Z --- PASS: TestCARemoteRejectsInvalidRoot/not_a_CA (0.00s) 2026-10-22T08:23:46.317827688Z --- PASS: TestCARemoteRejectsInvalidRoot/fingerprint_mismatch (0.00s) 2026-10-22T08:23:46.317834174Z === RUN TestCARemoteRejectsNotSelfSigned 2026-10-22T08:23:46.31783911Z --- PASS: TestCARemoteRejectsNotSelfSigned (0.00s) 2026-10-22T08:23:46.317844002Z === RUN TestCARemoteComputesFingerprintAndCNLocally 2026-10-22T08:23:46.317876183Z --- PASS: TestCARemoteComputesFingerprintAndCNLocally (0.00s) 2026-10-22T08:23:46.317888024Z === RUN TestCALocalErrorMentionsConfigAndRemote 2026-10-22T08:23:46.317898126Z --- PASS: TestCALocalErrorMentionsConfigAndRemote (0.00s) 2026-10-22T08:23:46.317908352Z === RUN TestErrLocalInternalTLSDisabledWithoutConfigFile 2026-10-22T08:23:46.317918878Z --- PASS: TestErrLocalInternalTLSDisabledWithoutConfigFile (0.00s) 2026-10-22T08:23:46.317944841Z === RUN TestRemoteControlPlane_RunVolumeBackupsPreservesPartialResult 2026-10-22T08:23:46.317962756Z --- PASS: TestRemoteControlPlane_RunVolumeBackupsPreservesPartialResult (0.00s) 2026-10-22T08:23:46.317977722Z === RUN TestRemoteControlPlane_VolumeBackupErrorsKeepHTTPStatus 2026-10-22T08:23:46.317989698Z --- PASS: TestRemoteControlPlane_VolumeBackupErrorsKeepHTTPStatus (0.00s) 2026-10-22T08:23:46.317999527Z === RUN TestResolveControlPlane_LocalUsesSocketBackedRemotePlane 2026-10-22T08:23:46.318008964Z --- PASS: TestResolveControlPlane_LocalUsesSocketBackedRemotePlane (0.00s) 2026-10-22T08:23:46.318022246Z === RUN TestResolveControlPlane_LocalFailsClosedWhenDaemonUnavailable 2026-10-22T08:23:46.318043784Z --- PASS: TestResolveControlPlane_LocalFailsClosedWhenDaemonUnavailable (0.00s) 2026-10-22T08:23:46.31805597Z === RUN TestResolveControlPlane_ExplicitRemoteDoesNotUseLocalFactory 2026-10-22T08:23:46.318113078Z --- PASS: TestResolveControlPlane_ExplicitRemoteDoesNotUseLocalFactory (0.00s) 2026-10-22T08:23:46.318128741Z === RUN TestResolveControlPlane_ExplicitUnknownRemoteReturnsError 2026-10-22T08:23:46.318154854Z --- PASS: TestResolveControlPlane_ExplicitUnknownRemoteReturnsError (0.00s) 2026-10-22T08:23:46.318180297Z === RUN TestResolveControlPlane_LocalIgnoresConfigAndStoreState 2026-10-22T08:23:46.318203033Z --- PASS: TestResolveControlPlane_LocalIgnoresConfigAndStoreState (0.00s) 2026-10-22T08:23:46.318225078Z === RUN TestFormatDeployFailure_RemoteStructuredError 2026-10-22T08:23:46.318235257Z --- PASS: TestFormatDeployFailure_RemoteStructuredError (0.00s) 2026-10-22T08:23:46.318240667Z === RUN TestFormatDeployFailure_LocalTypedError 2026-10-22T08:23:46.318246063Z --- PASS: TestFormatDeployFailure_LocalTypedError (0.00s) 2026-10-22T08:23:46.318274176Z === RUN TestFormatDeployFailure_GenericFallback 2026-10-22T08:23:46.318287479Z --- PASS: TestFormatDeployFailure_GenericFallback (0.00s) 2026-10-22T08:23:46.318294106Z === RUN TestFormatDeployFailure_SkipsEmptySanitizedLogsSection 2026-10-22T08:23:46.318304131Z --- PASS: TestFormatDeployFailure_SkipsEmptySanitizedLogsSection (0.00s) 2026-10-22T08:23:46.3183125Z === RUN TestShouldFallbackToLocal 2026-10-22T08:23:46.31832355Z === RUN TestShouldFallbackToLocal/nil 2026-10-22T08:23:46.31833368Z === RUN TestShouldFallbackToLocal/connection_refused 2026-10-22T08:23:46.318349403Z === RUN TestShouldFallbackToLocal/status_503 2026-10-22T08:23:46.318360451Z === RUN TestShouldFallbackToLocal/status_500 2026-10-22T08:23:46.318373409Z === RUN TestShouldFallbackToLocal/timeout 2026-10-22T08:23:46.318388681Z === RUN TestShouldFallbackToLocal/auth_error 2026-10-22T08:23:46.318406752Z === RUN TestShouldFallbackToLocal/bad_request 2026-10-22T08:23:46.318422034Z --- PASS: TestShouldFallbackToLocal (0.00s) 2026-10-22T08:23:46.31843814Z --- PASS: TestShouldFallbackToLocal/nil (0.00s) 2026-10-22T08:23:46.318458474Z --- PASS: TestShouldFallbackToLocal/connection_refused (0.00s) 2026-10-22T08:23:46.318481409Z --- PASS: TestShouldFallbackToLocal/status_503 (0.00s) 2026-10-22T08:23:46.31850686Z --- PASS: TestShouldFallbackToLocal/status_500 (0.00s) 2026-10-22T08:23:46.31852385Z --- PASS: TestShouldFallbackToLocal/timeout (0.00s) 2026-10-22T08:23:46.318543077Z --- PASS: TestShouldFallbackToLocal/auth_error (0.00s) 2026-10-22T08:23:46.318566091Z --- PASS: TestShouldFallbackToLocal/bad_request (0.00s) 2026-10-22T08:23:46.318576655Z === RUN TestRunImagesList_PrintsRowsAndSummary 2026-10-22T08:23:46.318586559Z --- PASS: TestRunImagesList_PrintsRowsAndSummary (0.00s) 2026-10-22T08:23:46.318599389Z === RUN TestRunImagesList_HeaderOrderAndSummaryLine 2026-10-22T08:23:46.318614548Z --- PASS: TestRunImagesList_HeaderOrderAndSummaryLine (0.00s) 2026-10-22T08:23:46.318628401Z === RUN TestRunImagesList_TruncatesLongValuesAndKeepsBoundedRowShape 2026-10-22T08:23:46.318645309Z --- PASS: TestRunImagesList_TruncatesLongValuesAndKeepsBoundedRowShape (0.00s) 2026-10-22T08:23:46.318662389Z === RUN TestRunImagesList_LongDigestLikeValuesAndEmptyFormattedFields 2026-10-22T08:23:46.318674495Z --- PASS: TestRunImagesList_LongDigestLikeValuesAndEmptyFormattedFields (0.00s) 2026-10-22T08:23:46.318680266Z === RUN TestRunImagesList_EmptyOutput 2026-10-22T08:23:46.318692823Z --- PASS: TestRunImagesList_EmptyOutput (0.00s) 2026-10-22T08:23:46.318699393Z === RUN TestRunImagesPrune_DefaultScopeIsBothDanglingAndRegistry 2026-10-22T08:23:46.318708286Z --- PASS: TestRunImagesPrune_DefaultScopeIsBothDanglingAndRegistry (0.00s) 2026-10-22T08:23:46.318717409Z === RUN TestRunImagesPrune_DanglingOnlyScopeSkipsRegistry 2026-10-22T08:23:46.318724237Z --- PASS: TestRunImagesPrune_DanglingOnlyScopeSkipsRegistry (0.00s) 2026-10-22T08:23:46.318735615Z === RUN TestRunImagesPrune_RegistryOnlyScopeSkipsRuntime 2026-10-22T08:23:46.318756301Z --- PASS: TestRunImagesPrune_RegistryOnlyScopeSkipsRuntime (0.00s) 2026-10-22T08:23:46.318769885Z === RUN TestRunImagesPrune_BothScopeFlagsExplicit 2026-10-22T08:23:46.318780921Z --- PASS: TestRunImagesPrune_BothScopeFlagsExplicit (0.00s) 2026-10-22T08:23:46.318788299Z === RUN TestRunImagesPrune_DryRunBothScopes 2026-10-22T08:23:46.318797493Z --- PASS: TestRunImagesPrune_DryRunBothScopes (0.00s) 2026-10-22T08:23:46.318813155Z === RUN TestRunImagesPrune_DryRunDanglingOnlyScope 2026-10-22T08:23:46.318827202Z --- PASS: TestRunImagesPrune_DryRunDanglingOnlyScope (0.00s) 2026-10-22T08:23:46.318841304Z === RUN TestRunImagesPrune_DryRunRegistryOnlyScope 2026-10-22T08:23:46.31886019Z --- PASS: TestRunImagesPrune_DryRunRegistryOnlyScope (0.00s) 2026-10-22T08:23:46.318872846Z === RUN TestRunImagesPrune_KeepReleasesControlsRetention 2026-10-22T08:23:46.318879279Z --- PASS: TestRunImagesPrune_KeepReleasesControlsRetention (0.00s) 2026-10-22T08:23:46.318887299Z === RUN TestRunImagesPrune_RejectsNegativeKeepReleases 2026-10-22T08:23:46.318900842Z --- PASS: TestRunImagesPrune_RejectsNegativeKeepReleases (0.00s) 2026-10-22T08:23:46.31890673Z === RUN TestRunImagesPrune_NonDryRunCallsConfirm 2026-10-22T08:23:46.318912213Z --- PASS: TestRunImagesPrune_NonDryRunCallsConfirm (0.00s) 2026-10-22T08:23:46.318922121Z === RUN TestRunImagesPrune_ConfirmPromptIncludesScopePreviewCounts 2026-10-22T08:23:46.318938554Z --- PASS: TestRunImagesPrune_ConfirmPromptIncludesScopePreviewCounts (0.00s) 2026-10-22T08:23:46.318951416Z === RUN TestRunImagesPrune_ConfirmRejectCancelsOperation 2026-10-22T08:23:46.318965815Z --- PASS: TestRunImagesPrune_ConfirmRejectCancelsOperation (0.00s) 2026-10-22T08:23:46.318980988Z === RUN TestRunImagesPrune_NoConfirmSkipsPrompt 2026-10-22T08:23:46.318996076Z --- PASS: TestRunImagesPrune_NoConfirmSkipsPrompt (0.00s) 2026-10-22T08:23:46.319006242Z === RUN TestRunImagesPrune_DryRunNeverPrompts 2026-10-22T08:23:46.319014627Z --- PASS: TestRunImagesPrune_DryRunNeverPrompts (0.00s) 2026-10-22T08:23:46.319033181Z === RUN TestRunImagesPrune_ReturnsRemoteErrors 2026-10-22T08:23:46.319049807Z --- PASS: TestRunImagesPrune_ReturnsRemoteErrors (0.00s) 2026-10-22T08:23:46.319071272Z === RUN TestRunImagesPrune_RejectsEmptyResponse 2026-10-22T08:23:46.319088032Z --- PASS: TestRunImagesPrune_RejectsEmptyResponse (0.00s) 2026-10-22T08:23:46.319094261Z === RUN TestAllListCommands_AcceptJSONFlag 2026-10-22T08:23:46.319100209Z === RUN TestAllListCommands_AcceptJSONFlag/images_list 2026-10-22T08:23:46.319113057Z === RUN TestAllListCommands_AcceptJSONFlag/backup_list 2026-10-22T08:23:46.319127385Z === RUN TestAllListCommands_AcceptJSONFlag/backup_volumes_list 2026-10-22T08:23:46.319139319Z === RUN TestAllListCommands_AcceptJSONFlag/backup_volumes_run 2026-10-22T08:23:46.3191489Z === RUN TestAllListCommands_AcceptJSONFlag/backup_volumes_status 2026-10-22T08:23:46.319157986Z === RUN TestAllListCommands_AcceptJSONFlag/auth_token_list 2026-10-22T08:23:46.31916679Z === RUN TestAllListCommands_AcceptJSONFlag/remotes_list 2026-10-22T08:23:46.31917592Z === RUN TestAllListCommands_AcceptJSONFlag/daemon_config_show 2026-10-22T08:23:46.319184968Z === RUN TestAllListCommands_AcceptJSONFlag/daemon_networks 2026-10-22T08:23:46.319193354Z === RUN TestAllListCommands_AcceptJSONFlag/images_tags 2026-10-22T08:23:46.319205226Z === RUN TestAllListCommands_AcceptJSONFlag/daemon_tls 2026-10-22T08:23:46.319214792Z --- PASS: TestAllListCommands_AcceptJSONFlag (0.00s) 2026-10-22T08:23:46.319231788Z --- PASS: TestAllListCommands_AcceptJSONFlag/images_list (0.00s) 2026-10-22T08:23:46.319248442Z --- PASS: TestAllListCommands_AcceptJSONFlag/backup_list (0.00s) 2026-10-22T08:23:46.31926613Z --- PASS: TestAllListCommands_AcceptJSONFlag/backup_volumes_list (0.00s) 2026-10-22T08:23:46.319283541Z --- PASS: TestAllListCommands_AcceptJSONFlag/backup_volumes_run (0.00s) 2026-10-22T08:23:46.319301479Z --- PASS: TestAllListCommands_AcceptJSONFlag/backup_volumes_status (0.00s) 2026-10-22T08:23:46.31932943Z --- PASS: TestAllListCommands_AcceptJSONFlag/auth_token_list (0.00s) 2026-10-22T08:23:46.319367008Z --- PASS: TestAllListCommands_AcceptJSONFlag/remotes_list (0.00s) 2026-10-22T08:23:46.319389018Z --- PASS: TestAllListCommands_AcceptJSONFlag/daemon_config_show (0.00s) 2026-10-22T08:23:46.319407318Z --- PASS: TestAllListCommands_AcceptJSONFlag/daemon_networks (0.00s) 2026-10-22T08:23:46.319424524Z --- PASS: TestAllListCommands_AcceptJSONFlag/images_tags (0.00s) 2026-10-22T08:23:46.319440782Z --- PASS: TestAllListCommands_AcceptJSONFlag/daemon_tls (0.00s) 2026-10-22T08:23:46.319453073Z === RUN TestImagesList_JSONFlag_Accepted 2026-10-22T08:23:46.319462725Z --- PASS: TestImagesList_JSONFlag_Accepted (0.00s) 2026-10-22T08:23:46.319471061Z === RUN TestBackupList_JSONFlag_Accepted 2026-10-22T08:23:46.319491079Z --- PASS: TestBackupList_JSONFlag_Accepted (0.00s) 2026-10-22T08:23:46.319503835Z === RUN TestTokenList_JSONFlag_Accepted 2026-10-22T08:23:46.319517298Z --- PASS: TestTokenList_JSONFlag_Accepted (0.00s) 2026-10-22T08:23:46.31953009Z === RUN TestRemotesList_JSONFlag_Accepted 2026-10-22T08:23:46.319539968Z --- PASS: TestRemotesList_JSONFlag_Accepted (0.00s) 2026-10-22T08:23:46.319548618Z === RUN TestImagesList_JSONShape_RoundTripsDTO 2026-10-22T08:23:46.319557405Z --- PASS: TestImagesList_JSONShape_RoundTripsDTO (0.00s) 2026-10-22T08:23:46.319567604Z === RUN TestPinList_JSONShape_RoundTripsTags 2026-10-22T08:23:46.319576632Z --- PASS: TestPinList_JSONShape_RoundTripsTags (0.00s) 2026-10-22T08:23:46.319585596Z === RUN TestBackupList_JSONShape_RoundTripsJobs 2026-10-22T08:23:46.319594511Z --- PASS: TestBackupList_JSONShape_RoundTripsJobs (0.00s) 2026-10-22T08:23:46.31960303Z === RUN TestTokenList_JSONShape_RoundTripsTokens 2026-10-22T08:23:46.319612325Z --- PASS: TestTokenList_JSONShape_RoundTripsTokens (0.00s) 2026-10-22T08:23:46.319621656Z === RUN TestRemotesList_JSONShape_RoundTripsRemoteObjects 2026-10-22T08:23:46.319631515Z --- PASS: TestRemotesList_JSONShape_RoundTripsRemoteObjects (0.00s) 2026-10-22T08:23:46.319655892Z === RUN TestWriteJSON_ProducesValidIndentedJSON 2026-10-22T08:23:46.319672085Z --- PASS: TestWriteJSON_ProducesValidIndentedJSON (0.00s) 2026-10-22T08:23:46.319686319Z === RUN TestHasLocalTLSCapableEntrypoint 2026-10-22T08:23:46.319701521Z === RUN TestHasLocalTLSCapableEntrypoint/smart_tcp 2026-10-22T08:23:46.319719018Z === RUN TestHasLocalTLSCapableEntrypoint/tls_mux 2026-10-22T08:23:46.319735779Z === RUN TestHasLocalTLSCapableEntrypoint/plain_tcp 2026-10-22T08:23:46.319748125Z === RUN TestHasLocalTLSCapableEntrypoint/empty 2026-10-22T08:23:46.319757682Z --- PASS: TestHasLocalTLSCapableEntrypoint (0.00s) 2026-10-22T08:23:46.319774043Z --- PASS: TestHasLocalTLSCapableEntrypoint/smart_tcp (0.00s) 2026-10-22T08:23:46.319805986Z --- PASS: TestHasLocalTLSCapableEntrypoint/tls_mux (0.00s) 2026-10-22T08:23:46.319829992Z --- PASS: TestHasLocalTLSCapableEntrypoint/plain_tcp (0.00s) 2026-10-22T08:23:46.319847283Z --- PASS: TestHasLocalTLSCapableEntrypoint/empty (0.00s) 2026-10-22T08:23:46.319856726Z === RUN TestTagAndPushPreservesExactSourceReference 2026-10-22T08:23:46.319865812Z --- PASS: TestTagAndPushPreservesExactSourceReference (0.00s) 2026-10-22T08:23:46.319874591Z === RUN TestTagAndPushRejectsMissingSourceReference 2026-10-22T08:23:46.319884349Z --- PASS: TestTagAndPushRejectsMissingSourceReference (0.00s) 2026-10-22T08:23:46.319892957Z === RUN TestExchangeRegistryAuth_Success 2026-10-22T08:23:46.31990151Z --- PASS: TestExchangeRegistryAuth_Success (0.00s) 2026-10-22T08:23:46.319912373Z === RUN TestExchangeRegistryAuth_VerifyAuthFails 2026-10-22T08:23:46.319921798Z --- PASS: TestExchangeRegistryAuth_VerifyAuthFails (0.00s) 2026-10-22T08:23:46.319930768Z === RUN TestExchangeRegistryAuth_TokenNotValid 2026-10-22T08:23:46.319939866Z --- PASS: TestExchangeRegistryAuth_TokenNotValid (0.00s) 2026-10-22T08:23:46.319948774Z === RUN TestIntegration_TagAndPush_NativeRegistry 2026-10-22T08:23:46.31995736Z === PAUSE TestIntegration_TagAndPush_NativeRegistry 2026-10-22T08:23:46.319967144Z === RUN TestResolveImageTarget_BareNameUsesTargetRegistry 2026-10-22T08:23:46.319976472Z === RUN TestResolveImageTarget_BareNameUsesTargetRegistry/bare_name 2026-10-22T08:23:46.319987634Z === RUN TestResolveImageTarget_BareNameUsesTargetRegistry/bare_name_with_tag 2026-10-22T08:23:46.319999599Z === RUN TestResolveImageTarget_BareNameUsesTargetRegistry/namespaced_name 2026-10-22T08:23:46.320009465Z === RUN TestResolveImageTarget_BareNameUsesTargetRegistry/bare_digest 2026-10-22T08:23:46.320018783Z --- PASS: TestResolveImageTarget_BareNameUsesTargetRegistry (0.00s) 2026-10-22T08:23:46.320038899Z --- PASS: TestResolveImageTarget_BareNameUsesTargetRegistry/bare_name (0.00s) 2026-10-22T08:23:46.320060031Z --- PASS: TestResolveImageTarget_BareNameUsesTargetRegistry/bare_name_with_tag (0.00s) 2026-10-22T08:23:46.320080973Z --- PASS: TestResolveImageTarget_BareNameUsesTargetRegistry/namespaced_name (0.00s) 2026-10-22T08:23:46.320100013Z --- PASS: TestResolveImageTarget_BareNameUsesTargetRegistry/bare_digest (0.00s) 2026-10-22T08:23:46.320110463Z === RUN TestResolveImageTarget_QualifiedRefMatchingTarget 2026-10-22T08:23:46.320120133Z --- PASS: TestResolveImageTarget_QualifiedRefMatchingTarget (0.00s) 2026-10-22T08:23:46.320129322Z === RUN TestResolveImageTarget_RejectsMismatchedRegistry 2026-10-22T08:23:46.320139248Z === RUN TestResolveImageTarget_RejectsMismatchedRegistry/other.example.org/myapp:v1 2026-10-22T08:23:46.320149199Z === RUN TestResolveImageTarget_RejectsMismatchedRegistry/reg.example.com:443/myapp:v1 2026-10-22T08:23:46.320158447Z --- PASS: TestResolveImageTarget_RejectsMismatchedRegistry (0.00s) 2026-10-22T08:23:46.320181807Z --- PASS: TestResolveImageTarget_RejectsMismatchedRegistry/other.example.org/myapp:v1 (0.00s) 2026-10-22T08:23:46.320200401Z --- PASS: TestResolveImageTarget_RejectsMismatchedRegistry/reg.example.com:443/myapp:v1 (0.00s) 2026-10-22T08:23:46.320206517Z === RUN TestTargetRegistryDomain_RemoteFallsBackToStatusForOlderServers 2026-10-22T08:23:46.32022736Z --- PASS: TestTargetRegistryDomain_RemoteFallsBackToStatusForOlderServers (0.00s) 2026-10-22T08:23:46.32024221Z === RUN TestTargetRegistryDomain_LocalSocketUsesStatus 2026-10-22T08:23:46.320252739Z --- PASS: TestTargetRegistryDomain_LocalSocketUsesStatus (0.00s) 2026-10-22T08:23:46.320261293Z === RUN TestTargetRegistryDomain_Errors 2026-10-22T08:23:46.320271945Z === RUN TestTargetRegistryDomain_Errors/verify_fails 2026-10-22T08:23:46.320292922Z === RUN TestTargetRegistryDomain_Errors/token_without_admin_scope 2026-10-22T08:23:46.320307609Z === RUN TestTargetRegistryDomain_Errors/token_invalid 2026-10-22T08:23:46.32032112Z === RUN TestTargetRegistryDomain_Errors/older_server_denies_status 2026-10-22T08:23:46.32033282Z === RUN TestTargetRegistryDomain_Errors/no_registry_domain_configured 2026-10-22T08:23:46.320343738Z --- PASS: TestTargetRegistryDomain_Errors (0.00s) 2026-10-22T08:23:46.320364865Z --- PASS: TestTargetRegistryDomain_Errors/verify_fails (0.00s) 2026-10-22T08:23:46.320388091Z --- PASS: TestTargetRegistryDomain_Errors/token_without_admin_scope (0.00s) 2026-10-22T08:23:46.320411284Z --- PASS: TestTargetRegistryDomain_Errors/token_invalid (0.00s) 2026-10-22T08:23:46.320434399Z --- PASS: TestTargetRegistryDomain_Errors/older_server_denies_status (0.00s) 2026-10-22T08:23:46.320460656Z --- PASS: TestTargetRegistryDomain_Errors/no_registry_domain_configured (0.00s) 2026-10-22T08:23:46.320471663Z === RUN TestInferPushRemote_UsesUniqueMatchingSavedRemote 2026-10-22T08:23:46.320481466Z --- PASS: TestInferPushRemote_UsesUniqueMatchingSavedRemote (0.00s) 2026-10-22T08:23:46.320490744Z === RUN TestInferPushRemote_ReturnsAmbiguousErrorWhenMultipleRemotesMatch 2026-10-22T08:23:46.320498174Z --- PASS: TestInferPushRemote_ReturnsAmbiguousErrorWhenMultipleRemotesMatch (0.00s) 2026-10-22T08:23:46.320504156Z === RUN TestInferPushRemote_SkipsGuessWhenExplicitRemoteSelected 2026-10-22T08:23:46.320513122Z --- PASS: TestInferPushRemote_SkipsGuessWhenExplicitRemoteSelected (0.00s) 2026-10-22T08:23:46.32052378Z === RUN TestInferPushRemote_SkipsGuessWhenActiveRemoteConfigured 2026-10-22T08:23:46.320539713Z --- PASS: TestInferPushRemote_SkipsGuessWhenActiveRemoteConfigured (0.00s) 2026-10-22T08:23:46.320554006Z === RUN TestInferPushRemote_FailsSafeWhenSomeRemotesCannotBeProbed 2026-10-22T08:23:46.320568657Z --- PASS: TestInferPushRemote_FailsSafeWhenSomeRemotesCannotBeProbed (0.00s) 2026-10-22T08:23:46.320588387Z === RUN TestInferRemoteForRepository_ReturnsAmbiguousErrorWhenMultipleRemotesMatch 2026-10-22T08:23:46.320603889Z --- PASS: TestInferRemoteForRepository_ReturnsAmbiguousErrorWhenMultipleRemotesMatch (0.00s) 2026-10-22T08:23:46.32061492Z === RUN TestValidateBuildArg 2026-10-22T08:23:46.320626464Z === RUN TestValidateBuildArg/valid_simple 2026-10-22T08:23:46.320635587Z === RUN TestValidateBuildArg/valid_with_underscore_key 2026-10-22T08:23:46.320644695Z === RUN TestValidateBuildArg/valid_with_numbers_in_key 2026-10-22T08:23:46.320653549Z === RUN TestValidateBuildArg/valid_empty_value 2026-10-22T08:23:46.320662132Z === RUN TestValidateBuildArg/valid_complex_value 2026-10-22T08:23:46.320674341Z === RUN TestValidateBuildArg/invalid_no_equals 2026-10-22T08:23:46.320713933Z === RUN TestValidateBuildArg/invalid_starts_with_number 2026-10-22T08:23:46.320735257Z === RUN TestValidateBuildArg/invalid_starts_with_dash 2026-10-22T08:23:46.320751776Z === RUN TestValidateBuildArg/invalid_special_chars_in_key 2026-10-22T08:23:46.320768593Z === RUN TestValidateBuildArg/invalid_empty_string 2026-10-22T08:23:46.320782742Z === RUN TestValidateBuildArg/invalid_equals_only 2026-10-22T08:23:46.320796621Z --- PASS: TestValidateBuildArg (0.00s) 2026-10-22T08:23:46.320822302Z --- PASS: TestValidateBuildArg/valid_simple (0.00s) 2026-10-22T08:23:46.320859289Z --- PASS: TestValidateBuildArg/valid_with_underscore_key (0.00s) 2026-10-22T08:23:46.320890623Z --- PASS: TestValidateBuildArg/valid_with_numbers_in_key (0.00s) 2026-10-22T08:23:46.320916854Z --- PASS: TestValidateBuildArg/valid_empty_value (0.00s) 2026-10-22T08:23:46.320938882Z --- PASS: TestValidateBuildArg/valid_complex_value (0.00s) 2026-10-22T08:23:46.320959724Z --- PASS: TestValidateBuildArg/invalid_no_equals (0.00s) 2026-10-22T08:23:46.320983546Z --- PASS: TestValidateBuildArg/invalid_starts_with_number (0.00s) 2026-10-22T08:23:46.321004913Z --- PASS: TestValidateBuildArg/invalid_starts_with_dash (0.00s) 2026-10-22T08:23:46.321026432Z --- PASS: TestValidateBuildArg/invalid_special_chars_in_key (0.00s) 2026-10-22T08:23:46.321048714Z --- PASS: TestValidateBuildArg/invalid_empty_string (0.00s) 2026-10-22T08:23:46.321069526Z --- PASS: TestValidateBuildArg/invalid_equals_only (0.00s) 2026-10-22T08:23:46.321085036Z === RUN TestParseImageRef 2026-10-22T08:23:46.321097533Z === RUN TestParseImageRef/full_ref 2026-10-22T08:23:46.321111328Z === RUN TestParseImageRef/no_tag 2026-10-22T08:23:46.321124752Z === RUN TestParseImageRef/latest_tag 2026-10-22T08:23:46.321142113Z === RUN TestParseImageRef/no_slash 2026-10-22T08:23:46.321169739Z === RUN TestParseImageRef/namespace_without_registry_host 2026-10-22T08:23:46.321189151Z === RUN TestParseImageRef/localhost 2026-10-22T08:23:46.32120838Z === RUN TestParseImageRef/registry_with_port 2026-10-22T08:23:46.321219008Z === RUN TestParseImageRef/registry_with_namespace 2026-10-22T08:23:46.321228279Z --- PASS: TestParseImageRef (0.00s) 2026-10-22T08:23:46.321243739Z --- PASS: TestParseImageRef/full_ref (0.00s) 2026-10-22T08:23:46.321260898Z --- PASS: TestParseImageRef/no_tag (0.00s) 2026-10-22T08:23:46.321281774Z --- PASS: TestParseImageRef/latest_tag (0.00s) 2026-10-22T08:23:46.32129681Z --- PASS: TestParseImageRef/no_slash (0.00s) 2026-10-22T08:23:46.32131419Z --- PASS: TestParseImageRef/namespace_without_registry_host (0.00s) 2026-10-22T08:23:46.321330346Z --- PASS: TestParseImageRef/localhost (0.00s) 2026-10-22T08:23:46.321347499Z --- PASS: TestParseImageRef/registry_with_port (0.00s) 2026-10-22T08:23:46.321367381Z --- PASS: TestParseImageRef/registry_with_namespace (0.00s) 2026-10-22T08:23:46.321378917Z === RUN TestClassifyPushArgument 2026-10-22T08:23:46.321391919Z === RUN TestClassifyPushArgument/tagged_image_latest 2026-10-22T08:23:46.321402992Z === RUN TestClassifyPushArgument/tagged_image_semver 2026-10-22T08:23:46.321412308Z === RUN TestClassifyPushArgument/registry_qualified_image 2026-10-22T08:23:46.321426737Z === RUN TestClassifyPushArgument/registry_qualified_digest 2026-10-22T08:23:46.321436013Z === RUN TestClassifyPushArgument/legacy_domain 2026-10-22T08:23:46.321444559Z === RUN TestClassifyPushArgument/bare_image_name 2026-10-22T08:23:46.321457985Z --- PASS: TestClassifyPushArgument (0.00s) 2026-10-22T08:23:46.321475218Z --- PASS: TestClassifyPushArgument/tagged_image_latest (0.00s) 2026-10-22T08:23:46.321494396Z --- PASS: TestClassifyPushArgument/tagged_image_semver (0.00s) 2026-10-22T08:23:46.321517552Z --- PASS: TestClassifyPushArgument/registry_qualified_image (0.00s) 2026-10-22T08:23:46.32153931Z --- PASS: TestClassifyPushArgument/registry_qualified_digest (0.00s) 2026-10-22T08:23:46.321558669Z --- PASS: TestClassifyPushArgument/legacy_domain (0.00s) 2026-10-22T08:23:46.321579877Z --- PASS: TestClassifyPushArgument/bare_image_name (0.00s) 2026-10-22T08:23:46.321589072Z === RUN TestBuildAndPush_BuildArgs 2026-10-22T08:23:46.321597735Z --- PASS: TestBuildAndPush_BuildArgs (0.00s) 2026-10-22T08:23:46.321606138Z === RUN TestBuildImageArgsInjectsGitBuildArgs 2026-10-22T08:23:46.321615032Z --- PASS: TestBuildImageArgsInjectsGitBuildArgs (0.00s) 2026-10-22T08:23:46.321623825Z === RUN TestBuildImageArgsUserArgsOverrideDefaults 2026-10-22T08:23:46.321637519Z --- PASS: TestBuildImageArgsUserArgsOverrideDefaults (0.01s) 2026-10-22T08:23:46.321651116Z === RUN TestParseTagRef 2026-10-22T08:23:46.32167013Z === RUN TestParseTagRef/github_tag_ref 2026-10-22T08:23:46.321689664Z === RUN TestParseTagRef/peeled_tag_ref 2026-10-22T08:23:46.321702262Z === RUN TestParseTagRef/branch_ref 2026-10-22T08:23:46.321713842Z === RUN TestParseTagRef/empty 2026-10-22T08:23:46.321727127Z --- PASS: TestParseTagRef (0.00s) 2026-10-22T08:23:46.32173906Z --- PASS: TestParseTagRef/github_tag_ref (0.00s) 2026-10-22T08:23:46.321749892Z --- PASS: TestParseTagRef/peeled_tag_ref (0.00s) 2026-10-22T08:23:46.321781132Z --- PASS: TestParseTagRef/branch_ref (0.00s) 2026-10-22T08:23:46.321799222Z --- PASS: TestParseTagRef/empty (0.00s) 2026-10-22T08:23:46.321810722Z === RUN TestVersionFromTagRefs 2026-10-22T08:23:46.321819876Z === RUN TestVersionFromTagRefs/github_ref_tag 2026-10-22T08:23:46.321829299Z === RUN TestVersionFromTagRefs/github_ref_type_and_name 2026-10-22T08:23:46.321841906Z === RUN TestVersionFromTagRefs/gitlab_commit_tag 2026-10-22T08:23:46.321851807Z === RUN TestVersionFromTagRefs/azure_source_branch_tag_ref 2026-10-22T08:23:46.321860294Z === RUN TestVersionFromTagRefs/no_tag_refs 2026-10-22T08:23:46.321871052Z --- PASS: TestVersionFromTagRefs (0.00s) 2026-10-22T08:23:46.321893501Z --- PASS: TestVersionFromTagRefs/github_ref_tag (0.00s) 2026-10-22T08:23:46.321917382Z --- PASS: TestVersionFromTagRefs/github_ref_type_and_name (0.00s) 2026-10-22T08:23:46.321939096Z --- PASS: TestVersionFromTagRefs/gitlab_commit_tag (0.00s) 2026-10-22T08:23:46.321976443Z --- PASS: TestVersionFromTagRefs/azure_source_branch_tag_ref (0.00s) 2026-10-22T08:23:46.32199996Z --- PASS: TestVersionFromTagRefs/no_tag_refs (0.00s) 2026-10-22T08:23:46.322014626Z === RUN TestBuildImageArgs_CustomDockerfile 2026-10-22T08:23:46.322026415Z --- PASS: TestBuildImageArgs_CustomDockerfile (0.00s) 2026-10-22T08:23:46.322039966Z === RUN TestParseDockerfileLabels 2026-10-22T08:23:46.322049258Z === RUN TestParseDockerfileLabels/simple_label 2026-10-22T08:23:46.322058158Z === RUN TestParseDockerfileLabels/multiple_labels 2026-10-22T08:23:46.322067344Z === RUN TestParseDockerfileLabels/multi-label_on_one_line 2026-10-22T08:23:46.322076159Z === RUN TestParseDockerfileLabels/unquoted_value 2026-10-22T08:23:46.322086698Z === RUN TestParseDockerfileLabels/single-quoted_value 2026-10-22T08:23:46.322096031Z === RUN TestParseDockerfileLabels/non-gordon_labels_ignored 2026-10-22T08:23:46.322110214Z === RUN TestParseDockerfileLabels/comma-separated_domains 2026-10-22T08:23:46.322121976Z === RUN TestParseDockerfileLabels/no_labels 2026-10-22T08:23:46.322135574Z === RUN TestParseDockerfileLabels/comments_and_empty_lines 2026-10-22T08:23:46.322150736Z --- PASS: TestParseDockerfileLabels (0.00s) 2026-10-22T08:23:46.322175069Z --- PASS: TestParseDockerfileLabels/simple_label (0.00s) 2026-10-22T08:23:46.322196395Z --- PASS: TestParseDockerfileLabels/multiple_labels (0.00s) 2026-10-22T08:23:46.322214367Z --- PASS: TestParseDockerfileLabels/multi-label_on_one_line (0.00s) 2026-10-22T08:23:46.322232756Z --- PASS: TestParseDockerfileLabels/unquoted_value (0.00s) 2026-10-22T08:23:46.322249711Z --- PASS: TestParseDockerfileLabels/single-quoted_value (0.00s) 2026-10-22T08:23:46.322274669Z --- PASS: TestParseDockerfileLabels/non-gordon_labels_ignored (0.00s) 2026-10-22T08:23:46.32229697Z --- PASS: TestParseDockerfileLabels/comma-separated_domains (0.00s) 2026-10-22T08:23:46.32231521Z --- PASS: TestParseDockerfileLabels/no_labels (0.00s) 2026-10-22T08:23:46.322337479Z --- PASS: TestParseDockerfileLabels/comments_and_empty_lines (0.00s) 2026-10-22T08:23:46.322354682Z === RUN TestParseDockerfileLabels_NonExistent 2026-10-22T08:23:46.32236441Z --- PASS: TestParseDockerfileLabels_NonExistent (0.00s) 2026-10-22T08:23:46.322373356Z === RUN TestDetectImageName_FromDockerfileLabels 2026-10-22T08:23:46.322387754Z --- PASS: TestDetectImageName_FromDockerfileLabels (0.00s) 2026-10-22T08:23:46.322397423Z === RUN TestDetectImageName_FallbackToDir 2026-10-22T08:23:46.322406432Z --- PASS: TestDetectImageName_FallbackToDir (0.00s) 2026-10-22T08:23:46.322417231Z === RUN TestSplitLabelPairs 2026-10-22T08:23:46.322426549Z === RUN TestSplitLabelPairs/single_pair 2026-10-22T08:23:46.322436971Z === RUN TestSplitLabelPairs/two_pairs 2026-10-22T08:23:46.322449801Z === RUN TestSplitLabelPairs/unquoted 2026-10-22T08:23:46.322459628Z === RUN TestSplitLabelPairs/quoted_with_spaces_in_value 2026-10-22T08:23:46.322468339Z --- PASS: TestSplitLabelPairs (0.00s) 2026-10-22T08:23:46.322483317Z --- PASS: TestSplitLabelPairs/single_pair (0.00s) 2026-10-22T08:23:46.322497687Z --- PASS: TestSplitLabelPairs/two_pairs (0.00s) 2026-10-22T08:23:46.322512651Z --- PASS: TestSplitLabelPairs/unquoted (0.00s) 2026-10-22T08:23:46.322531626Z --- PASS: TestSplitLabelPairs/quoted_with_spaces_in_value (0.00s) 2026-10-22T08:23:46.322541283Z === RUN TestGetGitVersionNoTagsReturnsFallbackAndWarns 2026-10-22T08:23:46.322551222Z --- PASS: TestGetGitVersionNoTagsReturnsFallbackAndWarns (0.01s) 2026-10-22T08:23:46.322559562Z === RUN TestParseLabelPair 2026-10-22T08:23:46.322577114Z === RUN TestParseLabelPair/quoted 2026-10-22T08:23:46.322590254Z === RUN TestParseLabelPair/unquoted 2026-10-22T08:23:46.322603347Z === RUN TestParseLabelPair/single_quoted 2026-10-22T08:23:46.322612506Z === RUN TestParseLabelPair/empty_value 2026-10-22T08:23:46.322621066Z === RUN TestParseLabelPair/no_equals 2026-10-22T08:23:46.322638761Z --- PASS: TestParseLabelPair (0.00s) 2026-10-22T08:23:46.322675717Z --- PASS: TestParseLabelPair/quoted (0.00s) 2026-10-22T08:23:46.322698084Z --- PASS: TestParseLabelPair/unquoted (0.00s) 2026-10-22T08:23:46.322718521Z --- PASS: TestParseLabelPair/single_quoted (0.00s) 2026-10-22T08:23:46.32273979Z --- PASS: TestParseLabelPair/empty_value (0.00s) 2026-10-22T08:23:46.322759291Z --- PASS: TestParseLabelPair/no_equals (0.00s) 2026-10-22T08:23:46.32277275Z === RUN TestTLSStatus_HumanOutput 2026-10-22T08:23:46.322802847Z tls_test.go:58: Human output: 2026-10-22T08:23:46.322820424Z Public TLS / ACME Status 2026-10-22T08:23:46.322832369Z ACME: enabled 2026-10-22T08:23:46.322846111Z Configured Mode: acme 2026-10-22T08:23:46.322861732Z Effective Mode: acme-staging 2026-10-22T08:23:46.322886612Z Reason: configured 2026-10-22T08:23:46.322906086Z Token Source: env 2026-10-22T08:23:46.322921845Z 2026-10-22T08:23:46.322941877Z Certificates 2026-10-22T08:23:46.322961069Z ID: cert-abc123 2026-10-22T08:23:46.322985779Z Names: example.com, www.example.com 2026-10-22T08:23:46.323005969Z Status: valid 2026-10-22T08:23:46.32303065Z Not After: 2026-05-29 12:00:00 2026-10-22T08:23:46.323046468Z 2026-10-22T08:23:46.323064162Z Route Coverage 2026-10-22T08:23:46.323092201Z example.com covered=yes covered_by=cert-abc123 2026-10-22T08:23:46.323122831Z internal.local covered=no error=self-signed cert 2026-10-22T08:23:46.323135958Z 2026-10-22T08:23:46.323148144Z Errors 2026-10-22T08:23:46.323170215Z route internal.local has no ACME cert 2026-10-22T08:23:46.323179456Z 2026-10-22T08:23:46.323187874Z --- PASS: TestTLSStatus_HumanOutput (0.00s) 2026-10-22T08:23:46.32320084Z === RUN TestTLSStatus_JSONOutput 2026-10-22T08:23:46.323215751Z --- PASS: TestTLSStatus_JSONOutput (0.00s) 2026-10-22T08:23:46.323224984Z === RUN TestTrafficCommandExists 2026-10-22T08:23:46.3232352Z --- PASS: TestTrafficCommandExists (0.00s) 2026-10-22T08:23:46.323247725Z === RUN TestTrafficStatusRejectsArgs 2026-10-22T08:23:46.323258786Z --- PASS: TestTrafficStatusRejectsArgs (0.00s) 2026-10-22T08:23:46.323267093Z === RUN TestTrafficStatusHumanOutput 2026-10-22T08:23:46.323278906Z --- PASS: TestTrafficStatusHumanOutput (0.00s) 2026-10-22T08:23:46.323288154Z === RUN TestTrafficStatusJSONOutput 2026-10-22T08:23:46.323296901Z --- PASS: TestTrafficStatusJSONOutput (0.00s) 2026-10-22T08:23:46.32330857Z === RUN TestRunTrafficStatusUsesControlPlane 2026-10-22T08:23:46.323319707Z --- PASS: TestRunTrafficStatusUsesControlPlane (0.00s) 2026-10-22T08:23:46.32332902Z === RUN TestRemoteTrafficStatusControlPlaneStillRenders 2026-10-22T08:23:46.323343579Z --- PASS: TestRemoteTrafficStatusControlPlaneStillRenders (0.00s) 2026-10-22T08:23:46.323357289Z === RUN TestPresentationHelpers 2026-10-22T08:23:46.323370529Z --- PASS: TestPresentationHelpers (0.00s) 2026-10-22T08:23:46.323379588Z === RUN TestUIAdoptionRuntimeSeams 2026-10-22T08:23:46.323388101Z --- PASS: TestUIAdoptionRuntimeSeams (0.00s) 2026-10-22T08:23:46.323396271Z === RUN TestRunVolumesList_ShowsVolumes 2026-10-22T08:23:46.323413791Z --- PASS: TestRunVolumesList_ShowsVolumes (0.00s) 2026-10-22T08:23:46.323424985Z === RUN TestRunVolumesList_JSON 2026-10-22T08:23:46.323433919Z --- PASS: TestRunVolumesList_JSON (0.00s) 2026-10-22T08:23:46.323452345Z === RUN TestRunVolumesPrune_JSONExecutesActualPrune 2026-10-22T08:23:46.323463183Z --- PASS: TestRunVolumesPrune_JSONExecutesActualPrune (0.00s) 2026-10-22T08:23:46.32347176Z === RUN TestRunVolumesPrune_DryRun 2026-10-22T08:23:46.323482111Z --- PASS: TestRunVolumesPrune_DryRun (0.00s) 2026-10-22T08:23:46.323493498Z === CONT TestIntegration_TagAndPush_NativeRegistry 2026-10-22T08:23:46.32351027Z 2026-10-22T08:23:45Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestIntegration_TagAndPush_NativeRegistry3778230020/001 2026-10-22T08:23:46.323531808Z 2026-10-22T08:23:45Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestIntegration_TagAndPush_NativeRegistry3778230020/001 2026-10-22T08:23:46.323550869Z 2026-10-22T08:23:45Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=58fb0a48-b11d-4df3-934f-30580e7a6660 2026-10-22T08:23:46.32357942Z 2026-10-22T08:23:45Z INF blob upload finished adapter=filesystem digest=sha256:fc399e5dc9e1a332e8d28502e8b4e0b68aff7e160f12955e5c7d58d4ebee26fc layer=adapter name=testapp uuid=58fb0a48-b11d-4df3-934f-30580e7a6660 2026-10-22T08:23:46.323601584Z 2026-10-22T08:23:45Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=e286ea6f-6fa4-41f7-9090-f3c2a3eced98 2026-10-22T08:23:46.323624842Z 2026-10-22T08:23:45Z INF blob upload finished adapter=filesystem digest=sha256:af412399b42e315936940a3f1770880ce9e50ccd2b210859df8e37964f0c9647 layer=adapter name=testapp uuid=e286ea6f-6fa4-41f7-9090-f3c2a3eced98 2026-10-22T08:23:46.323644917Z 2026-10-22T08:23:45Z INF manifest stored adapter=filesystem layer=adapter name=testapp reference=v1.0.0 2026-10-22T08:23:46.323661651Z 2026-10-22T08:23:45Z INF manifest stored adapter=filesystem layer=adapter name=testapp reference=latest 2026-10-22T08:23:46.323678265Z --- PASS: TestIntegration_TagAndPush_NativeRegistry (0.06s) 2026-10-22T08:23:46.323689577Z PASS 2026-10-22T08:23:46.323701902Z ok github.com/bnema/gordon/internal/adapters/in/cli 1.297s 2026-10-22T08:23:46.32371252Z ? github.com/bnema/gordon/internal/adapters/in/cli/mocks [no test files] 2026-10-22T08:23:48.569961691Z === RUN TestClientApplyApp_SendsIdempotencyKey 2026-10-22T08:23:48.570019404Z --- PASS: TestClientApplyApp_SendsIdempotencyKey (0.00s) 2026-10-22T08:23:48.570039749Z === RUN TestClientDeployApp_GatewayErrorIsOutcomeUnknownWithoutReplay 2026-10-22T08:23:48.570063822Z --- PASS: TestClientDeployApp_GatewayErrorIsOutcomeUnknownWithoutReplay (0.00s) 2026-10-22T08:23:48.570087972Z === RUN TestClientOperationByKey_RecoveryPath 2026-10-22T08:23:48.570108952Z --- PASS: TestClientOperationByKey_RecoveryPath (0.00s) 2026-10-22T08:23:48.570129804Z === RUN TestClientLifecycle_MutationsCarryKeys 2026-10-22T08:23:48.570147761Z --- PASS: TestClientLifecycle_MutationsCarryKeys (0.00s) 2026-10-22T08:23:48.570156731Z === RUN TestClientRestartApp_SendsServiceScope 2026-10-22T08:23:48.570171771Z --- PASS: TestClientRestartApp_SendsServiceScope (0.00s) 2026-10-22T08:23:48.570187639Z === RUN TestClientDeployApp_AcceptedRunningJournal 2026-10-22T08:23:48.570205574Z --- PASS: TestClientDeployApp_AcceptedRunningJournal (0.00s) 2026-10-22T08:23:48.570229457Z === RUN TestClientDeployApp_ConflictDecodesJournal 2026-10-22T08:23:48.570245609Z --- PASS: TestClientDeployApp_ConflictDecodesJournal (0.00s) 2026-10-22T08:23:48.570258004Z === RUN TestClientStopApp_ConflictDecodesJournal 2026-10-22T08:23:48.570275139Z --- PASS: TestClientStopApp_ConflictDecodesJournal (0.00s) 2026-10-22T08:23:48.570285972Z === RUN TestClientDeployApp_ConflictWithoutJournalFallsBackToHTTPError 2026-10-22T08:23:48.57031389Z --- PASS: TestClientDeployApp_ConflictWithoutJournalFallsBackToHTTPError (0.00s) 2026-10-22T08:23:48.57033201Z === RUN TestClientListAppSecrets_ServiceFilterAndErrorContext 2026-10-22T08:23:48.570342117Z --- PASS: TestClientListAppSecrets_ServiceFilterAndErrorContext (0.00s) 2026-10-22T08:23:48.570365118Z === RUN TestClientReloadDoesNotRetryGatewayResponse 2026-10-22T08:23:48.570382403Z --- PASS: TestClientReloadDoesNotRetryGatewayResponse (0.00s) 2026-10-22T08:23:48.570403025Z === RUN TestClientGetStatusDoesNotRetryAuthenticationRejection 2026-10-22T08:23:48.570424228Z --- PASS: TestClientGetStatusDoesNotRetryAuthenticationRejection (0.00s) 2026-10-22T08:23:48.57044214Z === RUN TestClientGetStatusRetriesTransientGatewayResponse 2026-10-22T08:23:48.570466193Z --- PASS: TestClientGetStatusRetriesTransientGatewayResponse (0.03s) 2026-10-22T08:23:48.570488223Z === RUN TestClientGetStatusRetriesTransientTransportFailure 2026-10-22T08:23:48.570509759Z --- PASS: TestClientGetStatusRetriesTransientTransportFailure (0.03s) 2026-10-22T08:23:48.570532165Z === RUN TestClientGetStatusReportsTransportContextAfterRetryExhaustion 2026-10-22T08:23:48.57054836Z --- PASS: TestClientGetStatusReportsTransportContextAfterRetryExhaustion (0.03s) 2026-10-22T08:23:48.570562977Z === RUN TestClientWithInsecureTLS_AllowsSelfSignedCertificate 2026-10-22T08:23:48.570583196Z 2026/10/22 08:23:45 http: TLS handshake error from 127.0.0.1:37096: remote error: tls: bad certificate 2026-10-22T08:23:48.570609616Z 2026/10/22 08:23:45 http: TLS handshake error from 127.0.0.1:37106: remote error: tls: bad certificate 2026-10-22T08:23:48.570628288Z 2026/10/22 08:23:46 http: TLS handshake error from 127.0.0.1:37114: remote error: tls: bad certificate 2026-10-22T08:23:48.570644611Z WARNING: TLS certificate verification disabled for https://127.0.0.1:40893 2026-10-22T08:23:48.570685179Z 2026/10/22 08:23:47 http: TLS handshake error from 127.0.0.1:59684: remote error: tls: bad certificate 2026-10-22T08:23:48.570707053Z --- PASS: TestClientWithInsecureTLS_AllowsSelfSignedCertificate (1.90s) 2026-10-22T08:23:48.570720596Z === RUN TestClientGetTrafficStatus 2026-10-22T08:23:48.570750538Z --- PASS: TestClientGetTrafficStatus (0.00s) 2026-10-22T08:23:48.570772338Z === RUN TestClientGetCA 2026-10-22T08:23:48.570794191Z --- PASS: TestClientGetCA (0.00s) 2026-10-22T08:23:48.570812125Z === RUN TestClientGetCADisabled 2026-10-22T08:23:48.570832655Z --- PASS: TestClientGetCADisabled (0.00s) 2026-10-22T08:23:48.570848924Z === RUN TestClientGetTLSStatus 2026-10-22T08:23:48.570864052Z --- PASS: TestClientGetTLSStatus (0.00s) 2026-10-22T08:23:48.570872273Z === RUN TestClientListImages 2026-10-22T08:23:48.57088361Z --- PASS: TestClientListImages (0.00s) 2026-10-22T08:23:48.570909968Z === RUN TestClientPruneImages 2026-10-22T08:23:48.570929301Z --- PASS: TestClientPruneImages (0.00s) 2026-10-22T08:23:48.570941878Z === RUN TestParseResponse_CapsErrorBodySize 2026-10-22T08:23:48.570955202Z --- PASS: TestParseResponse_CapsErrorBodySize (0.02s) 2026-10-22T08:23:48.570973511Z === RUN TestStreamLogs_CapsErrorBodySize 2026-10-22T08:23:48.570989068Z --- PASS: TestStreamLogs_CapsErrorBodySize (0.03s) 2026-10-22T08:23:48.571001081Z === RUN TestRequestWithRetry_CapsErrorBodySize 2026-10-22T08:23:48.571015755Z --- PASS: TestRequestWithRetry_CapsErrorBodySize (0.03s) 2026-10-22T08:23:48.571028065Z === RUN TestExchangeRegistryToken_Success 2026-10-22T08:23:48.571049037Z --- PASS: TestExchangeRegistryToken_Success (0.00s) 2026-10-22T08:23:48.571068362Z === RUN TestExchangeRegistryToken_Unauthorized 2026-10-22T08:23:48.571089262Z --- PASS: TestExchangeRegistryToken_Unauthorized (0.00s) 2026-10-22T08:23:48.57111149Z === RUN TestExchangeRegistryToken_EmptyToken 2026-10-22T08:23:48.571128205Z --- PASS: TestExchangeRegistryToken_EmptyToken (0.00s) 2026-10-22T08:23:48.571143003Z === RUN TestHTTPError_ErrorString 2026-10-22T08:23:48.571162114Z --- PASS: TestHTTPError_ErrorString (0.00s) 2026-10-22T08:23:48.571181081Z === RUN TestHTTPError_Unwrap 2026-10-22T08:23:48.571199317Z --- PASS: TestHTTPError_Unwrap (0.00s) 2026-10-22T08:23:48.571220376Z === RUN TestParseErrorResponse_ReturnsHTTPError 2026-10-22T08:23:48.571238176Z --- PASS: TestParseErrorResponse_ReturnsHTTPError (0.00s) 2026-10-22T08:23:48.571260569Z === RUN TestParseErrorResponse_AppErrorMessage 2026-10-22T08:23:48.571282106Z --- PASS: TestParseErrorResponse_AppErrorMessage (0.00s) 2026-10-22T08:23:48.57129383Z === RUN TestParseErrorResponse_DeployFailureFields 2026-10-22T08:23:48.57131686Z --- PASS: TestParseErrorResponse_DeployFailureFields (0.00s) 2026-10-22T08:23:48.571338483Z === RUN TestParseErrorResponse_ErrorOnlyJSONNotStructured 2026-10-22T08:23:48.571359952Z --- PASS: TestParseErrorResponse_ErrorOnlyJSONNotStructured (0.00s) 2026-10-22T08:23:48.571378908Z === RUN TestParseErrorResponse_NonJSON 2026-10-22T08:23:48.571399376Z --- PASS: TestParseErrorResponse_NonJSON (0.00s) 2026-10-22T08:23:48.571416834Z === RUN TestRunVolumeBackups_PartialContentReturnsResultAndError 2026-10-22T08:23:48.571433816Z --- PASS: TestRunVolumeBackups_PartialContentReturnsResultAndError (0.00s) 2026-10-22T08:23:48.571446954Z === RUN TestExchangeRegistryToken_AccessTokenFallback 2026-10-22T08:23:48.571463046Z --- PASS: TestExchangeRegistryToken_AccessTokenFallback (0.00s) 2026-10-22T08:23:48.571482842Z === RUN TestLocalAdminDiscoveryRejectsUnsafeSelectedCandidate 2026-10-22T08:23:48.571505894Z --- PASS: TestLocalAdminDiscoveryRejectsUnsafeSelectedCandidate (0.00s) 2026-10-22T08:23:48.571521842Z === RUN TestLocalAdminDiscoveryReportsUnavailable 2026-10-22T08:23:48.571531349Z --- PASS: TestLocalAdminDiscoveryReportsUnavailable (0.00s) 2026-10-22T08:23:48.571543009Z === RUN TestLocalAdminDiscoveryUsesXDGCandidates 2026-10-22T08:23:48.571562748Z --- PASS: TestLocalAdminDiscoveryUsesXDGCandidates (0.00s) 2026-10-22T08:23:48.571588063Z === RUN TestLocalAdminClientFailsWithoutSocket 2026-10-22T08:23:48.571611823Z --- PASS: TestLocalAdminClientFailsWithoutSocket (0.00s) 2026-10-22T08:23:48.571621635Z === RUN TestLocalAdminClientSendsNoTokenAndNoExchange 2026-10-22T08:23:48.571636389Z --- PASS: TestLocalAdminClientSendsNoTokenAndNoExchange (0.10s) 2026-10-22T08:23:48.571651187Z === RUN TestLocalAdminClientIgnoresEnvironmentProxy 2026-10-22T08:23:48.571667726Z --- PASS: TestLocalAdminClientIgnoresEnvironmentProxy (0.00s) 2026-10-22T08:23:48.57168161Z === RUN TestLocalAdminClientRejectsRedirects 2026-10-22T08:23:48.571693455Z --- PASS: TestLocalAdminClientRejectsRedirects (0.00s) 2026-10-22T08:23:48.571706367Z === RUN TestLocalAdminClientRespectsCancellation 2026-10-22T08:23:48.571733625Z --- PASS: TestLocalAdminClientRespectsCancellation (0.00s) 2026-10-22T08:23:48.571754501Z === RUN TestLocalAdminClientFailsOnMissingSocket 2026-10-22T08:23:48.571776038Z --- PASS: TestLocalAdminClientFailsOnMissingSocket (0.00s) 2026-10-22T08:23:48.571796559Z === RUN TestLocalAdminTransportDialsUnixOnly 2026-10-22T08:23:48.571816417Z --- PASS: TestLocalAdminTransportDialsUnixOnly (0.00s) 2026-10-22T08:23:48.571835442Z === RUN TestMigrateClientConfig 2026-10-22T08:23:48.571864746Z Notice: migrated [client] config from gordon.toml to 'default' remote. The [client] section is deprecated; use 'gordon remotes' instead. 2026-10-22T08:23:48.57188518Z --- PASS: TestMigrateClientConfig (0.00s) 2026-10-22T08:23:48.571906316Z === RUN TestMigrateClientConfig_NoOverwrite 2026-10-22T08:23:48.571927653Z --- PASS: TestMigrateClientConfig_NoOverwrite (0.00s) 2026-10-22T08:23:48.571949562Z === RUN TestMigrateClientConfig_SkipsLocalMode 2026-10-22T08:23:48.571969853Z --- PASS: TestMigrateClientConfig_SkipsLocalMode (0.00s) 2026-10-22T08:23:48.571985837Z === RUN TestValidateRemoteName 2026-10-22T08:23:48.572005468Z === RUN TestValidateRemoteName/valid_simple 2026-10-22T08:23:48.572024926Z === RUN TestValidateRemoteName/valid_with_dots 2026-10-22T08:23:48.572045673Z === RUN TestValidateRemoteName/valid_with_dashes 2026-10-22T08:23:48.572062965Z === RUN TestValidateRemoteName/valid_with_underscore 2026-10-22T08:23:48.572090534Z === RUN TestValidateRemoteName/invalid_slash 2026-10-22T08:23:48.572113179Z === RUN TestValidateRemoteName/invalid_dotdot 2026-10-22T08:23:48.572131141Z === RUN TestValidateRemoteName/invalid_space 2026-10-22T08:23:48.572145998Z === RUN TestValidateRemoteName/empty 2026-10-22T08:23:48.572169471Z === RUN TestValidateRemoteName/leading_dot 2026-10-22T08:23:48.572183785Z === RUN TestValidateRemoteName/trailing_dot 2026-10-22T08:23:48.572200908Z === RUN TestValidateRemoteName/only_dots 2026-10-22T08:23:48.572216149Z === RUN TestValidateRemoteName/only_dashes 2026-10-22T08:23:48.572239469Z === RUN TestValidateRemoteName/very_long_name 2026-10-22T08:23:48.57225432Z --- PASS: TestValidateRemoteName (0.00s) 2026-10-22T08:23:48.572279626Z --- PASS: TestValidateRemoteName/valid_simple (0.00s) 2026-10-22T08:23:48.572307169Z --- PASS: TestValidateRemoteName/valid_with_dots (0.00s) 2026-10-22T08:23:48.572339622Z --- PASS: TestValidateRemoteName/valid_with_dashes (0.00s) 2026-10-22T08:23:48.572368328Z --- PASS: TestValidateRemoteName/valid_with_underscore (0.00s) 2026-10-22T08:23:48.572398436Z --- PASS: TestValidateRemoteName/invalid_slash (0.00s) 2026-10-22T08:23:48.572430874Z --- PASS: TestValidateRemoteName/invalid_dotdot (0.00s) 2026-10-22T08:23:48.572464211Z --- PASS: TestValidateRemoteName/invalid_space (0.00s) 2026-10-22T08:23:48.57249432Z --- PASS: TestValidateRemoteName/empty (0.00s) 2026-10-22T08:23:48.572520437Z --- PASS: TestValidateRemoteName/leading_dot (0.00s) 2026-10-22T08:23:48.572552814Z --- PASS: TestValidateRemoteName/trailing_dot (0.00s) 2026-10-22T08:23:48.572602284Z --- PASS: TestValidateRemoteName/only_dots (0.00s) 2026-10-22T08:23:48.57263731Z --- PASS: TestValidateRemoteName/only_dashes (0.00s) 2026-10-22T08:23:48.572668298Z --- PASS: TestValidateRemoteName/very_long_name (0.00s) 2026-10-22T08:23:48.572683347Z === RUN TestResolve_FlagNameLookup 2026-10-22T08:23:48.572700066Z --- PASS: TestResolve_FlagNameLookup (0.00s) 2026-10-22T08:23:48.572713952Z === RUN TestResolve_FlagURLPassthrough 2026-10-22T08:23:48.572734871Z --- PASS: TestResolve_FlagURLPassthrough (0.00s) 2026-10-22T08:23:48.572754877Z === RUN TestResolve_ActiveRemoteFallback 2026-10-22T08:23:48.572776564Z --- PASS: TestResolve_ActiveRemoteFallback (0.00s) 2026-10-22T08:23:48.572797898Z === RUN TestResolve_NoRemote_LocalMode 2026-10-22T08:23:48.572819371Z --- PASS: TestResolve_NoRemote_LocalMode (0.00s) 2026-10-22T08:23:48.572835085Z === RUN TestResolve_EnvRemoteName 2026-10-22T08:23:48.572847008Z --- PASS: TestResolve_EnvRemoteName (0.00s) 2026-10-22T08:23:48.572858036Z === RUN TestResolve_EnvRemoteURL 2026-10-22T08:23:48.572869226Z --- PASS: TestResolve_EnvRemoteURL (0.00s) 2026-10-22T08:23:48.572885589Z === RUN TestResolve_FlagTokenOverridesStored 2026-10-22T08:23:48.572907313Z --- PASS: TestResolve_FlagTokenOverridesStored (0.00s) 2026-10-22T08:23:48.57292929Z === RUN TestResolve_EnvTokenOverridesStored 2026-10-22T08:23:48.57295004Z --- PASS: TestResolve_EnvTokenOverridesStored (0.00s) 2026-10-22T08:23:48.572970176Z === RUN TestResolve_InsecureTLSFlag 2026-10-22T08:23:48.572988628Z --- PASS: TestResolve_InsecureTLSFlag (0.00s) 2026-10-22T08:23:48.573007828Z === RUN TestResolve_InsecureTLSFromEntry 2026-10-22T08:23:48.57302264Z --- PASS: TestResolve_InsecureTLSFromEntry (0.00s) 2026-10-22T08:23:48.573034699Z === RUN TestResolve_TokenEnvVar 2026-10-22T08:23:48.573048455Z --- PASS: TestResolve_TokenEnvVar (0.00s) 2026-10-22T08:23:48.573063888Z === RUN TestResolve_UnknownNameReturnsNotFound 2026-10-22T08:23:48.573083801Z --- PASS: TestResolve_UnknownNameReturnsNotFound (0.00s) 2026-10-22T08:23:48.573109215Z === RUN TestResolveStrict_UnknownFlagRemoteWrapsErrRemoteNotFound 2026-10-22T08:23:48.573157164Z --- PASS: TestResolveStrict_UnknownFlagRemoteWrapsErrRemoteNotFound (0.00s) 2026-10-22T08:23:48.573174548Z === RUN TestResolveStrict_LoadRemotesErrorIsReturned 2026-10-22T08:23:48.57318471Z --- PASS: TestResolveStrict_LoadRemotesErrorIsReturned (0.00s) 2026-10-22T08:23:48.573192917Z PASS 2026-10-22T08:23:48.573209961Z ok github.com/bnema/gordon/internal/adapters/in/cli/remote 3.227s 2026-10-22T08:23:48.573220042Z === RUN TestStatusIcon_ReturnsStyledIcon 2026-10-22T08:23:48.573231741Z === RUN TestStatusIcon_ReturnsStyledIcon/success_renders_without_error 2026-10-22T08:23:48.57324204Z === RUN TestStatusIcon_ReturnsStyledIcon/running_renders_without_error 2026-10-22T08:23:48.57325171Z === RUN TestStatusIcon_ReturnsStyledIcon/error_renders_without_error 2026-10-22T08:23:48.573265144Z === RUN TestStatusIcon_ReturnsStyledIcon/stopped_renders_without_error 2026-10-22T08:23:48.573275385Z === RUN TestStatusIcon_ReturnsStyledIcon/exited_renders_without_error 2026-10-22T08:23:48.573284937Z === RUN TestStatusIcon_ReturnsStyledIcon/unknown_renders_without_error 2026-10-22T08:23:48.573298946Z === RUN TestStatusIcon_ReturnsStyledIcon/pending_renders_without_error 2026-10-22T08:23:48.573308363Z --- PASS: TestStatusIcon_ReturnsStyledIcon (0.00s) 2026-10-22T08:23:48.573333266Z --- PASS: TestStatusIcon_ReturnsStyledIcon/success_renders_without_error (0.00s) 2026-10-22T08:23:48.573358778Z --- PASS: TestStatusIcon_ReturnsStyledIcon/running_renders_without_error (0.00s) 2026-10-22T08:23:48.573383249Z --- PASS: TestStatusIcon_ReturnsStyledIcon/error_renders_without_error (0.00s) 2026-10-22T08:23:48.573409528Z --- PASS: TestStatusIcon_ReturnsStyledIcon/stopped_renders_without_error (0.00s) 2026-10-22T08:23:48.57343434Z --- PASS: TestStatusIcon_ReturnsStyledIcon/exited_renders_without_error (0.00s) 2026-10-22T08:23:48.573454293Z --- PASS: TestStatusIcon_ReturnsStyledIcon/unknown_renders_without_error (0.00s) 2026-10-22T08:23:48.573475643Z --- PASS: TestStatusIcon_ReturnsStyledIcon/pending_renders_without_error (0.00s) 2026-10-22T08:23:48.573491348Z === RUN TestStatusIcon_DifferentStatusesProduceDifferentOutput 2026-10-22T08:23:48.573507845Z --- PASS: TestStatusIcon_DifferentStatusesProduceDifferentOutput (0.00s) 2026-10-22T08:23:48.573518724Z === RUN TestTableRender_AppliesConfiguredColumnWidth 2026-10-22T08:23:48.573533487Z --- PASS: TestTableRender_AppliesConfiguredColumnWidth (0.00s) 2026-10-22T08:23:48.573549173Z === RUN TestTableRender_TruncatesLongCellTextWithEllipsis 2026-10-22T08:23:48.573560851Z --- PASS: TestTableRender_TruncatesLongCellTextWithEllipsis (0.00s) 2026-10-22T08:23:48.573570206Z === RUN TestTruncateCell_LeavesShortTextUnchanged 2026-10-22T08:23:48.573579209Z --- PASS: TestTruncateCell_LeavesShortTextUnchanged (0.00s) 2026-10-22T08:23:48.573587237Z === RUN TestTruncateCell_EdgeCases 2026-10-22T08:23:48.57360111Z === RUN TestTruncateCell_EdgeCases/zero_width_passthrough 2026-10-22T08:23:48.573612856Z === RUN TestTruncateCell_EdgeCases/width_three_all_dots 2026-10-22T08:23:48.573622163Z === RUN TestTruncateCell_EdgeCases/ascii_truncates 2026-10-22T08:23:48.573634363Z === RUN TestTruncateCell_EdgeCases/cjk_truncates_by_display_width 2026-10-22T08:23:48.57364899Z === RUN TestTruncateCell_EdgeCases/grapheme-safe_emoji_truncation 2026-10-22T08:23:48.573669051Z --- PASS: TestTruncateCell_EdgeCases (0.01s) 2026-10-22T08:23:48.573702972Z --- PASS: TestTruncateCell_EdgeCases/zero_width_passthrough (0.00s) 2026-10-22T08:23:48.573729153Z --- PASS: TestTruncateCell_EdgeCases/width_three_all_dots (0.00s) 2026-10-22T08:23:48.573753241Z --- PASS: TestTruncateCell_EdgeCases/ascii_truncates (0.00s) 2026-10-22T08:23:48.573777359Z --- PASS: TestTruncateCell_EdgeCases/cjk_truncates_by_display_width (0.01s) 2026-10-22T08:23:48.573801864Z --- PASS: TestTruncateCell_EdgeCases/grapheme-safe_emoji_truncation (0.00s) 2026-10-22T08:23:48.573815438Z === RUN TestTruncateCell_AnsiInputPassthrough 2026-10-22T08:23:48.573831329Z --- PASS: TestTruncateCell_AnsiInputPassthrough (0.00s) 2026-10-22T08:23:48.573842744Z === RUN TestTree_SingleNodeNoChildren 2026-10-22T08:23:48.573855104Z --- PASS: TestTree_SingleNodeNoChildren (0.00s) 2026-10-22T08:23:48.573868401Z === RUN TestTree_NodeWithOneChild 2026-10-22T08:23:48.573883295Z --- PASS: TestTree_NodeWithOneChild (0.00s) 2026-10-22T08:23:48.573906983Z === RUN TestTree_NodeWithMultipleChildren 2026-10-22T08:23:48.573917782Z --- PASS: TestTree_NodeWithMultipleChildren (0.00s) 2026-10-22T08:23:48.573932591Z === RUN TestTree_GroupWithNodes 2026-10-22T08:23:48.573945968Z --- PASS: TestTree_GroupWithNodes (0.00s) 2026-10-22T08:23:48.573956279Z === RUN TestTree_MixedNodesAndGroups 2026-10-22T08:23:48.573967762Z --- PASS: TestTree_MixedNodesAndGroups (0.00s) 2026-10-22T08:23:48.573980905Z === RUN TestTree_EmptyTreeRendersEmpty 2026-10-22T08:23:48.573996727Z --- PASS: TestTree_EmptyTreeRendersEmpty (0.00s) 2026-10-22T08:23:48.574008535Z === RUN TestTree_NodeWithChildSubtitleIndented 2026-10-22T08:23:48.574022369Z --- PASS: TestTree_NodeWithChildSubtitleIndented (0.00s) 2026-10-22T08:23:48.574033229Z === RUN TestTree_GroupNodeWithChild 2026-10-22T08:23:48.574041736Z --- PASS: TestTree_GroupNodeWithChild (0.00s) 2026-10-22T08:23:48.574053919Z PASS 2026-10-22T08:23:48.574064455Z ok github.com/bnema/gordon/internal/adapters/in/cli/ui/components 1.023s 2026-10-22T08:23:48.574074361Z ? github.com/bnema/gordon/internal/adapters/in/cli/ui/styles [no test files] 2026-10-22T08:23:48.574084416Z === RUN TestHandlerServesGETChallenge 2026-10-22T08:23:48.574096149Z --- PASS: TestHandlerServesGETChallenge (0.00s) 2026-10-22T08:23:48.574110994Z === RUN TestHandlerServesHEADChallenge 2026-10-22T08:23:48.5741229Z --- PASS: TestHandlerServesHEADChallenge (0.00s) 2026-10-22T08:23:48.574136911Z === RUN TestHandlerRejectsUnsafeToken 2026-10-22T08:23:48.57415124Z === RUN TestHandlerRejectsUnsafeToken/path_traversal 2026-10-22T08:23:48.574172995Z === RUN TestHandlerRejectsUnsafeToken/slash_in_token 2026-10-22T08:23:48.574189768Z === RUN TestHandlerRejectsUnsafeToken/empty_token 2026-10-22T08:23:48.574207485Z === RUN TestHandlerRejectsUnsafeToken/backslash_in_token 2026-10-22T08:23:48.574218389Z --- PASS: TestHandlerRejectsUnsafeToken (0.00s) 2026-10-22T08:23:48.574242087Z --- PASS: TestHandlerRejectsUnsafeToken/path_traversal (0.00s) 2026-10-22T08:23:48.574265185Z --- PASS: TestHandlerRejectsUnsafeToken/slash_in_token (0.00s) 2026-10-22T08:23:48.574288761Z --- PASS: TestHandlerRejectsUnsafeToken/empty_token (0.00s) 2026-10-22T08:23:48.574312212Z --- PASS: TestHandlerRejectsUnsafeToken/backslash_in_token (0.00s) 2026-10-22T08:23:48.574325813Z === RUN TestHandlerRejectsPOST 2026-10-22T08:23:48.574337866Z --- PASS: TestHandlerRejectsPOST (0.00s) 2026-10-22T08:23:48.574350259Z === RUN TestHandlerRejectsMissingPrefix 2026-10-22T08:23:48.57436386Z --- PASS: TestHandlerRejectsMissingPrefix (0.00s) 2026-10-22T08:23:48.574376371Z === RUN TestHandlerRejectsUnknownToken 2026-10-22T08:23:48.574391178Z --- PASS: TestHandlerRejectsUnknownToken (0.00s) 2026-10-22T08:23:48.574401027Z === RUN TestHandlerRejectsNilService 2026-10-22T08:23:48.574409753Z --- PASS: TestHandlerRejectsNilService (0.00s) 2026-10-22T08:23:48.574417005Z PASS 2026-10-22T08:23:48.574427952Z ok github.com/bnema/gordon/internal/adapters/in/http/acme 1.024s 2026-10-22T08:23:48.574438693Z === RUN TestHandler_AppApply_Persists 2026-10-22T08:23:48.574449143Z --- PASS: TestHandler_AppApply_Persists (0.00s) 2026-10-22T08:23:48.574467258Z === RUN TestHandler_AppApply_RejectsBadManifest 2026-10-22T08:23:48.574490915Z --- PASS: TestHandler_AppApply_RejectsBadManifest (0.00s) 2026-10-22T08:23:48.574515951Z === RUN TestHandler_AppDeploy_MapsOp 2026-10-22T08:23:48.574533345Z --- PASS: TestHandler_AppDeploy_MapsOp (0.00s) 2026-10-22T08:23:48.57456052Z === RUN TestHandler_AppDeploy_MapsCleanupWarnings 2026-10-22T08:23:48.574577098Z --- PASS: TestHandler_AppDeploy_MapsCleanupWarnings (0.00s) 2026-10-22T08:23:48.574594387Z === RUN TestHandler_AppDeploy_RunningReturns202 2026-10-22T08:23:48.57461526Z --- PASS: TestHandler_AppDeploy_RunningReturns202 (0.00s) 2026-10-22T08:23:48.574626472Z === RUN TestHandler_AppDeploy_TerminalReplayReturnsOK 2026-10-22T08:23:48.574637369Z --- PASS: TestHandler_AppDeploy_TerminalReplayReturnsOK (0.00s) 2026-10-22T08:23:48.574669921Z === RUN TestHandler_AppDeploy_TerminalFailureReplayIsVisible 2026-10-22T08:23:48.5746974Z --- PASS: TestHandler_AppDeploy_TerminalFailureReplayIsVisible (0.00s) 2026-10-22T08:23:48.574711109Z === RUN TestHandler_AppDeploy_RunningReplayBeforeServiceSteps 2026-10-22T08:23:48.574718251Z --- PASS: TestHandler_AppDeploy_RunningReplayBeforeServiceSteps (0.00s) 2026-10-22T08:23:48.574734987Z === RUN TestHandler_AppDeploy_RunningReplayAfterServiceSteps 2026-10-22T08:23:48.574743961Z --- PASS: TestHandler_AppDeploy_RunningReplayAfterServiceSteps (0.00s) 2026-10-22T08:23:48.574750008Z === RUN TestHandler_AppDeploy_ServiceScopeRequiredIs400 2026-10-22T08:23:48.574756866Z --- PASS: TestHandler_AppDeploy_ServiceScopeRequiredIs400 (0.00s) 2026-10-22T08:23:48.574768196Z === RUN TestHandler_AppDeploy_PassesAll 2026-10-22T08:23:48.574775295Z --- PASS: TestHandler_AppDeploy_PassesAll (0.00s) 2026-10-22T08:23:48.574784384Z === RUN TestHandler_AppRestart_PassesServiceAndAll 2026-10-22T08:23:48.574791205Z --- PASS: TestHandler_AppRestart_PassesServiceAndAll (0.00s) 2026-10-22T08:23:48.574800299Z === RUN TestHandler_AppDeploy_RejectsMissingIdempotencyKey 2026-10-22T08:23:48.574806583Z --- PASS: TestHandler_AppDeploy_RejectsMissingIdempotencyKey (0.00s) 2026-10-22T08:23:48.574814485Z === RUN TestHandler_AppList_RequiresScope 2026-10-22T08:23:48.574823485Z --- PASS: TestHandler_AppList_RequiresScope (0.00s) 2026-10-22T08:23:48.574832088Z === RUN TestHandler_AppSecretsSet_Forwards 2026-10-22T08:23:48.574842576Z --- PASS: TestHandler_AppSecretsSet_Forwards (0.00s) 2026-10-22T08:23:48.574849109Z === RUN TestHandler_AppSecretsSet_MissingRegistrationHasNoDeployHint 2026-10-22T08:23:48.574859431Z --- PASS: TestHandler_AppSecretsSet_MissingRegistrationHasNoDeployHint (0.00s) 2026-10-22T08:23:48.574865896Z === RUN TestHandler_AppLifecycle_UnknownAppIsNotFound 2026-10-22T08:23:48.574871533Z --- PASS: TestHandler_AppLifecycle_UnknownAppIsNotFound (0.00s) 2026-10-22T08:23:48.574880587Z === RUN TestHandler_AppLifecycle_ReplayConflictCarriesJournal 2026-10-22T08:23:48.574890301Z --- PASS: TestHandler_AppLifecycle_ReplayConflictCarriesJournal (0.00s) 2026-10-22T08:23:48.574899095Z === RUN TestHandler_AppShow_MapsReadModel 2026-10-22T08:23:48.574904696Z --- PASS: TestHandler_AppShow_MapsReadModel (0.00s) 2026-10-22T08:23:48.574913022Z === RUN TestHandler_AppShow_UnknownAppIsNotFound 2026-10-22T08:23:48.574918799Z --- PASS: TestHandler_AppShow_UnknownAppIsNotFound (0.00s) 2026-10-22T08:23:48.574926794Z === RUN TestHandler_AppList_MapsReadModel 2026-10-22T08:23:48.574937598Z --- PASS: TestHandler_AppList_MapsReadModel (0.00s) 2026-10-22T08:23:48.574943033Z === RUN TestHandler_AppOpLookup_Recovers 2026-10-22T08:23:48.574947836Z --- PASS: TestHandler_AppOpLookup_Recovers (0.00s) 2026-10-22T08:23:48.574953078Z === RUN TestHandler_AppOpLookup_GatesDiagnosticsByLogsScope 2026-10-22T08:23:48.574958455Z --- PASS: TestHandler_AppOpLookup_GatesDiagnosticsByLogsScope (0.00s) 2026-10-22T08:23:48.574963235Z === RUN TestHandler_AppApply_DryRunOmitsRevision 2026-10-22T08:23:48.574968207Z --- PASS: TestHandler_AppApply_DryRunOmitsRevision (0.00s) 2026-10-22T08:23:48.574972944Z === RUN TestHandler_AppSecretsList_MissingAppIs404 2026-10-22T08:23:48.574978081Z --- PASS: TestHandler_AppSecretsList_MissingAppIs404 (0.00s) 2026-10-22T08:23:48.57498302Z === RUN TestHandler_AppApply_MapsDevicePolicyViolation 2026-10-22T08:23:48.574988498Z --- PASS: TestHandler_AppApply_MapsDevicePolicyViolation (0.00s) 2026-10-22T08:23:48.574993497Z === RUN TestSendAppOpError_MapsRuntimeGuard 2026-10-22T08:23:48.574998382Z --- PASS: TestSendAppOpError_MapsRuntimeGuard (0.00s) 2026-10-22T08:23:48.575003179Z === RUN TestHandler_AppApply_MapsRuntimeUnsupported 2026-10-22T08:23:48.575008289Z --- PASS: TestHandler_AppApply_MapsRuntimeUnsupported (0.00s) 2026-10-22T08:23:48.57501341Z === RUN TestApplyApp_MapsCapabilityPolicyViolation 2026-10-22T08:23:48.575018468Z --- PASS: TestApplyApp_MapsCapabilityPolicyViolation (0.00s) 2026-10-22T08:23:48.575022442Z === RUN TestHandler_CA 2026-10-22T08:23:48.575027664Z --- PASS: TestHandler_CA (0.00s) 2026-10-22T08:23:48.575032163Z === RUN TestHandler_CARequiresStatusRead 2026-10-22T08:23:48.575036804Z --- PASS: TestHandler_CARequiresStatusRead (0.00s) 2026-10-22T08:23:48.575041196Z === RUN TestHandler_CARejectsNonGet 2026-10-22T08:23:48.575045846Z --- PASS: TestHandler_CARejectsNonGet (0.00s) 2026-10-22T08:23:48.575050502Z === RUN TestHandler_CADisabledReturnsNotFound 2026-10-22T08:23:48.57505557Z --- PASS: TestHandler_CADisabledReturnsNotFound (0.00s) 2026-10-22T08:23:48.575061032Z === RUN TestHandler_RetiredMutations_Return410 2026-10-22T08:23:48.575066053Z --- PASS: TestHandler_RetiredMutations_Return410 (0.00s) 2026-10-22T08:23:48.575071056Z === RUN TestHandler_VolumesGet_RequiresVolumesReadScope 2026-10-22T08:23:48.575080935Z === RUN TestHandler_VolumesGet_RequiresVolumesReadScope/volumes_read_access_granted 2026-10-22T08:23:48.57508808Z === RUN TestHandler_VolumesGet_RequiresVolumesReadScope/all_admin_access_granted 2026-10-22T08:23:48.575093884Z === RUN TestHandler_VolumesGet_RequiresVolumesReadScope/status_read_denied 2026-10-22T08:23:48.575099717Z === RUN TestHandler_VolumesGet_RequiresVolumesReadScope/volumes_write_denied 2026-10-22T08:23:48.575105266Z --- PASS: TestHandler_VolumesGet_RequiresVolumesReadScope (0.00s) 2026-10-22T08:23:48.575122669Z --- PASS: TestHandler_VolumesGet_RequiresVolumesReadScope/volumes_read_access_granted (0.00s) 2026-10-22T08:23:48.575139881Z --- PASS: TestHandler_VolumesGet_RequiresVolumesReadScope/all_admin_access_granted (0.00s) 2026-10-22T08:23:48.57515553Z --- PASS: TestHandler_VolumesGet_RequiresVolumesReadScope/status_read_denied (0.00s) 2026-10-22T08:23:48.575171317Z --- PASS: TestHandler_VolumesGet_RequiresVolumesReadScope/volumes_write_denied (0.00s) 2026-10-22T08:23:48.575176542Z === RUN TestHandler_VolumesPrune_RequiresVolumesWriteScope 2026-10-22T08:23:48.575182377Z === RUN TestHandler_VolumesPrune_RequiresVolumesWriteScope/volumes_write_access_granted 2026-10-22T08:23:48.575188973Z === RUN TestHandler_VolumesPrune_RequiresVolumesWriteScope/all_admin_access_granted 2026-10-22T08:23:48.575195228Z === RUN TestHandler_VolumesPrune_RequiresVolumesWriteScope/config_write_denied 2026-10-22T08:23:48.5752011Z === RUN TestHandler_VolumesPrune_RequiresVolumesWriteScope/volumes_read_denied 2026-10-22T08:23:48.575206515Z --- PASS: TestHandler_VolumesPrune_RequiresVolumesWriteScope (0.00s) 2026-10-22T08:23:48.575224065Z --- PASS: TestHandler_VolumesPrune_RequiresVolumesWriteScope/volumes_write_access_granted (0.00s) 2026-10-22T08:23:48.57524413Z --- PASS: TestHandler_VolumesPrune_RequiresVolumesWriteScope/all_admin_access_granted (0.00s) 2026-10-22T08:23:48.575266159Z --- PASS: TestHandler_VolumesPrune_RequiresVolumesWriteScope/config_write_denied (0.00s) 2026-10-22T08:23:48.575287309Z --- PASS: TestHandler_VolumesPrune_RequiresVolumesWriteScope/volumes_read_denied (0.00s) 2026-10-22T08:23:48.575295019Z === RUN TestHandler_Status_RequiresReadScope 2026-10-22T08:23:48.575302379Z === RUN TestHandler_Status_RequiresReadScope/status_read_access_granted 2026-10-22T08:23:48.575312706Z === RUN TestHandler_Status_RequiresReadScope/all_admin_access_granted 2026-10-22T08:23:48.575323825Z === RUN TestHandler_Status_RequiresReadScope/wrong_resource_denied 2026-10-22T08:23:48.575334372Z --- PASS: TestHandler_Status_RequiresReadScope (0.00s) 2026-10-22T08:23:48.575353959Z --- PASS: TestHandler_Status_RequiresReadScope/status_read_access_granted (0.00s) 2026-10-22T08:23:48.575373318Z --- PASS: TestHandler_Status_RequiresReadScope/all_admin_access_granted (0.00s) 2026-10-22T08:23:48.575394684Z --- PASS: TestHandler_Status_RequiresReadScope/wrong_resource_denied (0.00s) 2026-10-22T08:23:48.575405792Z === RUN TestHandler_AuthVerify_PublishesRegistryDomainForValidTokens 2026-10-22T08:23:48.575416942Z === RUN TestHandler_AuthVerify_PublishesRegistryDomainForValidTokens/valid_token_without_status_scope 2026-10-22T08:23:48.575427729Z === RUN TestHandler_AuthVerify_PublishesRegistryDomainForValidTokens/invalid_token 2026-10-22T08:23:48.575438144Z --- PASS: TestHandler_AuthVerify_PublishesRegistryDomainForValidTokens (0.00s) 2026-10-22T08:23:48.575468789Z --- PASS: TestHandler_AuthVerify_PublishesRegistryDomainForValidTokens/valid_token_without_status_scope (0.00s) 2026-10-22T08:23:48.575491745Z --- PASS: TestHandler_AuthVerify_PublishesRegistryDomainForValidTokens/invalid_token (0.00s) 2026-10-22T08:23:48.575502206Z === RUN TestHandler_Config_HidesSensitiveInventoryByDefault 2026-10-22T08:23:48.575512783Z --- PASS: TestHandler_Config_HidesSensitiveInventoryByDefault (0.00s) 2026-10-22T08:23:48.575522471Z === RUN TestHandler_Config_RequiresReadScope 2026-10-22T08:23:48.57553066Z === RUN TestHandler_Config_RequiresReadScope/config_read_access_granted 2026-10-22T08:23:48.575540498Z === RUN TestHandler_Config_RequiresReadScope/all_admin_access_granted 2026-10-22T08:23:48.575546773Z === RUN TestHandler_Config_RequiresReadScope/wrong_resource_denied 2026-10-22T08:23:48.575555468Z --- PASS: TestHandler_Config_RequiresReadScope (0.00s) 2026-10-22T08:23:48.575571052Z --- PASS: TestHandler_Config_RequiresReadScope/config_read_access_granted (0.00s) 2026-10-22T08:23:48.575586007Z --- PASS: TestHandler_Config_RequiresReadScope/all_admin_access_granted (0.00s) 2026-10-22T08:23:48.575603657Z --- PASS: TestHandler_Config_RequiresReadScope/wrong_resource_denied (0.00s) 2026-10-22T08:23:48.575613167Z === RUN TestHandler_Reload_RequiresWriteScope 2026-10-22T08:23:48.575623218Z === RUN TestHandler_Reload_RequiresWriteScope/config_write_access_granted 2026-10-22T08:23:48.575634084Z === RUN TestHandler_Reload_RequiresWriteScope/all_admin_access_granted 2026-10-22T08:23:48.575644498Z === RUN TestHandler_Reload_RequiresWriteScope/only_read_access_denied 2026-10-22T08:23:48.575654534Z === RUN TestHandler_Reload_RequiresWriteScope/wrong_resource_denied 2026-10-22T08:23:48.575664197Z --- PASS: TestHandler_Reload_RequiresWriteScope (0.00s) 2026-10-22T08:23:48.575685234Z --- PASS: TestHandler_Reload_RequiresWriteScope/config_write_access_granted (0.00s) 2026-10-22T08:23:48.575700569Z --- PASS: TestHandler_Reload_RequiresWriteScope/all_admin_access_granted (0.00s) 2026-10-22T08:23:48.575715399Z --- PASS: TestHandler_Reload_RequiresWriteScope/only_read_access_denied (0.00s) 2026-10-22T08:23:48.575731591Z --- PASS: TestHandler_Reload_RequiresWriteScope/wrong_resource_denied (0.00s) 2026-10-22T08:23:48.575742316Z === RUN TestHandler_Reload_ReturnsServerErrorOnTriggerFailure 2026-10-22T08:23:48.575752619Z --- PASS: TestHandler_Reload_ReturnsServerErrorOnTriggerFailure (0.00s) 2026-10-22T08:23:48.57576309Z === RUN TestHandler_Reload_UsesDetachedContextWithDeadline 2026-10-22T08:23:48.575773508Z --- PASS: TestHandler_Reload_UsesDetachedContextWithDeadline (0.00s) 2026-10-22T08:23:48.575783154Z === RUN TestHandler_MethodNotAllowed 2026-10-22T08:23:48.575793047Z === RUN TestHandler_MethodNotAllowed/DELETE_/admin/status 2026-10-22T08:23:48.575800853Z === RUN TestHandler_MethodNotAllowed/PUT_/admin/status 2026-10-22T08:23:48.575807639Z === RUN TestHandler_MethodNotAllowed/GET_/admin/reload 2026-10-22T08:23:48.575817191Z === RUN TestHandler_MethodNotAllowed/DELETE_/admin/reload 2026-10-22T08:23:48.575827024Z === RUN TestHandler_MethodNotAllowed/POST_/admin/config 2026-10-22T08:23:48.57583777Z === RUN TestHandler_MethodNotAllowed/DELETE_/admin/config 2026-10-22T08:23:48.575847124Z --- PASS: TestHandler_MethodNotAllowed (0.00s) 2026-10-22T08:23:48.575864805Z --- PASS: TestHandler_MethodNotAllowed/DELETE_/admin/status (0.00s) 2026-10-22T08:23:48.57588256Z --- PASS: TestHandler_MethodNotAllowed/PUT_/admin/status (0.00s) 2026-10-22T08:23:48.575900773Z --- PASS: TestHandler_MethodNotAllowed/GET_/admin/reload (0.00s) 2026-10-22T08:23:48.575927009Z --- PASS: TestHandler_MethodNotAllowed/DELETE_/admin/reload (0.00s) 2026-10-22T08:23:48.5759467Z --- PASS: TestHandler_MethodNotAllowed/POST_/admin/config (0.00s) 2026-10-22T08:23:48.575963208Z --- PASS: TestHandler_MethodNotAllowed/DELETE_/admin/config (0.00s) 2026-10-22T08:23:48.575972607Z === RUN TestHandler_Tags_InvalidRepository 2026-10-22T08:23:48.575982347Z === RUN TestHandler_Tags_InvalidRepository/path_traversal 2026-10-22T08:23:48.575992075Z === RUN TestHandler_Tags_InvalidRepository/empty_repo 2026-10-22T08:23:48.576001977Z --- PASS: TestHandler_Tags_InvalidRepository (0.00s) 2026-10-22T08:23:48.576019771Z --- PASS: TestHandler_Tags_InvalidRepository/path_traversal (0.00s) 2026-10-22T08:23:48.576037215Z --- PASS: TestHandler_Tags_InvalidRepository/empty_repo (0.00s) 2026-10-22T08:23:48.576044263Z === RUN TestHandler_Tags_Success 2026-10-22T08:23:48.576049879Z --- PASS: TestHandler_Tags_Success (0.00s) 2026-10-22T08:23:48.576054543Z === RUN TestHandler_Tags_Error 2026-10-22T08:23:48.576059249Z --- PASS: TestHandler_Tags_Error (0.00s) 2026-10-22T08:23:48.576063956Z === RUN TestHandler_Tags_URLDecodedRepository 2026-10-22T08:23:48.576068982Z --- PASS: TestHandler_Tags_URLDecodedRepository (0.00s) 2026-10-22T08:23:48.576073346Z === RUN TestHandler_NotFound 2026-10-22T08:23:48.576077842Z --- PASS: TestHandler_NotFound (0.00s) 2026-10-22T08:23:48.57608225Z === RUN TestHandler_BackupsStatus 2026-10-22T08:23:48.576086965Z --- PASS: TestHandler_BackupsStatus (0.00s) 2026-10-22T08:23:48.576091606Z === RUN TestHandler_BackupsListApp 2026-10-22T08:23:48.576096249Z --- PASS: TestHandler_BackupsListApp (0.00s) 2026-10-22T08:23:48.576102637Z === RUN TestHandler_BackupsRunApp 2026-10-22T08:23:48.576109942Z --- PASS: TestHandler_BackupsRunApp (0.00s) 2026-10-22T08:23:48.576115796Z === RUN TestHandler_VolumeBackupsRunDomain_ReturnsPartialResults 2026-10-22T08:23:48.576121468Z --- PASS: TestHandler_VolumeBackupsRunDomain_ReturnsPartialResults (0.00s) 2026-10-22T08:23:48.576127268Z === RUN TestHandler_VolumeBackupsRunDomain_ReturnsServerErrorWithoutResults 2026-10-22T08:23:48.576133296Z --- PASS: TestHandler_VolumeBackupsRunDomain_ReturnsServerErrorWithoutResults (0.00s) 2026-10-22T08:23:48.576138554Z === RUN TestHandler_BackupsRunApp_ChunkedBodyIsDecoded 2026-10-22T08:23:48.576144053Z --- PASS: TestHandler_BackupsRunApp_ChunkedBodyIsDecoded (0.00s) 2026-10-22T08:23:48.576149016Z === RUN TestHandler_LogsRequireLogsReadAndRedact 2026-10-22T08:23:48.576154966Z === RUN TestHandler_LogsRequireLogsReadAndRedact/status_read_denied 2026-10-22T08:23:48.576160772Z === RUN TestHandler_LogsRequireLogsReadAndRedact/logs_read_allowed_and_redacted 2026-10-22T08:23:48.576167936Z --- PASS: TestHandler_LogsRequireLogsReadAndRedact (0.00s) 2026-10-22T08:23:48.576187212Z --- PASS: TestHandler_LogsRequireLogsReadAndRedact/status_read_denied (0.00s) 2026-10-22T08:23:48.576208275Z --- PASS: TestHandler_LogsRequireLogsReadAndRedact/logs_read_allowed_and_redacted (0.00s) 2026-10-22T08:23:48.576217774Z === RUN TestHandler_ImagesGet_ReturnsMappedList 2026-10-22T08:23:48.576227207Z --- PASS: TestHandler_ImagesGet_ReturnsMappedList (0.00s) 2026-10-22T08:23:48.576237091Z === RUN TestHandler_ImagesPrune_AcceptsOptionalKeepLast 2026-10-22T08:23:48.576243542Z === RUN TestHandler_ImagesPrune_AcceptsOptionalKeepLast/missing_keep_last_uses_default 2026-10-22T08:23:48.576251729Z === RUN TestHandler_ImagesPrune_AcceptsOptionalKeepLast/provided_keep_last 2026-10-22T08:23:48.576261564Z --- PASS: TestHandler_ImagesPrune_AcceptsOptionalKeepLast (0.00s) 2026-10-22T08:23:48.576283047Z --- PASS: TestHandler_ImagesPrune_AcceptsOptionalKeepLast/missing_keep_last_uses_default (0.00s) 2026-10-22T08:23:48.576303467Z --- PASS: TestHandler_ImagesPrune_AcceptsOptionalKeepLast/provided_keep_last (0.00s) 2026-10-22T08:23:48.576313928Z === RUN TestHandler_Images_ErrorMappingForServiceFailures 2026-10-22T08:23:48.576322217Z === RUN TestHandler_Images_ErrorMappingForServiceFailures/list_failure_maps_to_internal_server_error 2026-10-22T08:23:48.57633353Z === RUN TestHandler_Images_ErrorMappingForServiceFailures/prune_failure_maps_to_internal_server_error 2026-10-22T08:23:48.576343619Z --- PASS: TestHandler_Images_ErrorMappingForServiceFailures (0.00s) 2026-10-22T08:23:48.576367223Z --- PASS: TestHandler_Images_ErrorMappingForServiceFailures/list_failure_maps_to_internal_server_error (0.00s) 2026-10-22T08:23:48.576391949Z --- PASS: TestHandler_Images_ErrorMappingForServiceFailures/prune_failure_maps_to_internal_server_error (0.00s) 2026-10-22T08:23:48.576398854Z === RUN TestHandler_ImagesPrune_ValidationAndAvailability 2026-10-22T08:23:48.576409504Z === RUN TestHandler_ImagesPrune_ValidationAndAvailability/rejects_negative_keep_last 2026-10-22T08:23:48.576421278Z === RUN TestHandler_ImagesPrune_ValidationAndAvailability/returns_service_unavailable_when_image_service_missing 2026-10-22T08:23:48.576431222Z --- PASS: TestHandler_ImagesPrune_ValidationAndAvailability (0.00s) 2026-10-22T08:23:48.576452759Z --- PASS: TestHandler_ImagesPrune_ValidationAndAvailability/rejects_negative_keep_last (0.00s) 2026-10-22T08:23:48.576479147Z --- PASS: TestHandler_ImagesPrune_ValidationAndAvailability/returns_service_unavailable_when_image_service_missing (0.00s) 2026-10-22T08:23:48.576489074Z === RUN TestHandler_ImagesPrune_ScopeDefaults 2026-10-22T08:23:48.576499437Z === RUN TestHandler_ImagesPrune_ScopeDefaults/missing_scope_fields_defaults_to_both_true 2026-10-22T08:23:48.576509846Z === RUN TestHandler_ImagesPrune_ScopeDefaults/explicit_dangling_only 2026-10-22T08:23:48.576519996Z === RUN TestHandler_ImagesPrune_ScopeDefaults/explicit_registry_only 2026-10-22T08:23:48.576530047Z === RUN TestHandler_ImagesPrune_ScopeDefaults/both_scopes_false_returns_400 2026-10-22T08:23:48.576539503Z --- PASS: TestHandler_ImagesPrune_ScopeDefaults (0.00s) 2026-10-22T08:23:48.576559864Z --- PASS: TestHandler_ImagesPrune_ScopeDefaults/missing_scope_fields_defaults_to_both_true (0.00s) 2026-10-22T08:23:48.57657923Z --- PASS: TestHandler_ImagesPrune_ScopeDefaults/explicit_dangling_only (0.00s) 2026-10-22T08:23:48.576598497Z --- PASS: TestHandler_ImagesPrune_ScopeDefaults/explicit_registry_only (0.00s) 2026-10-22T08:23:48.576618784Z --- PASS: TestHandler_ImagesPrune_ScopeDefaults/both_scopes_false_returns_400 (0.00s) 2026-10-22T08:23:48.576627977Z === RUN TestHandler_Images_Authorization 2026-10-22T08:23:48.576644342Z === RUN TestHandler_Images_Authorization/images_list_requires_status:read 2026-10-22T08:23:48.576662455Z === RUN TestHandler_Images_Authorization/images_prune_requires_config:write 2026-10-22T08:23:48.576678841Z --- PASS: TestHandler_Images_Authorization (0.00s) 2026-10-22T08:23:48.576700252Z --- PASS: TestHandler_Images_Authorization/images_list_requires_status:read (0.00s) 2026-10-22T08:23:48.576721789Z --- PASS: TestHandler_Images_Authorization/images_prune_requires_config:write (0.00s) 2026-10-22T08:23:48.576732136Z === RUN TestHandler_TLSStatus_RequiresStatusReadScope 2026-10-22T08:23:48.576742151Z --- PASS: TestHandler_TLSStatus_RequiresStatusReadScope (0.00s) 2026-10-22T08:23:48.576751555Z === RUN TestHandler_TLSStatus_GETReturnsJSON 2026-10-22T08:23:48.576761232Z --- PASS: TestHandler_TLSStatus_GETReturnsJSON (0.00s) 2026-10-22T08:23:48.576771105Z === RUN TestHandler_TLSStatus_POSTReturns405 2026-10-22T08:23:48.576776921Z --- PASS: TestHandler_TLSStatus_POSTReturns405 (0.00s) 2026-10-22T08:23:48.576783742Z === RUN TestHandler_TrafficStatus 2026-10-22T08:23:48.57679301Z --- PASS: TestHandler_TrafficStatus (0.00s) 2026-10-22T08:23:48.576802496Z === RUN TestHandler_TrafficStatusRequiresStatusRead 2026-10-22T08:23:48.576813277Z --- PASS: TestHandler_TrafficStatusRequiresStatusRead (0.00s) 2026-10-22T08:23:48.576823165Z === RUN TestHandler_TrafficStatusUnavailableWithoutService 2026-10-22T08:23:48.57683324Z --- PASS: TestHandler_TrafficStatusUnavailableWithoutService (0.00s) 2026-10-22T08:23:48.576843061Z === RUN TestLocalAuthorityInjectsLeastPrivilegeScopes 2026-10-22T08:23:48.576851073Z --- PASS: TestLocalAuthorityInjectsLeastPrivilegeScopes (0.00s) 2026-10-22T08:23:48.57685772Z === RUN TestLocalAuthorityCanonicalAllowlist 2026-10-22T08:23:48.576867697Z === PAUSE TestLocalAuthorityCanonicalAllowlist 2026-10-22T08:23:48.576878346Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths 2026-10-22T08:23:48.57688842Z === PAUSE TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths 2026-10-22T08:23:48.576898313Z === RUN TestLocalAuthorityRejectsNonAdminAndTraversalRequests 2026-10-22T08:23:48.576908743Z --- PASS: TestLocalAuthorityRejectsNonAdminAndTraversalRequests (0.00s) 2026-10-22T08:23:48.576918351Z === RUN TestAuthMiddleware_GlobalRateLimitHit 2026-10-22T08:23:48.576926098Z --- PASS: TestAuthMiddleware_GlobalRateLimitHit (0.00s) 2026-10-22T08:23:48.576931306Z === RUN TestAuthMiddleware_PerIPRateLimitHit 2026-10-22T08:23:48.576936194Z --- PASS: TestAuthMiddleware_PerIPRateLimitHit (0.00s) 2026-10-22T08:23:48.576940734Z === RUN TestAuthMiddleware_TrustedProxy 2026-10-22T08:23:48.576945545Z --- PASS: TestAuthMiddleware_TrustedProxy (0.00s) 2026-10-22T08:23:48.57695023Z === RUN TestAuthMiddleware_NoRateLimiting 2026-10-22T08:23:48.576955676Z --- PASS: TestAuthMiddleware_NoRateLimiting (0.00s) 2026-10-22T08:23:48.576960284Z === RUN TestAuthMiddleware_AuthDisabled 2026-10-22T08:23:48.576970608Z 2026-10-22T08:23:46Z ERR authentication disabled/misconfigured - denying admin API request method=GET path=/admin/status remote_addr=192.168.1.100:12345 2026-10-22T08:23:48.576978247Z --- PASS: TestAuthMiddleware_AuthDisabled (0.00s) 2026-10-22T08:23:48.576983302Z === RUN TestAuthMiddleware_MissingAuthHeader 2026-10-22T08:23:48.576990613Z --- PASS: TestAuthMiddleware_MissingAuthHeader (0.00s) 2026-10-22T08:23:48.576999444Z === RUN TestAuthMiddleware_InvalidToken 2026-10-22T08:23:48.57701233Z 2026-10-22T08:23:46Z WRN invalid admin token error="assert.AnError general error for testing" 2026-10-22T08:23:48.577027222Z --- PASS: TestAuthMiddleware_InvalidToken (0.00s) 2026-10-22T08:23:48.577037126Z === RUN TestAuthMiddleware_RejectsLongLivedToken 2026-10-22T08:23:48.577049277Z 2026-10-22T08:23:46Z WRN long-lived token rejected on admin endpoint path=/admin/status subject=admin 2026-10-22T08:23:48.577058333Z --- PASS: TestAuthMiddleware_RejectsLongLivedToken (0.00s) 2026-10-22T08:23:48.577065172Z === RUN TestAuthMiddleware_AcceptsEphemeralToken 2026-10-22T08:23:48.577070505Z --- PASS: TestAuthMiddleware_AcceptsEphemeralToken (0.00s) 2026-10-22T08:23:48.57707513Z === RUN TestAuthMiddleware_MissingAdminScope 2026-10-22T08:23:48.577082115Z 2026-10-22T08:23:46Z WRN token missing admin scopes subject=user1 2026-10-22T08:23:48.577087521Z --- PASS: TestAuthMiddleware_MissingAdminScope (0.00s) 2026-10-22T08:23:48.577091852Z === RUN TestAuthMiddleware_Success 2026-10-22T08:23:48.577096835Z --- PASS: TestAuthMiddleware_Success (0.00s) 2026-10-22T08:23:48.577101586Z === RUN TestAuthMiddleware_DirectToken_Rejected 2026-10-22T08:23:48.577107532Z --- PASS: TestAuthMiddleware_DirectToken_Rejected (0.00s) 2026-10-22T08:23:48.577112626Z === RUN TestRequireScope 2026-10-22T08:23:48.577118077Z === RUN TestRequireScope/wildcard_scope_grants_access 2026-10-22T08:23:48.577123228Z === RUN TestRequireScope/exact_scope_grants_access 2026-10-22T08:23:48.57713293Z === RUN TestRequireScope/wrong_resource_denies_access 2026-10-22T08:23:48.577142456Z === RUN TestRequireScope/wrong_action_denies_access 2026-10-22T08:23:48.57714947Z --- PASS: TestRequireScope (0.00s) 2026-10-22T08:23:48.577166377Z --- PASS: TestRequireScope/wildcard_scope_grants_access (0.00s) 2026-10-22T08:23:48.577181785Z --- PASS: TestRequireScope/exact_scope_grants_access (0.00s) 2026-10-22T08:23:48.57720601Z --- PASS: TestRequireScope/wrong_resource_denies_access (0.00s) 2026-10-22T08:23:48.5772283Z --- PASS: TestRequireScope/wrong_action_denies_access (0.00s) 2026-10-22T08:23:48.577236064Z === RUN TestHasAccess 2026-10-22T08:23:48.577243408Z --- PASS: TestHasAccess (0.00s) 2026-10-22T08:23:48.5772539Z === RUN TestHandler_ImagesPrune_ExposesPerCandidateVerdicts 2026-10-22T08:23:48.57726428Z --- PASS: TestHandler_ImagesPrune_ExposesPerCandidateVerdicts (0.00s) 2026-10-22T08:23:48.57727239Z === RUN TestHandler_VolumesPrune_ExposesPerCandidateVerdicts 2026-10-22T08:23:48.577278772Z --- PASS: TestHandler_VolumesPrune_ExposesPerCandidateVerdicts (0.00s) 2026-10-22T08:23:48.577288208Z === CONT TestLocalAuthorityCanonicalAllowlist 2026-10-22T08:23:48.577298173Z === CONT TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths 2026-10-22T08:23:48.577307939Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/status 2026-10-22T08:23:48.577318515Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/POST_/status 2026-10-22T08:23:48.5773285Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/tls/status 2026-10-22T08:23:48.57733859Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/traffic/status 2026-10-22T08:23:48.577349691Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/reload 2026-10-22T08:23:48.577356887Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/config 2026-10-22T08:23:48.577368038Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/networks 2026-10-22T08:23:48.577378544Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/POST_/config 2026-10-22T08:23:48.577388282Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/volumes 2026-10-22T08:23:48.577398041Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/volumes/prune 2026-10-22T08:23:48.57740966Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/volumes/prune 2026-10-22T08:23:48.5774199Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/images 2026-10-22T08:23:48.577430318Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/images/prune 2026-10-22T08:23:48.577440645Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/images/prune 2026-10-22T08:23:48.577449238Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/auth/verify 2026-10-22T08:23:48.577459076Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/reload 2026-10-22T08:23:48.577470096Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/auth/tokens 2026-10-22T08:23:48.577480336Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/tags/repository 2026-10-22T08:23:48.577489866Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/logs 2026-10-22T08:23:48.577500511Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/POST_/auth/tokens 2026-10-22T08:23:48.577510741Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/health 2026-10-22T08:23:48.577520831Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/appsX 2026-10-22T08:23:48.577530898Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/logs/blog/web 2026-10-22T08:23:48.577541134Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/secrets 2026-10-22T08:23:48.57755189Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/secrets/blog.example.com 2026-10-22T08:23:48.577562945Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/POST_/secrets/blog.example.com 2026-10-22T08:23:48.577572693Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/backups 2026-10-22T08:23:48.577584356Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/DELETE_/secrets/blog 2026-10-22T08:23:48.577590577Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/backups/status 2026-10-22T08:23:48.577600602Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/backups/shop 2026-10-22T08:23:48.577611206Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/images/anything 2026-10-22T08:23:48.577621062Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/backups/shop 2026-10-22T08:23:48.577632Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/tags/repository/extra 2026-10-22T08:23:48.577642492Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/logs/blog 2026-10-22T08:23:48.577653162Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/backups/volumes 2026-10-22T08:23:48.577663802Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/backups/volumes/status/extra 2026-10-22T08:23:48.577674231Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/backups/volumes 2026-10-22T08:23:48.577684368Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/backups/volumes/status 2026-10-22T08:23:48.577695232Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/backups/volumes/blog.example.com 2026-10-22T08:23:48.577706333Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/backups/volumes/blog.example.com 2026-10-22T08:23:48.577718056Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/apps/blog/operations/by-key/key/extra 2026-10-22T08:23:48.577728608Z === RUN TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/ 2026-10-22T08:23:48.577738951Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/apps 2026-10-22T08:23:48.577749139Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths (0.00s) 2026-10-22T08:23:48.577769951Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/POST_/status (0.00s) 2026-10-22T08:23:48.577790836Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/reload (0.00s) 2026-10-22T08:23:48.577811959Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/POST_/config (0.00s) 2026-10-22T08:23:48.577832988Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/volumes/prune (0.00s) 2026-10-22T08:23:48.577854543Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/images/prune (0.00s) 2026-10-22T08:23:48.577879834Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/auth/verify (0.00s) 2026-10-22T08:23:48.577901362Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/auth/tokens (0.00s) 2026-10-22T08:23:48.577922342Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/POST_/auth/tokens (0.00s) 2026-10-22T08:23:48.577942752Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/health (0.00s) 2026-10-22T08:23:48.577962882Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/appsX (0.00s) 2026-10-22T08:23:48.577983835Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/secrets (0.00s) 2026-10-22T08:23:48.578006698Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/secrets/blog.example.com (0.00s) 2026-10-22T08:23:48.578030187Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/POST_/secrets/blog.example.com (0.00s) 2026-10-22T08:23:48.578051916Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/DELETE_/secrets/blog (0.00s) 2026-10-22T08:23:48.57807356Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/images/anything (0.00s) 2026-10-22T08:23:48.578096142Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/tags/repository/extra (0.00s) 2026-10-22T08:23:48.578117845Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/logs/blog (0.00s) 2026-10-22T08:23:48.578141544Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/backups/volumes/status/extra (0.00s) 2026-10-22T08:23:48.57816754Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/apps/blog/operations/by-key/key/extra (0.00s) 2026-10-22T08:23:48.578187015Z --- PASS: TestLocalAuthorityDeniesNearMissesAndNonCanonicalPaths/GET_/ (0.00s) 2026-10-22T08:23:48.578192832Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/apps/apply 2026-10-22T08:23:48.578198269Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/apps/blog 2026-10-22T08:23:48.578203646Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/apps/blog/diff 2026-10-22T08:23:48.578209067Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/deploy 2026-10-22T08:23:48.578214589Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/restart 2026-10-22T08:23:48.578219835Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/stop 2026-10-22T08:23:48.57822557Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/start 2026-10-22T08:23:48.578231584Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/remove 2026-10-22T08:23:48.578237113Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/secrets/set 2026-10-22T08:23:48.578242777Z === RUN TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/secrets/delete 2026-10-22T08:23:48.578251755Z === RUN TestLocalAuthorityCanonicalAllowlist/GET_/apps/blog/operations/by-key/request-1 2026-10-22T08:23:48.578261555Z --- PASS: TestLocalAuthorityCanonicalAllowlist (0.00s) 2026-10-22T08:23:48.578279383Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/status (0.00s) 2026-10-22T08:23:48.578298561Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/tls/status (0.00s) 2026-10-22T08:23:48.578317707Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/traffic/status (0.00s) 2026-10-22T08:23:48.578335474Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/config (0.00s) 2026-10-22T08:23:48.578353642Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/networks (0.00s) 2026-10-22T08:23:48.578371682Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/volumes (0.00s) 2026-10-22T08:23:48.578391126Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/volumes/prune (0.00s) 2026-10-22T08:23:48.578408992Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/images (0.00s) 2026-10-22T08:23:48.578427778Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/images/prune (0.00s) 2026-10-22T08:23:48.57844555Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/reload (0.00s) 2026-10-22T08:23:48.578465447Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/tags/repository (0.00s) 2026-10-22T08:23:48.578483252Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/logs (0.00s) 2026-10-22T08:23:48.578502223Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/logs/blog/web (0.00s) 2026-10-22T08:23:48.57852035Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/backups (0.00s) 2026-10-22T08:23:48.578539565Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/backups/status (0.00s) 2026-10-22T08:23:48.578557368Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/backups/shop (0.00s) 2026-10-22T08:23:48.57857445Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/backups/shop (0.00s) 2026-10-22T08:23:48.578593925Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/backups/volumes (0.00s) 2026-10-22T08:23:48.578612878Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/backups/volumes (0.00s) 2026-10-22T08:23:48.578633007Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/backups/volumes/status (0.00s) 2026-10-22T08:23:48.578688416Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/backups/volumes/blog.example.com (0.00s) 2026-10-22T08:23:48.578719607Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/backups/volumes/blog.example.com (0.00s) 2026-10-22T08:23:48.578747148Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/apps (0.00s) 2026-10-22T08:23:48.5787718Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/apps/apply (0.00s) 2026-10-22T08:23:48.578802207Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/apps/blog (0.00s) 2026-10-22T08:23:48.578827275Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/apps/blog/diff (0.00s) 2026-10-22T08:23:48.578852907Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/deploy (0.00s) 2026-10-22T08:23:48.578876708Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/restart (0.00s) 2026-10-22T08:23:48.578930034Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/stop (0.00s) 2026-10-22T08:23:48.578961389Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/start (0.00s) 2026-10-22T08:23:48.579003294Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/remove (0.00s) 2026-10-22T08:23:48.579033512Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/secrets/set (0.00s) 2026-10-22T08:23:48.579061738Z --- PASS: TestLocalAuthorityCanonicalAllowlist/POST_/apps/blog/secrets/delete (0.00s) 2026-10-22T08:23:48.579087582Z --- PASS: TestLocalAuthorityCanonicalAllowlist/GET_/apps/blog/operations/by-key/request-1 (0.00s) 2026-10-22T08:23:48.579122633Z PASS 2026-10-22T08:23:48.57913585Z ok github.com/bnema/gordon/internal/adapters/in/http/admin 1.099s 2026-10-22T08:23:48.579145936Z === RUN TestHandler_Password_AlwaysGone 2026-10-22T08:23:48.579155873Z --- PASS: TestHandler_Password_AlwaysGone (0.00s) 2026-10-22T08:23:48.579165439Z === RUN TestHandler_Token_Success 2026-10-22T08:23:48.579175286Z --- PASS: TestHandler_Token_Success (0.00s) 2026-10-22T08:23:48.579183Z === RUN TestHandler_Token_MissingCredentials 2026-10-22T08:23:48.579192932Z --- PASS: TestHandler_Token_MissingCredentials (0.00s) 2026-10-22T08:23:48.57920318Z === RUN TestHandler_Token_AuthDisabled 2026-10-22T08:23:48.57921812Z --- PASS: TestHandler_Token_AuthDisabled (0.00s) 2026-10-22T08:23:48.579229557Z === RUN TestHandler_Token_InvalidCredentials 2026-10-22T08:23:48.579287093Z --- PASS: TestHandler_Token_InvalidCredentials (0.00s) 2026-10-22T08:23:48.579302515Z === RUN TestHandler_Token_InternalAuth 2026-10-22T08:23:48.57931223Z --- PASS: TestHandler_Token_InternalAuth (0.00s) 2026-10-22T08:23:48.579328784Z === RUN TestHandler_Token_TokenAuth 2026-10-22T08:23:48.579339201Z --- PASS: TestHandler_Token_TokenAuth (0.00s) 2026-10-22T08:23:48.579344942Z === RUN TestHandler_Token_TokenAuthScopeIntersection 2026-10-22T08:23:48.579354925Z --- PASS: TestHandler_Token_TokenAuthScopeIntersection (0.00s) 2026-10-22T08:23:48.579367403Z === RUN TestHandler_Token_TokenAuthScopeDenied 2026-10-22T08:23:48.579374064Z --- PASS: TestHandler_Token_TokenAuthScopeDenied (0.00s) 2026-10-22T08:23:48.579384331Z === RUN TestHandler_Token_PasswordAuthWithJWT 2026-10-22T08:23:48.579393662Z --- PASS: TestHandler_Token_PasswordAuthWithJWT (0.00s) 2026-10-22T08:23:48.579405142Z === RUN TestHandler_Token_MethodNotAllowed 2026-10-22T08:23:48.579414472Z === RUN TestHandler_Token_MethodNotAllowed/POST 2026-10-22T08:23:48.579423108Z === RUN TestHandler_Token_MethodNotAllowed/PUT 2026-10-22T08:23:48.579431693Z === RUN TestHandler_Token_MethodNotAllowed/DELETE 2026-10-22T08:23:48.579448547Z === RUN TestHandler_Token_MethodNotAllowed/PATCH 2026-10-22T08:23:48.579461788Z --- PASS: TestHandler_Token_MethodNotAllowed (0.00s) 2026-10-22T08:23:48.57947847Z --- PASS: TestHandler_Token_MethodNotAllowed/POST (0.00s) 2026-10-22T08:23:48.579498866Z --- PASS: TestHandler_Token_MethodNotAllowed/PUT (0.00s) 2026-10-22T08:23:48.579515251Z --- PASS: TestHandler_Token_MethodNotAllowed/DELETE (0.00s) 2026-10-22T08:23:48.579536418Z --- PASS: TestHandler_Token_MethodNotAllowed/PATCH (0.00s) 2026-10-22T08:23:48.579547552Z === RUN TestHandler_NotFound 2026-10-22T08:23:48.579572346Z === RUN TestHandler_NotFound//auth/unknown 2026-10-22T08:23:48.579590956Z === RUN TestHandler_NotFound//auth/ 2026-10-22T08:23:48.579601402Z === RUN TestHandler_NotFound//auth 2026-10-22T08:23:48.57961714Z --- PASS: TestHandler_NotFound (0.00s) 2026-10-22T08:23:48.579632994Z --- PASS: TestHandler_NotFound//auth/unknown (0.00s) 2026-10-22T08:23:48.579652914Z --- PASS: TestHandler_NotFound//auth/ (0.00s) 2026-10-22T08:23:48.579677218Z --- PASS: TestHandler_NotFound//auth (0.00s) 2026-10-22T08:23:48.579689101Z === RUN TestParseRequestedScopes_MultipleScopeParams 2026-10-22T08:23:48.579702383Z --- PASS: TestParseRequestedScopes_MultipleScopeParams (0.00s) 2026-10-22T08:23:48.579717403Z === RUN TestParseRequestedScopes_InvalidScopeFiltered 2026-10-22T08:23:48.579732113Z === RUN TestParseRequestedScopes_InvalidScopeFiltered/invalid_format_is_skipped 2026-10-22T08:23:48.579746739Z === RUN TestParseRequestedScopes_InvalidScopeFiltered/missing_actions_is_skipped 2026-10-22T08:23:48.579762419Z === RUN TestParseRequestedScopes_InvalidScopeFiltered/all_invalid_returns_default 2026-10-22T08:23:48.579777928Z --- PASS: TestParseRequestedScopes_InvalidScopeFiltered (0.00s) 2026-10-22T08:23:48.57981137Z --- PASS: TestParseRequestedScopes_InvalidScopeFiltered/invalid_format_is_skipped (0.00s) 2026-10-22T08:23:48.579850184Z --- PASS: TestParseRequestedScopes_InvalidScopeFiltered/missing_actions_is_skipped (0.00s) 2026-10-22T08:23:48.579877539Z --- PASS: TestParseRequestedScopes_InvalidScopeFiltered/all_invalid_returns_default (0.00s) 2026-10-22T08:23:48.579892344Z === RUN TestParseRequestedScopes_NoScopeReturnsDefault 2026-10-22T08:23:48.579909613Z --- PASS: TestParseRequestedScopes_NoScopeReturnsDefault (0.00s) 2026-10-22T08:23:48.579923081Z === RUN TestIsLocalhostRequest 2026-10-22T08:23:48.579937369Z === RUN TestIsLocalhostRequest/127.0.0.1_is_localhost 2026-10-22T08:23:48.579954398Z === RUN TestIsLocalhostRequest/127.0.0.2_is_localhost 2026-10-22T08:23:48.579965289Z === RUN TestIsLocalhostRequest/::1_is_localhost 2026-10-22T08:23:48.57997451Z === RUN TestIsLocalhostRequest/192.168.1.1_is_not_localhost 2026-10-22T08:23:48.579983756Z === RUN TestIsLocalhostRequest/10.0.0.1_is_not_localhost 2026-10-22T08:23:48.579994603Z === RUN TestIsLocalhostRequest/public_IP_is_not_localhost 2026-10-22T08:23:48.580005599Z --- PASS: TestIsLocalhostRequest (0.00s) 2026-10-22T08:23:48.580022914Z --- PASS: TestIsLocalhostRequest/127.0.0.1_is_localhost (0.00s) 2026-10-22T08:23:48.580042346Z --- PASS: TestIsLocalhostRequest/127.0.0.2_is_localhost (0.00s) 2026-10-22T08:23:48.580077597Z --- PASS: TestIsLocalhostRequest/::1_is_localhost (0.00s) 2026-10-22T08:23:48.580103028Z --- PASS: TestIsLocalhostRequest/192.168.1.1_is_not_localhost (0.00s) 2026-10-22T08:23:48.58012386Z --- PASS: TestIsLocalhostRequest/10.0.0.1_is_not_localhost (0.00s) 2026-10-22T08:23:48.580149674Z --- PASS: TestIsLocalhostRequest/public_IP_is_not_localhost (0.00s) 2026-10-22T08:23:48.580163885Z === RUN TestHandler_isInternalAuth 2026-10-22T08:23:48.580179583Z === RUN TestHandler_isInternalAuth/correct_credentials 2026-10-22T08:23:48.580196338Z === RUN TestHandler_isInternalAuth/incorrect_username 2026-10-22T08:23:48.580211196Z === RUN TestHandler_isInternalAuth/incorrect_password 2026-10-22T08:23:48.580224466Z === RUN TestHandler_isInternalAuth/empty_internal_auth_credentials 2026-10-22T08:23:48.580239491Z === RUN TestHandler_isInternalAuth/partially_empty_internal_auth_-_empty_password 2026-10-22T08:23:48.580253419Z === RUN TestHandler_isInternalAuth/partially_empty_internal_auth_-_empty_username 2026-10-22T08:23:48.580264993Z --- PASS: TestHandler_isInternalAuth (0.00s) 2026-10-22T08:23:48.580281819Z --- PASS: TestHandler_isInternalAuth/correct_credentials (0.00s) 2026-10-22T08:23:48.580298875Z --- PASS: TestHandler_isInternalAuth/incorrect_username (0.00s) 2026-10-22T08:23:48.580315336Z --- PASS: TestHandler_isInternalAuth/incorrect_password (0.00s) 2026-10-22T08:23:48.580340709Z --- PASS: TestHandler_isInternalAuth/empty_internal_auth_credentials (0.00s) 2026-10-22T08:23:48.580363529Z --- PASS: TestHandler_isInternalAuth/partially_empty_internal_auth_-_empty_password (0.00s) 2026-10-22T08:23:48.580389281Z --- PASS: TestHandler_isInternalAuth/partially_empty_internal_auth_-_empty_username (0.00s) 2026-10-22T08:23:48.58040447Z === RUN TestHandler_Token_EphemeralTokenRejected 2026-10-22T08:23:48.580418519Z --- PASS: TestHandler_Token_EphemeralTokenRejected (0.00s) 2026-10-22T08:23:48.580434029Z === RUN TestHandler_Token_LongLivedTokenAccepted 2026-10-22T08:23:48.580447582Z --- PASS: TestHandler_Token_LongLivedTokenAccepted (0.00s) 2026-10-22T08:23:48.58046712Z === RUN TestHandler_Token_AdminScopeSuccess 2026-10-22T08:23:48.580482102Z --- PASS: TestHandler_Token_AdminScopeSuccess (0.00s) 2026-10-22T08:23:48.580501486Z === RUN TestHandler_Token_AdminScopeDeniedWithRegistryOnly 2026-10-22T08:23:48.580521603Z --- PASS: TestHandler_Token_AdminScopeDeniedWithRegistryOnly (0.00s) 2026-10-22T08:23:48.58054201Z === RUN TestHandler_Token_AdminScopeWildcard 2026-10-22T08:23:48.580556437Z --- PASS: TestHandler_Token_AdminScopeWildcard (0.00s) 2026-10-22T08:23:48.580567356Z PASS 2026-10-22T08:23:48.580579479Z ok github.com/bnema/gordon/internal/adapters/in/http/auth 1.024s 2026-10-22T08:23:48.580588367Z === RUN TestIsLocalhostRequest 2026-10-22T08:23:48.580602283Z === RUN TestIsLocalhostRequest/ipv4_loopback 2026-10-22T08:23:48.580612143Z === RUN TestIsLocalhostRequest/ipv4_loopback_other 2026-10-22T08:23:48.580621213Z === RUN TestIsLocalhostRequest/ipv6_loopback_bracketed 2026-10-22T08:23:48.580629731Z === RUN TestIsLocalhostRequest/external_ipv4 2026-10-22T08:23:48.580641452Z === RUN TestIsLocalhostRequest/external_ipv6 2026-10-22T08:23:48.580651872Z === RUN TestIsLocalhostRequest/empty 2026-10-22T08:23:48.580662684Z --- PASS: TestIsLocalhostRequest (0.00s) 2026-10-22T08:23:48.580680081Z --- PASS: TestIsLocalhostRequest/ipv4_loopback (0.00s) 2026-10-22T08:23:48.580697557Z --- PASS: TestIsLocalhostRequest/ipv4_loopback_other (0.00s) 2026-10-22T08:23:48.58071783Z --- PASS: TestIsLocalhostRequest/ipv6_loopback_bracketed (0.00s) 2026-10-22T08:23:48.580738421Z --- PASS: TestIsLocalhostRequest/external_ipv4 (0.00s) 2026-10-22T08:23:48.580756888Z --- PASS: TestIsLocalhostRequest/external_ipv6 (0.00s) 2026-10-22T08:23:48.580771608Z --- PASS: TestIsLocalhostRequest/empty (0.00s) 2026-10-22T08:23:48.580781734Z PASS 2026-10-22T08:23:48.580791996Z ok github.com/bnema/gordon/internal/adapters/in/http/httphelper 1.010s 2026-10-22T08:24:00.588053093Z === RUN TestAccessLogger_EmitsEntryPerRequest 2026-10-22T08:24:00.588103391Z --- PASS: TestAccessLogger_EmitsEntryPerRequest (0.00s) 2026-10-22T08:24:00.588113181Z === RUN TestAccessLogger_RedactsSensitiveQueryParams 2026-10-22T08:24:00.588133465Z --- PASS: TestAccessLogger_RedactsSensitiveQueryParams (0.00s) 2026-10-22T08:24:00.588143425Z === RUN TestAccessLogger_RedactsSensitiveReferers 2026-10-22T08:24:00.588151861Z === RUN TestAccessLogger_RedactsSensitiveReferers/query_params 2026-10-22T08:24:00.588163163Z === RUN TestAccessLogger_RedactsSensitiveReferers/fragment_removed 2026-10-22T08:24:00.588183243Z === RUN TestAccessLogger_RedactsSensitiveReferers/userinfo_removed 2026-10-22T08:24:00.588197139Z === RUN TestAccessLogger_RedactsSensitiveReferers/malformed_query_key_redacted_conservatively 2026-10-22T08:24:00.588207542Z --- PASS: TestAccessLogger_RedactsSensitiveReferers (0.00s) 2026-10-22T08:24:00.588227092Z --- PASS: TestAccessLogger_RedactsSensitiveReferers/query_params (0.00s) 2026-10-22T08:24:00.588252531Z --- PASS: TestAccessLogger_RedactsSensitiveReferers/fragment_removed (0.00s) 2026-10-22T08:24:00.588274356Z --- PASS: TestAccessLogger_RedactsSensitiveReferers/userinfo_removed (0.00s) 2026-10-22T08:24:00.588301752Z --- PASS: TestAccessLogger_RedactsSensitiveReferers/malformed_query_key_redacted_conservatively (0.00s) 2026-10-22T08:24:00.588314746Z === RUN TestAccessLogger_RequestIDReused 2026-10-22T08:24:00.588321197Z --- PASS: TestAccessLogger_RequestIDReused (0.00s) 2026-10-22T08:24:00.588326352Z === RUN TestAccessLogger_ExcludeHealthCheckUA 2026-10-22T08:24:00.588335541Z --- PASS: TestAccessLogger_ExcludeHealthCheckUA (0.00s) 2026-10-22T08:24:00.588349269Z === RUN TestAccessLogger_ExcludeLoopbackIP 2026-10-22T08:24:00.588371158Z --- PASS: TestAccessLogger_ExcludeLoopbackIP (0.00s) 2026-10-22T08:24:00.588381111Z === RUN TestAccessLogger_NoExcludeWhenDisabled 2026-10-22T08:24:00.588389733Z --- PASS: TestAccessLogger_NoExcludeWhenDisabled (0.00s) 2026-10-22T08:24:00.588395701Z === RUN TestAccessLogger_WriteFailureDoesNotAffectResponse 2026-10-22T08:24:00.588412371Z 2026-10-22T08:23:47Z WRN access log write failed error="disk full" adapter=http client_ip=192.0.2.1 layer=adapter method=GET path=/ request_id=5b5745b8bd646e0d9361d168cde874e9 status=200 2026-10-22T08:24:00.588429211Z --- PASS: TestAccessLogger_WriteFailureDoesNotAffectResponse (0.00s) 2026-10-22T08:24:00.588438254Z === RUN TestAccessLogger_PanicRecoveryChain_Captures500 2026-10-22T08:24:00.588452356Z 2026-10-22T08:23:47Z ERR panic recovered adapter=http host=example.com layer=adapter method=GET panic="test panic" path=/crash 2026-10-22T08:24:00.588460136Z --- PASS: TestAccessLogger_PanicRecoveryChain_Captures500 (0.00s) 2026-10-22T08:24:00.588469761Z === RUN TestRegistryAuthV2_LocalhostBypassRequiresInternalAuth 2026-10-22T08:24:00.58847985Z --- PASS: TestRegistryAuthV2_LocalhostBypassRequiresInternalAuth (0.00s) 2026-10-22T08:24:00.58849216Z === RUN TestRegistryAuthV2_LocalhostWrongInternalAuthFallsBack 2026-10-22T08:24:00.588506979Z 2026-10-22T08:23:47Z WRN unauthorized registry access attempt adapter=http client_ip=127.0.0.1 layer=adapter method=GET path=/v2/ 2026-10-22T08:24:00.58851733Z --- PASS: TestRegistryAuthV2_LocalhostWrongInternalAuthFallsBack (0.00s) 2026-10-22T08:24:00.588531102Z === RUN TestRegistryAuthV2_NonLocalhostIgnoresInternalAuth 2026-10-22T08:24:00.588547587Z 2026-10-22T08:23:47Z WRN registry auth over insecure HTTP connection adapter=http client_ip=192.168.1.10 layer=adapter method=GET path=/v2/ 2026-10-22T08:24:00.588568694Z 2026-10-22T08:23:47Z WRN unauthorized registry access attempt adapter=http client_ip=192.168.1.10 layer=adapter method=GET path=/v2/ 2026-10-22T08:24:00.588581756Z --- PASS: TestRegistryAuthV2_NonLocalhostIgnoresInternalAuth (0.00s) 2026-10-22T08:24:00.588592882Z === RUN TestCheckScopeAccess_ActionMapping 2026-10-22T08:24:00.588604767Z === RUN TestCheckScopeAccess_ActionMapping/GET_maps_to_pull 2026-10-22T08:24:00.58861807Z === RUN TestCheckScopeAccess_ActionMapping/HEAD_maps_to_pull 2026-10-22T08:24:00.588627969Z === RUN TestCheckScopeAccess_ActionMapping/PUT_maps_to_push 2026-10-22T08:24:00.588639553Z === RUN TestCheckScopeAccess_ActionMapping/POST_maps_to_push 2026-10-22T08:24:00.588651521Z === RUN TestCheckScopeAccess_ActionMapping/PATCH_maps_to_push 2026-10-22T08:24:00.588669994Z === RUN TestCheckScopeAccess_ActionMapping/DELETE_maps_to_push 2026-10-22T08:24:00.588682628Z === RUN TestCheckScopeAccess_ActionMapping/OPTIONS_defaults_to_pull 2026-10-22T08:24:00.588693817Z --- PASS: TestCheckScopeAccess_ActionMapping (0.00s) 2026-10-22T08:24:00.588718835Z --- PASS: TestCheckScopeAccess_ActionMapping/GET_maps_to_pull (0.00s) 2026-10-22T08:24:00.588741496Z --- PASS: TestCheckScopeAccess_ActionMapping/HEAD_maps_to_pull (0.00s) 2026-10-22T08:24:00.58876391Z --- PASS: TestCheckScopeAccess_ActionMapping/PUT_maps_to_push (0.00s) 2026-10-22T08:24:00.588785712Z --- PASS: TestCheckScopeAccess_ActionMapping/POST_maps_to_push (0.00s) 2026-10-22T08:24:00.588808038Z --- PASS: TestCheckScopeAccess_ActionMapping/PATCH_maps_to_push (0.00s) 2026-10-22T08:24:00.588829892Z --- PASS: TestCheckScopeAccess_ActionMapping/DELETE_maps_to_push (0.00s) 2026-10-22T08:24:00.588853071Z --- PASS: TestCheckScopeAccess_ActionMapping/OPTIONS_defaults_to_pull (0.00s) 2026-10-22T08:24:00.588864867Z === RUN TestCheckScopeAccess_RepoNameExtraction 2026-10-22T08:24:00.588878138Z === RUN TestCheckScopeAccess_RepoNameExtraction/simple_repo_with_manifests 2026-10-22T08:24:00.588899834Z === RUN TestCheckScopeAccess_RepoNameExtraction/simple_repo_with_blobs 2026-10-22T08:24:00.58891547Z === RUN TestCheckScopeAccess_RepoNameExtraction/nested_repo_with_manifests 2026-10-22T08:24:00.588929822Z === RUN TestCheckScopeAccess_RepoNameExtraction/deeply_nested_repo 2026-10-22T08:24:00.588941356Z === RUN TestCheckScopeAccess_RepoNameExtraction/repo_with_tags_list 2026-10-22T08:24:00.588951089Z === RUN TestCheckScopeAccess_RepoNameExtraction/wrong_repo_name 2026-10-22T08:24:00.588960393Z --- PASS: TestCheckScopeAccess_RepoNameExtraction (0.00s) 2026-10-22T08:24:00.588981463Z --- PASS: TestCheckScopeAccess_RepoNameExtraction/simple_repo_with_manifests (0.00s) 2026-10-22T08:24:00.589004906Z --- PASS: TestCheckScopeAccess_RepoNameExtraction/simple_repo_with_blobs (0.00s) 2026-10-22T08:24:00.589030176Z --- PASS: TestCheckScopeAccess_RepoNameExtraction/nested_repo_with_manifests (0.00s) 2026-10-22T08:24:00.589053723Z --- PASS: TestCheckScopeAccess_RepoNameExtraction/deeply_nested_repo (0.00s) 2026-10-22T08:24:00.589080672Z --- PASS: TestCheckScopeAccess_RepoNameExtraction/repo_with_tags_list (0.00s) 2026-10-22T08:24:00.589103612Z --- PASS: TestCheckScopeAccess_RepoNameExtraction/wrong_repo_name (0.00s) 2026-10-22T08:24:00.58911689Z === RUN TestCheckScopeAccess_ReservedComponentsCannotRedirectRepository 2026-10-22T08:24:00.589134769Z === RUN TestCheckScopeAccess_ReservedComponentsCannotRedirectRepository/unauthorized_repo_behind_reserved_first_component 2026-10-22T08:24:00.589149738Z === RUN TestCheckScopeAccess_ReservedComponentsCannotRedirectRepository/authorized_prefix_cannot_reach_a_nested_repository 2026-10-22T08:24:00.589168488Z === RUN TestCheckScopeAccess_ReservedComponentsCannotRedirectRepository/pull_token_cannot_PUT_a_reserved-looking_repository 2026-10-22T08:24:00.589186244Z === RUN TestCheckScopeAccess_ReservedComponentsCannotRedirectRepository/exact_nested_repository_is_authorized 2026-10-22T08:24:00.589201497Z --- PASS: TestCheckScopeAccess_ReservedComponentsCannotRedirectRepository (0.00s) 2026-10-22T08:24:00.589234111Z --- PASS: TestCheckScopeAccess_ReservedComponentsCannotRedirectRepository/unauthorized_repo_behind_reserved_first_component (0.00s) 2026-10-22T08:24:00.589269202Z --- PASS: TestCheckScopeAccess_ReservedComponentsCannotRedirectRepository/authorized_prefix_cannot_reach_a_nested_repository (0.00s) 2026-10-22T08:24:00.58930175Z --- PASS: TestCheckScopeAccess_ReservedComponentsCannotRedirectRepository/pull_token_cannot_PUT_a_reserved-looking_repository (0.00s) 2026-10-22T08:24:00.58933112Z --- PASS: TestCheckScopeAccess_ReservedComponentsCannotRedirectRepository/exact_nested_repository_is_authorized (0.00s) 2026-10-22T08:24:00.589344745Z === RUN TestCheckScopeAccess_WildcardMatching 2026-10-22T08:24:00.589359063Z === RUN TestCheckScopeAccess_WildcardMatching/wildcard_repo_matches_any 2026-10-22T08:24:00.589373237Z === RUN TestCheckScopeAccess_WildcardMatching/org_wildcard_matches_repo_in_org 2026-10-22T08:24:00.589386978Z === RUN TestCheckScopeAccess_WildcardMatching/org_wildcard_does_not_match_other_org 2026-10-22T08:24:00.58939933Z === RUN TestCheckScopeAccess_WildcardMatching/wildcard_action_grants_push 2026-10-22T08:24:00.589410897Z --- PASS: TestCheckScopeAccess_WildcardMatching (0.00s) 2026-10-22T08:24:00.589447692Z --- PASS: TestCheckScopeAccess_WildcardMatching/wildcard_repo_matches_any (0.00s) 2026-10-22T08:24:00.589485187Z --- PASS: TestCheckScopeAccess_WildcardMatching/org_wildcard_matches_repo_in_org (0.00s) 2026-10-22T08:24:00.58952846Z --- PASS: TestCheckScopeAccess_WildcardMatching/org_wildcard_does_not_match_other_org (0.00s) 2026-10-22T08:24:00.589565585Z --- PASS: TestCheckScopeAccess_WildcardMatching/wildcard_action_grants_push (0.00s) 2026-10-22T08:24:00.589588091Z === RUN TestCheckScopeAccess_SpecialRoutes 2026-10-22T08:24:00.589610378Z === RUN TestCheckScopeAccess_SpecialRoutes/v2_root_is_allowed 2026-10-22T08:24:00.589628694Z === RUN TestCheckScopeAccess_SpecialRoutes/non-v2_path_is_denied 2026-10-22T08:24:00.589653786Z === RUN TestCheckScopeAccess_SpecialRoutes/catalog_path_is_handled 2026-10-22T08:24:00.589676168Z --- PASS: TestCheckScopeAccess_SpecialRoutes (0.00s) 2026-10-22T08:24:00.589706152Z --- PASS: TestCheckScopeAccess_SpecialRoutes/v2_root_is_allowed (0.00s) 2026-10-22T08:24:00.589737594Z --- PASS: TestCheckScopeAccess_SpecialRoutes/non-v2_path_is_denied (0.00s) 2026-10-22T08:24:00.589768942Z --- PASS: TestCheckScopeAccess_SpecialRoutes/catalog_path_is_handled (0.00s) 2026-10-22T08:24:00.58978632Z === RUN TestRegistryAuthV2_RejectsLongLivedToken 2026-10-22T08:24:00.589814836Z 2026-10-22T08:23:47Z WRN registry auth over insecure HTTP connection adapter=http client_ip=10.0.0.1 layer=adapter method=GET path=/v2/myrepo/manifests/latest 2026-10-22T08:24:00.589842973Z 2026-10-22T08:23:47Z WRN long-lived token rejected on registry endpoint method=GET path=/v2/myrepo/manifests/latest subject=admin 2026-10-22T08:24:00.589867748Z 2026-10-22T08:23:47Z WRN unauthorized registry access attempt adapter=http client_ip=10.0.0.1 layer=adapter method=GET path=/v2/myrepo/manifests/latest 2026-10-22T08:24:00.589890611Z --- PASS: TestRegistryAuthV2_RejectsLongLivedToken (0.00s) 2026-10-22T08:24:00.589912025Z === RUN TestRegistryAuthV2_AcceptsEphemeralToken 2026-10-22T08:24:00.589937717Z 2026-10-22T08:23:47Z WRN registry auth over insecure HTTP connection adapter=http client_ip=10.0.0.1 layer=adapter method=GET path=/v2/myrepo/manifests/latest 2026-10-22T08:24:00.589957602Z --- PASS: TestRegistryAuthV2_AcceptsEphemeralToken (0.00s) 2026-10-22T08:24:00.589979816Z === RUN TestRegistryAuthV2_RejectsLongLivedTokenAsPassword 2026-10-22T08:24:00.590008015Z 2026-10-22T08:23:47Z WRN registry auth over insecure HTTP connection adapter=http client_ip=10.0.0.1 layer=adapter method=GET path=/v2/myrepo/manifests/latest 2026-10-22T08:24:00.590034654Z 2026-10-22T08:23:47Z WRN long-lived token rejected on registry endpoint method=GET path=/v2/myrepo/manifests/latest subject=ci-user 2026-10-22T08:24:00.590062555Z 2026-10-22T08:23:47Z WRN unauthorized registry access attempt adapter=http client_ip=10.0.0.1 layer=adapter method=GET path=/v2/myrepo/manifests/latest 2026-10-22T08:24:00.590085332Z --- PASS: TestRegistryAuthV2_RejectsLongLivedTokenAsPassword (0.00s) 2026-10-22T08:24:00.59010258Z === RUN TestCheckScopeAccess_DenialCases 2026-10-22T08:24:00.590126196Z === RUN TestCheckScopeAccess_DenialCases/pull_scope_denies_push 2026-10-22T08:24:00.590147143Z === RUN TestCheckScopeAccess_DenialCases/wrong_repo_denies_access 2026-10-22T08:24:00.590169275Z === RUN TestCheckScopeAccess_DenialCases/empty_scopes_denies_access 2026-10-22T08:24:00.590189923Z === RUN TestCheckScopeAccess_DenialCases/invalid_scope_format_is_skipped 2026-10-22T08:24:00.5902101Z --- PASS: TestCheckScopeAccess_DenialCases (0.00s) 2026-10-22T08:24:00.590239963Z --- PASS: TestCheckScopeAccess_DenialCases/pull_scope_denies_push (0.00s) 2026-10-22T08:24:00.590272545Z --- PASS: TestCheckScopeAccess_DenialCases/wrong_repo_denies_access (0.00s) 2026-10-22T08:24:00.590303362Z --- PASS: TestCheckScopeAccess_DenialCases/empty_scopes_denies_access (0.00s) 2026-10-22T08:24:00.590340184Z --- PASS: TestCheckScopeAccess_DenialCases/invalid_scope_format_is_skipped (0.00s) 2026-10-22T08:24:00.590362672Z === RUN TestRegistryCIDRAllowlist 2026-10-22T08:24:00.590384549Z === RUN TestRegistryCIDRAllowlist/no_CIDRs_configured_passes_through 2026-10-22T08:24:00.590403287Z === RUN TestRegistryCIDRAllowlist/empty_CIDRs_passes_through 2026-10-22T08:24:00.59042539Z === RUN TestRegistryCIDRAllowlist/allowed_IP_returns_200 2026-10-22T08:24:00.590445851Z === RUN TestRegistryCIDRAllowlist/denied_IP_returns_403 2026-10-22T08:24:00.590472773Z 2026-10-22T08:23:47Z WRN registry access denied by CIDR allowlist adapter=http client_ip=203.0.113.50 layer=adapter method=GET 2026-10-22T08:24:00.59049302Z === RUN TestRegistryCIDRAllowlist/localhost_always_allowed_even_when_not_in_allowlist 2026-10-22T08:24:00.590509342Z === RUN TestRegistryCIDRAllowlist/127.x.x.x_always_allowed 2026-10-22T08:24:00.590524818Z === RUN TestRegistryCIDRAllowlist/IPv6_localhost_always_allowed 2026-10-22T08:24:00.590540891Z === RUN TestRegistryCIDRAllowlist/trusted_proxy_forwards_allowed_client_IP 2026-10-22T08:24:00.59056216Z === RUN TestRegistryCIDRAllowlist/trusted_proxy_forwards_denied_client_IP 2026-10-22T08:24:00.59060708Z 2026-10-22T08:23:47Z WRN registry access denied by CIDR allowlist adapter=http client_ip=203.0.113.50 layer=adapter method=GET 2026-10-22T08:24:00.590632211Z --- PASS: TestRegistryCIDRAllowlist (0.00s) 2026-10-22T08:24:00.59068195Z --- PASS: TestRegistryCIDRAllowlist/no_CIDRs_configured_passes_through (0.00s) 2026-10-22T08:24:00.590729358Z --- PASS: TestRegistryCIDRAllowlist/empty_CIDRs_passes_through (0.00s) 2026-10-22T08:24:00.590764924Z --- PASS: TestRegistryCIDRAllowlist/allowed_IP_returns_200 (0.00s) 2026-10-22T08:24:00.59080055Z --- PASS: TestRegistryCIDRAllowlist/denied_IP_returns_403 (0.00s) 2026-10-22T08:24:00.590839036Z --- PASS: TestRegistryCIDRAllowlist/localhost_always_allowed_even_when_not_in_allowlist (0.00s) 2026-10-22T08:24:00.590874641Z --- PASS: TestRegistryCIDRAllowlist/127.x.x.x_always_allowed (0.00s) 2026-10-22T08:24:00.590910512Z --- PASS: TestRegistryCIDRAllowlist/IPv6_localhost_always_allowed (0.00s) 2026-10-22T08:24:00.590947129Z --- PASS: TestRegistryCIDRAllowlist/trusted_proxy_forwards_allowed_client_IP (0.00s) 2026-10-22T08:24:00.590982779Z --- PASS: TestRegistryCIDRAllowlist/trusted_proxy_forwards_denied_client_IP (0.00s) 2026-10-22T08:24:00.591000923Z === RUN TestHTTPSRedirect_NoPortHost_OmitsTLSPort 2026-10-22T08:24:00.591026223Z --- PASS: TestHTTPSRedirect_NoPortHost_OmitsTLSPort (0.00s) 2026-10-22T08:24:00.591043657Z === RUN TestHTTPSRedirect_HTTPListenerPort_MapsToTLSPort 2026-10-22T08:24:00.591062571Z --- PASS: TestHTTPSRedirect_HTTPListenerPort_MapsToTLSPort (0.00s) 2026-10-22T08:24:00.59108006Z === RUN TestHTTPSRedirect_UnknownExplicitPort_IsPreserved 2026-10-22T08:24:00.591097219Z --- PASS: TestHTTPSRedirect_UnknownExplicitPort_IsPreserved (0.00s) 2026-10-22T08:24:00.591118885Z === RUN TestHTTPSRedirect_TrailingDotHostRedirectsToCanonicalHost 2026-10-22T08:24:00.591137832Z --- PASS: TestHTTPSRedirect_TrailingDotHostRedirectsToCanonicalHost (0.00s) 2026-10-22T08:24:00.59115961Z === RUN TestHTTPSRedirect_RejectsInvalidHost 2026-10-22T08:24:00.591182447Z === RUN TestHTTPSRedirect_RejectsInvalidHost/invalid_port 2026-10-22T08:24:00.591203365Z === RUN TestHTTPSRedirect_RejectsInvalidHost/localhost 2026-10-22T08:24:00.591221336Z === RUN TestHTTPSRedirect_RejectsInvalidHost/ipv6 2026-10-22T08:24:00.591241217Z === RUN TestHTTPSRedirect_RejectsInvalidHost/unconfigured_public_host 2026-10-22T08:24:00.591260629Z --- PASS: TestHTTPSRedirect_RejectsInvalidHost (0.00s) 2026-10-22T08:24:00.59129005Z --- PASS: TestHTTPSRedirect_RejectsInvalidHost/invalid_port (0.00s) 2026-10-22T08:24:00.591318274Z --- PASS: TestHTTPSRedirect_RejectsInvalidHost/localhost (0.00s) 2026-10-22T08:24:00.591350906Z --- PASS: TestHTTPSRedirect_RejectsInvalidHost/ipv6 (0.00s) 2026-10-22T08:24:00.591384466Z --- PASS: TestHTTPSRedirect_RejectsInvalidHost/unconfigured_public_host (0.00s) 2026-10-22T08:24:00.591405658Z === RUN TestHTTPSRedirect_TLSAlwaysNeverServesPlaintext 2026-10-22T08:24:00.59143281Z 2026-10-22T08:23:47Z WRN plaintext refused: host requires TLS but no HTTPS endpoint is configured host=secure.example.com 2026-10-22T08:24:00.591454234Z --- PASS: TestHTTPSRedirect_TLSAlwaysNeverServesPlaintext (0.00s) 2026-10-22T08:24:00.591478421Z === RUN TestHTTPSRedirect_TLSAlwaysIgnoresDisabledRedirectConfig 2026-10-22T08:24:00.591499278Z --- PASS: TestHTTPSRedirect_TLSAlwaysIgnoresDisabledRedirectConfig (0.00s) 2026-10-22T08:24:00.591518807Z === RUN TestHTTPSRedirect_IneligibleKnownHostPassesThrough 2026-10-22T08:24:00.591548064Z --- PASS: TestHTTPSRedirect_IneligibleKnownHostPassesThrough (0.00s) 2026-10-22T08:24:00.591570138Z === RUN TestProxyCIDRAllowlist 2026-10-22T08:24:00.591596866Z === RUN TestProxyCIDRAllowlist/no_CIDRs_configured_passes_through 2026-10-22T08:24:00.591621395Z === RUN TestProxyCIDRAllowlist/allowed_IP_gets_redirect 2026-10-22T08:24:00.591644597Z === RUN TestProxyCIDRAllowlist/blocked_IP_gets_403 2026-10-22T08:24:00.591675503Z 2026-10-22T08:23:47Z WRN proxy origin access denied by CIDR allowlist adapter=http client_ip=203.0.113.50 layer=adapter method=GET 2026-10-22T08:24:00.591695178Z === RUN TestProxyCIDRAllowlist/localhost_always_allowed 2026-10-22T08:24:00.59171844Z === RUN TestProxyCIDRAllowlist/ignores_XFF_(uses_RemoteAddr_only) 2026-10-22T08:24:00.591751777Z 2026-10-22T08:23:47Z WRN proxy origin access denied by CIDR allowlist adapter=http client_ip=203.0.113.50 layer=adapter method=GET 2026-10-22T08:24:00.591773249Z --- PASS: TestProxyCIDRAllowlist (0.00s) 2026-10-22T08:24:00.591806086Z --- PASS: TestProxyCIDRAllowlist/no_CIDRs_configured_passes_through (0.00s) 2026-10-22T08:24:00.591837954Z --- PASS: TestProxyCIDRAllowlist/allowed_IP_gets_redirect (0.00s) 2026-10-22T08:24:00.591872174Z --- PASS: TestProxyCIDRAllowlist/blocked_IP_gets_403 (0.00s) 2026-10-22T08:24:00.591908129Z --- PASS: TestProxyCIDRAllowlist/localhost_always_allowed (0.00s) 2026-10-22T08:24:00.591942292Z --- PASS: TestProxyCIDRAllowlist/ignores_XFF_(uses_RemoteAddr_only) (0.00s) 2026-10-22T08:24:00.59196117Z === RUN TestGetClientIP 2026-10-22T08:24:00.591980791Z === RUN TestGetClientIP/from_RemoteAddr_with_port 2026-10-22T08:24:00.591999903Z === RUN TestGetClientIP/from_RemoteAddr_without_port 2026-10-22T08:24:00.592022055Z === RUN TestGetClientIP/XFF_ignored_when_no_trusted_proxies 2026-10-22T08:24:00.592045127Z === RUN TestGetClientIP/XFF_ignored_when_remote_is_not_trusted 2026-10-22T08:24:00.592068805Z === RUN TestGetClientIP/XFF_honored_from_trusted_proxy_(single_IP) 2026-10-22T08:24:00.592087335Z === RUN TestGetClientIP/XFF_honored_from_trusted_proxy_(multiple_IPs) 2026-10-22T08:24:00.592105445Z === RUN TestGetClientIP/XFF_spoof_chain_returns_first_untrusted_from_right 2026-10-22T08:24:00.592123113Z === RUN TestGetClientIP/XFF_honored_from_trusted_CIDR 2026-10-22T08:24:00.592146163Z === RUN TestGetClientIP/X-Real-IP_honored_from_trusted_proxy 2026-10-22T08:24:00.592171613Z === RUN TestGetClientIP/X-Real-IP_ignored_when_not_trusted 2026-10-22T08:24:00.592194372Z === RUN TestGetClientIP/XFF_takes_precedence_over_X-Real-IP 2026-10-22T08:24:00.592240197Z === RUN TestGetClientIP/Cf-Connecting-Ip_honored_from_Cloudflare_IP 2026-10-22T08:24:00.59225803Z === RUN TestGetClientIP/Cf-Connecting-Ip_ignored_from_non-Cloudflare_trusted_proxy 2026-10-22T08:24:00.592277064Z === RUN TestGetClientIP/Cf-Connecting-Ip_ignored_from_untrusted_IP 2026-10-22T08:24:00.592297003Z === RUN TestGetClientIP/IPv6_RemoteAddr 2026-10-22T08:24:00.592320387Z --- PASS: TestGetClientIP (0.00s) 2026-10-22T08:24:00.592355842Z --- PASS: TestGetClientIP/from_RemoteAddr_with_port (0.00s) 2026-10-22T08:24:00.592391125Z --- PASS: TestGetClientIP/from_RemoteAddr_without_port (0.00s) 2026-10-22T08:24:00.592428881Z --- PASS: TestGetClientIP/XFF_ignored_when_no_trusted_proxies (0.00s) 2026-10-22T08:24:00.59246793Z --- PASS: TestGetClientIP/XFF_ignored_when_remote_is_not_trusted (0.00s) 2026-10-22T08:24:00.592507752Z --- PASS: TestGetClientIP/XFF_honored_from_trusted_proxy_(single_IP) (0.00s) 2026-10-22T08:24:00.592548209Z --- PASS: TestGetClientIP/XFF_honored_from_trusted_proxy_(multiple_IPs) (0.00s) 2026-10-22T08:24:00.592588388Z --- PASS: TestGetClientIP/XFF_spoof_chain_returns_first_untrusted_from_right (0.00s) 2026-10-22T08:24:00.592624757Z --- PASS: TestGetClientIP/XFF_honored_from_trusted_CIDR (0.00s) 2026-10-22T08:24:00.592658464Z --- PASS: TestGetClientIP/X-Real-IP_honored_from_trusted_proxy (0.00s) 2026-10-22T08:24:00.592695924Z --- PASS: TestGetClientIP/X-Real-IP_ignored_when_not_trusted (0.00s) 2026-10-22T08:24:00.592735263Z --- PASS: TestGetClientIP/XFF_takes_precedence_over_X-Real-IP (0.00s) 2026-10-22T08:24:00.592774574Z --- PASS: TestGetClientIP/Cf-Connecting-Ip_honored_from_Cloudflare_IP (0.00s) 2026-10-22T08:24:00.592815012Z --- PASS: TestGetClientIP/Cf-Connecting-Ip_ignored_from_non-Cloudflare_trusted_proxy (0.00s) 2026-10-22T08:24:00.592853119Z --- PASS: TestGetClientIP/Cf-Connecting-Ip_ignored_from_untrusted_IP (0.00s) 2026-10-22T08:24:00.592886894Z --- PASS: TestGetClientIP/IPv6_RemoteAddr (0.00s) 2026-10-22T08:24:00.592911628Z === RUN TestParseTrustedProxies 2026-10-22T08:24:00.592931174Z === RUN TestParseTrustedProxies/empty_list 2026-10-22T08:24:00.592948709Z === RUN TestParseTrustedProxies/single_IP_match 2026-10-22T08:24:00.592969747Z === RUN TestParseTrustedProxies/single_IP_no_match 2026-10-22T08:24:00.592991642Z === RUN TestParseTrustedProxies/CIDR_match 2026-10-22T08:24:00.593011015Z === RUN TestParseTrustedProxies/CIDR_no_match 2026-10-22T08:24:00.593028662Z === RUN TestParseTrustedProxies/mixed_IP_and_CIDR 2026-10-22T08:24:00.593046631Z === RUN TestParseTrustedProxies/invalid_entries_ignored 2026-10-22T08:24:00.593071349Z === RUN TestParseTrustedProxies/IPv6_single_IP 2026-10-22T08:24:00.593089366Z === RUN TestParseTrustedProxies/IPv6_CIDR 2026-10-22T08:24:00.593104596Z --- PASS: TestParseTrustedProxies (0.00s) 2026-10-22T08:24:00.593137764Z --- PASS: TestParseTrustedProxies/empty_list (0.00s) 2026-10-22T08:24:00.593174608Z --- PASS: TestParseTrustedProxies/single_IP_match (0.00s) 2026-10-22T08:24:00.593209422Z --- PASS: TestParseTrustedProxies/single_IP_no_match (0.00s) 2026-10-22T08:24:00.593241101Z --- PASS: TestParseTrustedProxies/CIDR_match (0.00s) 2026-10-22T08:24:00.593268019Z --- PASS: TestParseTrustedProxies/CIDR_no_match (0.00s) 2026-10-22T08:24:00.593302546Z --- PASS: TestParseTrustedProxies/mixed_IP_and_CIDR (0.00s) 2026-10-22T08:24:00.593336472Z --- PASS: TestParseTrustedProxies/invalid_entries_ignored (0.00s) 2026-10-22T08:24:00.593360081Z --- PASS: TestParseTrustedProxies/IPv6_single_IP (0.00s) 2026-10-22T08:24:00.593383047Z --- PASS: TestParseTrustedProxies/IPv6_CIDR (0.00s) 2026-10-22T08:24:00.593392893Z === RUN TestIsTrustedProxy 2026-10-22T08:24:00.593403037Z === RUN TestIsTrustedProxy/empty_trusted_nets 2026-10-22T08:24:00.593412212Z === RUN TestIsTrustedProxy/nil_trusted_nets 2026-10-22T08:24:00.593420543Z === RUN TestIsTrustedProxy/invalid_IP 2026-10-22T08:24:00.593428765Z === RUN TestIsTrustedProxy/empty_IP 2026-10-22T08:24:00.593442827Z --- PASS: TestIsTrustedProxy (0.00s) 2026-10-22T08:24:00.593474828Z --- PASS: TestIsTrustedProxy/empty_trusted_nets (0.00s) 2026-10-22T08:24:00.593509138Z --- PASS: TestIsTrustedProxy/nil_trusted_nets (0.00s) 2026-10-22T08:24:00.593534683Z --- PASS: TestIsTrustedProxy/invalid_IP (0.00s) 2026-10-22T08:24:00.593555344Z --- PASS: TestIsTrustedProxy/empty_IP (0.00s) 2026-10-22T08:24:00.593568505Z === RUN TestRequestLogger_RedactsSensitiveReferers 2026-10-22T08:24:00.593580723Z === RUN TestRequestLogger_RedactsSensitiveReferers/query_params 2026-10-22T08:24:00.593593476Z === RUN TestRequestLogger_RedactsSensitiveReferers/fragment_removed 2026-10-22T08:24:00.593609484Z === RUN TestRequestLogger_RedactsSensitiveReferers/userinfo_removed 2026-10-22T08:24:00.593624823Z === RUN TestRequestLogger_RedactsSensitiveReferers/malformed_query_key_redacted_conservatively 2026-10-22T08:24:00.593644765Z --- PASS: TestRequestLogger_RedactsSensitiveReferers (0.00s) 2026-10-22T08:24:00.593669843Z --- PASS: TestRequestLogger_RedactsSensitiveReferers/query_params (0.00s) 2026-10-22T08:24:00.593693759Z --- PASS: TestRequestLogger_RedactsSensitiveReferers/fragment_removed (0.00s) 2026-10-22T08:24:00.593717324Z --- PASS: TestRequestLogger_RedactsSensitiveReferers/userinfo_removed (0.00s) 2026-10-22T08:24:00.593745935Z --- PASS: TestRequestLogger_RedactsSensitiveReferers/malformed_query_key_redacted_conservatively (0.00s) 2026-10-22T08:24:00.593757691Z === RUN TestPanicRecovery_RethrowsReverseProxyAbort 2026-10-22T08:24:00.59377023Z --- PASS: TestPanicRecovery_RethrowsReverseProxyAbort (0.00s) 2026-10-22T08:24:00.593780962Z === RUN TestSecurityHeaders 2026-10-22T08:24:00.593795193Z --- PASS: TestSecurityHeaders (0.00s) 2026-10-22T08:24:00.59380626Z === RUN TestSecurityHeaders_HSTS_WithTLS 2026-10-22T08:24:00.593819206Z --- PASS: TestSecurityHeaders_HSTS_WithTLS (0.00s) 2026-10-22T08:24:00.593833037Z === RUN TestSecurityHeaders_HSTS_WithForwardedProto_NotTrusted 2026-10-22T08:24:00.593850053Z --- PASS: TestSecurityHeaders_HSTS_WithForwardedProto_NotTrusted (0.00s) 2026-10-22T08:24:00.593860504Z === RUN TestSecurityHeaders_PreservesExistingHeaders 2026-10-22T08:24:00.593874293Z --- PASS: TestSecurityHeaders_PreservesExistingHeaders (0.00s) 2026-10-22T08:24:00.593883866Z === RUN TestSecurityHeaders_CallsNextHandler 2026-10-22T08:24:00.593897762Z --- PASS: TestSecurityHeaders_CallsNextHandler (0.00s) 2026-10-22T08:24:00.593920074Z === RUN TestTransferIdleTimeout_SlowActiveDownloadCompletes 2026-10-22T08:24:00.593933499Z --- PASS: TestTransferIdleTimeout_SlowActiveDownloadCompletes (0.60s) 2026-10-22T08:24:00.593945325Z === RUN TestTransferIdleTimeout_SilentResponseIsCut 2026-10-22T08:24:00.593957206Z --- PASS: TestTransferIdleTimeout_SilentResponseIsCut (0.90s) 2026-10-22T08:24:00.593972133Z === RUN TestTransferIdleTimeout_SilentHandlerBeforeFirstByteIsCut 2026-10-22T08:24:00.593983639Z --- PASS: TestTransferIdleTimeout_SilentHandlerBeforeFirstByteIsCut (0.90s) 2026-10-22T08:24:00.593999292Z === RUN TestTransferIdleTimeout_SlowActiveUploadCompletes 2026-10-22T08:24:00.594009104Z --- PASS: TestTransferIdleTimeout_SlowActiveUploadCompletes (0.60s) 2026-10-22T08:24:00.594018248Z === RUN TestTransferIdleTimeout_StalledUploadIsCut 2026-10-22T08:24:00.59402882Z --- PASS: TestTransferIdleTimeout_StalledUploadIsCut (0.80s) 2026-10-22T08:24:00.594044653Z === RUN TestTransferIdleTimeout_PreservesFlusherAndUnwrap 2026-10-22T08:24:00.594055823Z --- PASS: TestTransferIdleTimeout_PreservesFlusherAndUnwrap (0.00s) 2026-10-22T08:24:00.594064716Z === RUN TestTransferIdleTimeout_HijackStillWorks 2026-10-22T08:24:00.594072662Z --- PASS: TestTransferIdleTimeout_HijackStillWorks (0.60s) 2026-10-22T08:24:00.594080657Z === RUN TestTransferIdleTimeout_ReverseProxyFlushesStream 2026-10-22T08:24:00.594092128Z --- PASS: TestTransferIdleTimeout_ReverseProxyFlushesStream (0.40s) 2026-10-22T08:24:00.594103758Z === RUN TestTransferIdleTimeout_DisabledWhenNonPositive 2026-10-22T08:24:00.594115249Z --- PASS: TestTransferIdleTimeout_DisabledWhenNonPositive (0.00s) 2026-10-22T08:24:00.594124217Z === RUN TestTransferIdleTimeout_HTTP2 2026-10-22T08:24:00.594133364Z --- PASS: TestTransferIdleTimeout_HTTP2 (0.62s) 2026-10-22T08:24:00.594142689Z === RUN TestTransferIdleTimeout_BackpressuredButReadingClientIsNotCut 2026-10-22T08:24:00.594152596Z --- PASS: TestTransferIdleTimeout_BackpressuredButReadingClientIsNotCut (0.63s) 2026-10-22T08:24:00.594161675Z === RUN TestTransferIdleTimeout_NonReadingClientUnblocksWrite 2026-10-22T08:24:00.594174177Z --- PASS: TestTransferIdleTimeout_NonReadingClientUnblocksWrite (0.30s) 2026-10-22T08:24:00.594184519Z === RUN TestTransferIdleTimeout_SilentHandlerContextCanceledAndConnectionClosed 2026-10-22T08:24:00.594199397Z --- PASS: TestTransferIdleTimeout_SilentHandlerContextCanceledAndConnectionClosed (0.30s) 2026-10-22T08:24:00.594220494Z === RUN TestTransferIdleTimeout_ProgressKeepsContextAlive 2026-10-22T08:24:00.594231343Z --- PASS: TestTransferIdleTimeout_ProgressKeepsContextAlive (0.61s) 2026-10-22T08:24:00.594240519Z === RUN TestTransferIdleTimeout_BodyUseAfterHandlerReturnedIsSafe 2026-10-22T08:24:00.594256201Z --- PASS: TestTransferIdleTimeout_BodyUseAfterHandlerReturnedIsSafe (0.00s) 2026-10-22T08:24:00.594268109Z === RUN TestTransferIdleTimeout_HTTP2ReverseProxyEarlyResponseDuringUpload 2026-10-22T08:24:00.594278317Z --- PASS: TestTransferIdleTimeout_HTTP2ReverseProxyEarlyResponseDuringUpload (0.19s) 2026-10-22T08:24:00.594290773Z === RUN TestTransferIdleTimeout_HTTP2BodyUsedAfterHandlerReturned 2026-10-22T08:24:00.59430068Z --- PASS: TestTransferIdleTimeout_HTTP2BodyUsedAfterHandlerReturned (0.11s) 2026-10-22T08:24:00.594314605Z === RUN TestTransferIdleTimeout_FinalFlushToNonReadingClientIsBounded 2026-10-22T08:24:00.59432665Z --- PASS: TestTransferIdleTimeout_FinalFlushToNonReadingClientIsBounded (0.30s) 2026-10-22T08:24:00.594336268Z === RUN TestTransferIdleTimeout_UnreadDeclaredBodyDrainIsBounded 2026-10-22T08:24:00.594346198Z --- PASS: TestTransferIdleTimeout_UnreadDeclaredBodyDrainIsBounded (0.80s) 2026-10-22T08:24:00.594355945Z === RUN TestTransferIdleTimeout_UnreadDeclaredBodyDrainIsBoundedOverTCP 2026-10-22T08:24:00.594366257Z --- PASS: TestTransferIdleTimeout_UnreadDeclaredBodyDrainIsBoundedOverTCP (0.80s) 2026-10-22T08:24:00.594376018Z === RUN TestTransferIdleTimeout_KeepAliveNextRequestNotAffectedByLeftoverDeadlines 2026-10-22T08:24:00.594385755Z --- PASS: TestTransferIdleTimeout_KeepAliveNextRequestNotAffectedByLeftoverDeadlines (1.80s) 2026-10-22T08:24:00.594398807Z === RUN TestTransferIdleTimeout_HijackBlockedOnNonReadingClientIsBounded 2026-10-22T08:24:00.59441212Z --- PASS: TestTransferIdleTimeout_HijackBlockedOnNonReadingClientIsBounded (0.30s) 2026-10-22T08:24:00.594421351Z PASS 2026-10-22T08:24:00.594432303Z ok github.com/bnema/gordon/internal/adapters/in/http/middleware 12.634s 2026-10-22T08:24:00.594441229Z === RUN TestHandler_CACert 2026-10-22T08:24:00.594453025Z --- PASS: TestHandler_CACert (0.00s) 2026-10-22T08:24:00.594462115Z === RUN TestHandler_Mobileconfig 2026-10-22T08:24:00.59447117Z --- PASS: TestHandler_Mobileconfig (0.00s) 2026-10-22T08:24:00.59448222Z === RUN TestHandler_OnboardingPage 2026-10-22T08:24:00.594493179Z --- PASS: TestHandler_OnboardingPage (0.00s) 2026-10-22T08:24:00.594502843Z === RUN TestHandler_OnboardingPage_DefaultHTTPSURLOmitsInternalTLSPort 2026-10-22T08:24:00.594513312Z --- PASS: TestHandler_OnboardingPage_DefaultHTTPSURLOmitsInternalTLSPort (0.00s) 2026-10-22T08:24:00.594523038Z === RUN TestHandler_OnboardingPage_ExplicitHTTPPortMapsToTLSPort 2026-10-22T08:24:00.594533357Z --- PASS: TestHandler_OnboardingPage_ExplicitHTTPPortMapsToTLSPort (0.00s) 2026-10-22T08:24:00.59454355Z === RUN TestHandler_OnboardingPage_ExplicitNonHTTPPortIsPreserved 2026-10-22T08:24:00.5945529Z --- PASS: TestHandler_OnboardingPage_ExplicitNonHTTPPortIsPreserved (0.00s) 2026-10-22T08:24:00.594561935Z === RUN TestHandler_OnboardingPage_IPHostHidesGoToSiteLink 2026-10-22T08:24:00.59457583Z --- PASS: TestHandler_OnboardingPage_IPHostHidesGoToSiteLink (0.00s) 2026-10-22T08:24:00.594586658Z === RUN TestHandler_OnboardingPage_IncludesFingerprintAndClientImportCopy 2026-10-22T08:24:00.594596611Z --- PASS: TestHandler_OnboardingPage_IncludesFingerprintAndClientImportCopy (0.00s) 2026-10-22T08:24:00.594606113Z === RUN TestHandler_OnboardingPage_GoToSiteLinkIsPlainLink 2026-10-22T08:24:00.594615111Z --- PASS: TestHandler_OnboardingPage_GoToSiteLinkIsPlainLink (0.00s) 2026-10-22T08:24:00.594623474Z === RUN TestHandler_OnboardingPage_HEAD 2026-10-22T08:24:00.594632359Z --- PASS: TestHandler_OnboardingPage_HEAD (0.00s) 2026-10-22T08:24:00.59464051Z === RUN TestHandler_CACert_HEAD 2026-10-22T08:24:00.594657845Z --- PASS: TestHandler_CACert_HEAD (0.00s) 2026-10-22T08:24:00.594668923Z === RUN TestHandler_Mobileconfig_HEAD 2026-10-22T08:24:00.594678082Z --- PASS: TestHandler_Mobileconfig_HEAD (0.00s) 2026-10-22T08:24:00.594688847Z PASS 2026-10-22T08:24:00.594708832Z ok github.com/bnema/gordon/internal/adapters/in/http/onboarding 1.024s 2026-10-22T08:24:00.594722255Z === RUN TestForwardToTarget_H2CEndToEnd 2026-10-22T08:24:00.594736988Z --- PASS: TestForwardToTarget_H2CEndToEnd (0.00s) 2026-10-22T08:24:00.594754001Z === RUN TestForwardToTarget_HTTP1StillWorks 2026-10-22T08:24:00.594766679Z --- PASS: TestForwardToTarget_HTTP1StillWorks (0.00s) 2026-10-22T08:24:00.594776818Z === RUN TestTransportForTarget_SelectsCorrectTransport 2026-10-22T08:24:00.594786854Z --- PASS: TestTransportForTarget_SelectsCorrectTransport (0.00s) 2026-10-22T08:24:00.594795937Z === RUN TestForwardToTarget_OriginalHostPreserved 2026-10-22T08:24:00.594805328Z --- PASS: TestForwardToTarget_OriginalHostPreserved (0.00s) 2026-10-22T08:24:00.594815863Z === RUN TestForwardToTarget_RouteHostPreservedForManagedTarget 2026-10-22T08:24:00.594825901Z --- PASS: TestForwardToTarget_RouteHostPreservedForManagedTarget (0.00s) 2026-10-22T08:24:00.594835333Z === RUN TestForwardToTarget_ContextCanceled_Returns499 2026-10-22T08:24:00.59484457Z --- PASS: TestForwardToTarget_ContextCanceled_Returns499 (0.00s) 2026-10-22T08:24:00.594853348Z === RUN TestForwardToTarget_BackendDown_Returns503 2026-10-22T08:24:00.59486253Z --- PASS: TestForwardToTarget_BackendDown_Returns503 (0.00s) 2026-10-22T08:24:00.594870872Z === RUN TestForwardToTarget_ProxyHeaderSet 2026-10-22T08:24:00.594879282Z --- PASS: TestForwardToTarget_ProxyHeaderSet (0.00s) 2026-10-22T08:24:00.594889546Z === RUN TestNewReverseProxy_XForwardedProto 2026-10-22T08:24:00.594899417Z === RUN TestNewReverseProxy_XForwardedProto/trusted_proxy_with_https_preserved 2026-10-22T08:24:00.594909838Z === RUN TestNewReverseProxy_XForwardedProto/untrusted_source_proto_overwritten 2026-10-22T08:24:00.594920146Z === RUN TestNewReverseProxy_XForwardedProto/trusted_proxy_without_proto_set_normally 2026-10-22T08:24:00.594929857Z === RUN TestNewReverseProxy_XForwardedProto/no_trusted_nets_proto_not_preserved 2026-10-22T08:24:00.594944893Z === RUN TestNewReverseProxy_XForwardedProto/bare_IPv4_no_port_trusted_source_preserves_proto 2026-10-22T08:24:00.594956456Z === RUN TestNewReverseProxy_XForwardedProto/bare_IPv6_with_brackets_trusted_source_preserves_proto 2026-10-22T08:24:00.594966873Z === RUN TestNewReverseProxy_XForwardedProto/bare_IPv4_no_port_untrusted_source_strips_proto 2026-10-22T08:24:00.594978444Z --- PASS: TestNewReverseProxy_XForwardedProto (0.01s) 2026-10-22T08:24:00.594999136Z --- PASS: TestNewReverseProxy_XForwardedProto/trusted_proxy_with_https_preserved (0.00s) 2026-10-22T08:24:00.595020245Z --- PASS: TestNewReverseProxy_XForwardedProto/untrusted_source_proto_overwritten (0.00s) 2026-10-22T08:24:00.595041439Z --- PASS: TestNewReverseProxy_XForwardedProto/trusted_proxy_without_proto_set_normally (0.00s) 2026-10-22T08:24:00.59506201Z --- PASS: TestNewReverseProxy_XForwardedProto/no_trusted_nets_proto_not_preserved (0.00s) 2026-10-22T08:24:00.595084252Z --- PASS: TestNewReverseProxy_XForwardedProto/bare_IPv4_no_port_trusted_source_preserves_proto (0.00s) 2026-10-22T08:24:00.595107478Z --- PASS: TestNewReverseProxy_XForwardedProto/bare_IPv6_with_brackets_trusted_source_preserves_proto (0.00s) 2026-10-22T08:24:00.595129763Z --- PASS: TestNewReverseProxy_XForwardedProto/bare_IPv4_no_port_untrusted_source_strips_proto (0.00s) 2026-10-22T08:24:00.59514041Z === RUN TestNewReverseProxy_ClientIPHeaders 2026-10-22T08:24:00.595150793Z === RUN TestNewReverseProxy_ClientIPHeaders/untrusted_IPv4_peer_forged_headers_replaced 2026-10-22T08:24:00.595160967Z === RUN TestNewReverseProxy_ClientIPHeaders/untrusted_IPv6_peer_forged_X-Real-IP_replaced 2026-10-22T08:24:00.595171545Z === RUN TestNewReverseProxy_ClientIPHeaders/untrusted_IPv4-mapped_IPv6_peer_normalized_to_IPv4 2026-10-22T08:24:00.595181336Z === RUN TestNewReverseProxy_ClientIPHeaders/no_trusted_nets_ignores_proxy_headers 2026-10-22T08:24:00.595192216Z === RUN TestNewReverseProxy_ClientIPHeaders/trusted_Cloudflare_peer_uses_Cf-Connecting-Ip 2026-10-22T08:24:00.595202109Z === RUN TestNewReverseProxy_ClientIPHeaders/trusted_Cloudflare_peer_with_IPv6_client 2026-10-22T08:24:00.595212603Z === RUN TestNewReverseProxy_ClientIPHeaders/trusted_non-Cloudflare_proxy_uses_right-most_untrusted_XFF_hop 2026-10-22T08:24:00.595224732Z === RUN TestNewReverseProxy_ClientIPHeaders/trusted_IPv6_proxy_with_IPv4-mapped_XFF_hop 2026-10-22T08:24:00.595236461Z === RUN TestNewReverseProxy_ClientIPHeaders/trusted_proxy_X-Real-IP_honored_without_XFF 2026-10-22T08:24:00.59524693Z === RUN TestNewReverseProxy_ClientIPHeaders/trusted_proxy_adding_a_new_XFF_line_uses_that_line 2026-10-22T08:24:00.595257814Z === RUN TestNewReverseProxy_ClientIPHeaders/trusted_proxy_repeated_X-Real-IP_ignored 2026-10-22T08:24:00.59526787Z === RUN TestNewReverseProxy_ClientIPHeaders/underscore_header_variants_removed 2026-10-22T08:24:00.595278476Z === RUN TestNewReverseProxy_ClientIPHeaders/Cloudflare_peer_not_in_trusted_proxies_strips_Cf-Connecting-Ip 2026-10-22T08:24:00.595288861Z === RUN TestNewReverseProxy_ClientIPHeaders/IPv4-mapped_trusted_Cloudflare_peer_uses_Cf-Connecting-Ip 2026-10-22T08:24:00.59529978Z === RUN TestNewReverseProxy_ClientIPHeaders/trusted_Cloudflare_peer_with_invalid_Cf-Connecting-Ip_falls_back 2026-10-22T08:24:00.595312104Z === RUN TestNewReverseProxy_ClientIPHeaders/unparsable_peer_sends_no_client_IP 2026-10-22T08:24:00.595321348Z --- PASS: TestNewReverseProxy_ClientIPHeaders (0.01s) 2026-10-22T08:24:00.595342761Z --- PASS: TestNewReverseProxy_ClientIPHeaders/untrusted_IPv4_peer_forged_headers_replaced (0.00s) 2026-10-22T08:24:00.595364882Z --- PASS: TestNewReverseProxy_ClientIPHeaders/untrusted_IPv6_peer_forged_X-Real-IP_replaced (0.00s) 2026-10-22T08:24:00.595387155Z --- PASS: TestNewReverseProxy_ClientIPHeaders/untrusted_IPv4-mapped_IPv6_peer_normalized_to_IPv4 (0.00s) 2026-10-22T08:24:00.595408042Z --- PASS: TestNewReverseProxy_ClientIPHeaders/no_trusted_nets_ignores_proxy_headers (0.00s) 2026-10-22T08:24:00.595429515Z --- PASS: TestNewReverseProxy_ClientIPHeaders/trusted_Cloudflare_peer_uses_Cf-Connecting-Ip (0.00s) 2026-10-22T08:24:00.5954506Z --- PASS: TestNewReverseProxy_ClientIPHeaders/trusted_Cloudflare_peer_with_IPv6_client (0.00s) 2026-10-22T08:24:00.595477128Z --- PASS: TestNewReverseProxy_ClientIPHeaders/trusted_non-Cloudflare_proxy_uses_right-most_untrusted_XFF_hop (0.00s) 2026-10-22T08:24:00.595500118Z --- PASS: TestNewReverseProxy_ClientIPHeaders/trusted_IPv6_proxy_with_IPv4-mapped_XFF_hop (0.00s) 2026-10-22T08:24:00.595521869Z --- PASS: TestNewReverseProxy_ClientIPHeaders/trusted_proxy_X-Real-IP_honored_without_XFF (0.00s) 2026-10-22T08:24:00.595545937Z --- PASS: TestNewReverseProxy_ClientIPHeaders/trusted_proxy_adding_a_new_XFF_line_uses_that_line (0.00s) 2026-10-22T08:24:00.595579748Z --- PASS: TestNewReverseProxy_ClientIPHeaders/trusted_proxy_repeated_X-Real-IP_ignored (0.00s) 2026-10-22T08:24:00.595607028Z --- PASS: TestNewReverseProxy_ClientIPHeaders/underscore_header_variants_removed (0.00s) 2026-10-22T08:24:00.595632172Z --- PASS: TestNewReverseProxy_ClientIPHeaders/Cloudflare_peer_not_in_trusted_proxies_strips_Cf-Connecting-Ip (0.00s) 2026-10-22T08:24:00.595657557Z --- PASS: TestNewReverseProxy_ClientIPHeaders/IPv4-mapped_trusted_Cloudflare_peer_uses_Cf-Connecting-Ip (0.00s) 2026-10-22T08:24:00.595682192Z --- PASS: TestNewReverseProxy_ClientIPHeaders/trusted_Cloudflare_peer_with_invalid_Cf-Connecting-Ip_falls_back (0.00s) 2026-10-22T08:24:00.595703141Z --- PASS: TestNewReverseProxy_ClientIPHeaders/unparsable_peer_sends_no_client_IP (0.00s) 2026-10-22T08:24:00.595712626Z === RUN TestHandler_ConcurrentConnectionLimit_503WhenFull 2026-10-22T08:24:00.595722198Z --- PASS: TestHandler_ConcurrentConnectionLimit_503WhenFull (0.00s) 2026-10-22T08:24:00.595730536Z === RUN TestHandler_RoutesToRegistry 2026-10-22T08:24:00.595739049Z --- PASS: TestHandler_RoutesToRegistry (0.00s) 2026-10-22T08:24:00.595747818Z === RUN TestHandler_DeniesRegistryForwardingWhenAuthDisabled 2026-10-22T08:24:00.5965306Z --- PASS: TestHandler_DeniesRegistryForwardingWhenAuthDisabled (0.00s) 2026-10-22T08:24:00.597092832Z === RUN TestHandler_NormalizesRequestHostForLookup 2026-10-22T08:24:00.597119287Z === RUN TestHandler_NormalizesRequestHostForLookup/mixed_case 2026-10-22T08:24:00.597131988Z === RUN TestHandler_NormalizesRequestHostForLookup/explicit_port 2026-10-22T08:24:00.59714279Z === RUN TestHandler_NormalizesRequestHostForLookup/trailing_dot 2026-10-22T08:24:00.597154652Z --- PASS: TestHandler_NormalizesRequestHostForLookup (0.00s) 2026-10-22T08:24:00.597175519Z --- PASS: TestHandler_NormalizesRequestHostForLookup/mixed_case (0.00s) 2026-10-22T08:24:00.597196864Z --- PASS: TestHandler_NormalizesRequestHostForLookup/explicit_port (0.00s) 2026-10-22T08:24:00.597221836Z --- PASS: TestHandler_NormalizesRequestHostForLookup/trailing_dot (0.00s) 2026-10-22T08:24:00.597237479Z === RUN TestHandler_RejectsInvalidRequestHost 2026-10-22T08:24:00.597245126Z --- PASS: TestHandler_RejectsInvalidRequestHost (0.00s) 2026-10-22T08:24:00.597255815Z === RUN TestHandler_Returns404WhenNoTarget 2026-10-22T08:24:00.597281789Z --- PASS: TestHandler_Returns404WhenNoTarget (0.00s) 2026-10-22T08:24:00.597293604Z === RUN TestHandler_ProxiesToTarget 2026-10-22T08:24:00.597299713Z --- PASS: TestHandler_ProxiesToTarget (0.00s) 2026-10-22T08:24:00.597324593Z === RUN TestHandler_ReadsMaxBodySizeConfig 2026-10-22T08:24:00.597434566Z --- PASS: TestHandler_ReadsMaxBodySizeConfig (0.00s) 2026-10-22T08:24:00.597454557Z === RUN TestHandler_UpdatedConfigReflected 2026-10-22T08:24:00.597482859Z --- PASS: TestHandler_UpdatedConfigReflected (0.00s) 2026-10-22T08:24:00.597490468Z === RUN TestHandler_NoConcurrencyLimitWhenZero 2026-10-22T08:24:00.597495923Z --- PASS: TestHandler_NoConcurrencyLimitWhenZero (0.00s) 2026-10-22T08:24:00.597507116Z PASS 2026-10-22T08:24:00.597517733Z ok github.com/bnema/gordon/internal/adapters/in/http/proxy 1.055s 2026-10-22T08:24:00.597526657Z === RUN TestHandler_Base 2026-10-22T08:24:00.597534912Z --- PASS: TestHandler_Base (0.00s) 2026-10-22T08:24:00.597545208Z === RUN TestHandler_NotFound 2026-10-22T08:24:00.59755585Z --- PASS: TestHandler_NotFound (0.00s) 2026-10-22T08:24:00.597568543Z === RUN TestHandler_GetManifest_Success 2026-10-22T08:24:00.597574836Z --- PASS: TestHandler_GetManifest_Success (0.00s) 2026-10-22T08:24:00.597584234Z === RUN TestHandler_GetManifest_HEAD 2026-10-22T08:24:00.597589813Z --- PASS: TestHandler_GetManifest_HEAD (0.00s) 2026-10-22T08:24:00.597598013Z === RUN TestHandler_GetManifest_NotFound 2026-10-22T08:24:00.597606413Z --- PASS: TestHandler_GetManifest_NotFound (0.00s) 2026-10-22T08:24:00.597617223Z === RUN TestHandler_GetManifest_NestedName 2026-10-22T08:24:00.597626497Z --- PASS: TestHandler_GetManifest_NestedName (0.00s) 2026-10-22T08:24:00.597641154Z === RUN TestHandler_ReservedLookingRepositoryIsServedExactly 2026-10-22T08:24:00.597652032Z --- PASS: TestHandler_ReservedLookingRepositoryIsServedExactly (0.00s) 2026-10-22T08:24:00.597660951Z === RUN TestHandler_PutManifest_Success 2026-10-22T08:24:00.597673447Z --- PASS: TestHandler_PutManifest_Success (0.00s) 2026-10-22T08:24:00.597683485Z === RUN TestHandler_PutManifest_MissingContentType 2026-10-22T08:24:00.597692727Z --- PASS: TestHandler_PutManifest_MissingContentType (0.00s) 2026-10-22T08:24:00.597701344Z === RUN TestHandler_PutManifest_StorageError 2026-10-22T08:24:00.597712078Z --- PASS: TestHandler_PutManifest_StorageError (0.00s) 2026-10-22T08:24:00.597721371Z === RUN TestHandler_ManifestRoutes_MethodNotAllowed 2026-10-22T08:24:00.597730939Z --- PASS: TestHandler_ManifestRoutes_MethodNotAllowed (0.00s) 2026-10-22T08:24:00.597739733Z === RUN TestHandler_GetBlob_Success 2026-10-22T08:24:00.597748393Z --- PASS: TestHandler_GetBlob_Success (0.02s) 2026-10-22T08:24:00.5977566Z === RUN TestHandler_GetBlob_NotFound 2026-10-22T08:24:00.597765826Z --- PASS: TestHandler_GetBlob_NotFound (0.00s) 2026-10-22T08:24:00.597775605Z === RUN TestHandler_BlobRoutes_MethodNotAllowed 2026-10-22T08:24:00.597786707Z --- PASS: TestHandler_BlobRoutes_MethodNotAllowed (0.00s) 2026-10-22T08:24:00.597795651Z === RUN TestHandler_StartBlobUpload_Success 2026-10-22T08:24:00.59780483Z --- PASS: TestHandler_StartBlobUpload_Success (0.00s) 2026-10-22T08:24:00.597813743Z === RUN TestHandler_StartBlobUpload_Error 2026-10-22T08:24:00.597822811Z --- PASS: TestHandler_StartBlobUpload_Error (0.00s) 2026-10-22T08:24:00.59783113Z === RUN TestHandler_BlobUpload_PATCH 2026-10-22T08:24:00.597839654Z --- PASS: TestHandler_BlobUpload_PATCH (0.00s) 2026-10-22T08:24:00.597848278Z === RUN TestHandler_BlobUpload_PUT_Finalize 2026-10-22T08:24:00.597858671Z --- PASS: TestHandler_BlobUpload_PUT_Finalize (0.00s) 2026-10-22T08:24:00.597867974Z === RUN TestHandler_BlobUpload_PUT_DigestMismatch 2026-10-22T08:24:00.597877651Z --- PASS: TestHandler_BlobUpload_PUT_DigestMismatch (0.00s) 2026-10-22T08:24:00.59788625Z === RUN TestHandler_ListTags_Success 2026-10-22T08:24:00.597896202Z --- PASS: TestHandler_ListTags_Success (0.00s) 2026-10-22T08:24:00.597904158Z === RUN TestHandler_ListTags_NotFound 2026-10-22T08:24:00.597912383Z --- PASS: TestHandler_ListTags_NotFound (0.00s) 2026-10-22T08:24:00.597920762Z === RUN TestHandler_ListTags_MethodNotAllowed 2026-10-22T08:24:00.597931176Z --- PASS: TestHandler_ListTags_MethodNotAllowed (0.00s) 2026-10-22T08:24:00.597939694Z === RUN TestHandler_RegisterRoutes 2026-10-22T08:24:00.597948194Z --- PASS: TestHandler_RegisterRoutes (0.00s) 2026-10-22T08:24:00.597957232Z === RUN TestHandler_StartBlobUpload_ReturnsDockerUploadUUID 2026-10-22T08:24:00.597967099Z --- PASS: TestHandler_StartBlobUpload_ReturnsDockerUploadUUID (0.00s) 2026-10-22T08:24:00.597976504Z === RUN TestHandler_BlobUpload_PATCH_ReturnsDockerUploadUUID 2026-10-22T08:24:00.59798806Z --- PASS: TestHandler_BlobUpload_PATCH_ReturnsDockerUploadUUID (0.00s) 2026-10-22T08:24:00.598001488Z === RUN TestDefaultMaxBlobChunkSize_Is95MB 2026-10-22T08:24:00.598017744Z --- PASS: TestDefaultMaxBlobChunkSize_Is95MB (0.00s) 2026-10-22T08:24:00.598035502Z === RUN TestHandler_BlobUpload_PATCH_RespectsConfiguredMaxBlobChunkSize 2026-10-22T08:24:00.598059107Z --- PASS: TestHandler_BlobUpload_PATCH_RespectsConfiguredMaxBlobChunkSize (0.00s) 2026-10-22T08:24:00.598072133Z === RUN TestHandler_BlobUpload_PATCH_ReturnsRangeHeader 2026-10-22T08:24:00.598087007Z --- PASS: TestHandler_BlobUpload_PATCH_ReturnsRangeHeader (0.00s) 2026-10-22T08:24:00.598096884Z === RUN TestDefaultMaxBlobSize_Is1GB 2026-10-22T08:24:00.598105577Z --- PASS: TestDefaultMaxBlobSize_Is1GB (0.00s) 2026-10-22T08:24:00.598115796Z === RUN TestHandler_BlobUpload_PATCH_MaxBlobSizeExceededReturnsSizeInvalidAndCancels 2026-10-22T08:24:00.598126199Z --- PASS: TestHandler_BlobUpload_PATCH_MaxBlobSizeExceededReturnsSizeInvalidAndCancels (0.00s) 2026-10-22T08:24:00.598138174Z === RUN TestHandler_BlobUpload_PATCH_ContentLengthTooLargeReturnsSizeInvalidAndCancels 2026-10-22T08:24:00.598148683Z --- PASS: TestHandler_BlobUpload_PATCH_ContentLengthTooLargeReturnsSizeInvalidAndCancels (0.00s) 2026-10-22T08:24:00.598159565Z === RUN TestHandler_BlobUpload_PUT_FinalizeUnderMaxBlobSize 2026-10-22T08:24:00.598169415Z --- PASS: TestHandler_BlobUpload_PUT_FinalizeUnderMaxBlobSize (0.00s) 2026-10-22T08:24:00.598178247Z === RUN TestRateLimitMiddleware_Disabled 2026-10-22T08:24:00.598186977Z --- PASS: TestRateLimitMiddleware_Disabled (0.00s) 2026-10-22T08:24:00.598195688Z === RUN TestRateLimitMiddleware_GlobalLimitHit 2026-10-22T08:24:00.59820428Z --- PASS: TestRateLimitMiddleware_GlobalLimitHit (0.00s) 2026-10-22T08:24:00.59821651Z === RUN TestRateLimitMiddleware_PerIPLimitHit 2026-10-22T08:24:00.598226233Z --- PASS: TestRateLimitMiddleware_PerIPLimitHit (0.00s) 2026-10-22T08:24:00.598235149Z === RUN TestRateLimitMiddleware_BothLimitsPass 2026-10-22T08:24:00.598244183Z --- PASS: TestRateLimitMiddleware_BothLimitsPass (0.00s) 2026-10-22T08:24:00.598255016Z === RUN TestRateLimitMiddleware_TrustedProxy 2026-10-22T08:24:00.59826891Z --- PASS: TestRateLimitMiddleware_TrustedProxy (0.00s) 2026-10-22T08:24:00.598280946Z === RUN TestRateLimitMiddleware_UntrustedProxy 2026-10-22T08:24:00.598294962Z --- PASS: TestRateLimitMiddleware_UntrustedProxy (0.00s) 2026-10-22T08:24:00.598310043Z === RUN TestRateLimitMiddleware_ResponseFormat 2026-10-22T08:24:00.598323682Z --- PASS: TestRateLimitMiddleware_ResponseFormat (0.00s) 2026-10-22T08:24:00.598337005Z === RUN TestRateLimitMiddleware_Integration 2026-10-22T08:24:00.598352185Z --- PASS: TestRateLimitMiddleware_Integration (0.00s) 2026-10-22T08:24:00.598365041Z === RUN TestGetClientIP 2026-10-22T08:24:00.598378759Z === RUN TestGetClientIP/from_RemoteAddr_with_port 2026-10-22T08:24:00.598392414Z === RUN TestGetClientIP/from_RemoteAddr_without_port 2026-10-22T08:24:00.598406707Z === RUN TestGetClientIP/XFF_ignored_when_no_trusted_proxies 2026-10-22T08:24:00.598423751Z === RUN TestGetClientIP/XFF_ignored_when_remote_is_not_trusted 2026-10-22T08:24:00.598440192Z === RUN TestGetClientIP/XFF_honored_from_trusted_proxy_(single_IP) 2026-10-22T08:24:00.598455739Z === RUN TestGetClientIP/XFF_returns_first_untrusted_IP_from_right 2026-10-22T08:24:00.598470024Z === RUN TestGetClientIP/XFF_honored_from_trusted_CIDR 2026-10-22T08:24:00.598484096Z === RUN TestGetClientIP/X-Real-IP_honored_from_trusted_proxy 2026-10-22T08:24:00.598499386Z === RUN TestGetClientIP/X-Real-IP_ignored_when_not_trusted 2026-10-22T08:24:00.598510847Z === RUN TestGetClientIP/XFF_takes_precedence_over_X-Real-IP 2026-10-22T08:24:00.598519804Z --- PASS: TestGetClientIP (0.00s) 2026-10-22T08:24:00.59854357Z --- PASS: TestGetClientIP/from_RemoteAddr_with_port (0.00s) 2026-10-22T08:24:00.598575511Z --- PASS: TestGetClientIP/from_RemoteAddr_without_port (0.00s) 2026-10-22T08:24:00.598605761Z --- PASS: TestGetClientIP/XFF_ignored_when_no_trusted_proxies (0.00s) 2026-10-22T08:24:00.598637676Z --- PASS: TestGetClientIP/XFF_ignored_when_remote_is_not_trusted (0.00s) 2026-10-22T08:24:00.598680786Z --- PASS: TestGetClientIP/XFF_honored_from_trusted_proxy_(single_IP) (0.00s) 2026-10-22T08:24:00.598705582Z --- PASS: TestGetClientIP/XFF_returns_first_untrusted_IP_from_right (0.00s) 2026-10-22T08:24:00.598725812Z --- PASS: TestGetClientIP/XFF_honored_from_trusted_CIDR (0.00s) 2026-10-22T08:24:00.598744126Z --- PASS: TestGetClientIP/X-Real-IP_honored_from_trusted_proxy (0.00s) 2026-10-22T08:24:00.598762385Z --- PASS: TestGetClientIP/X-Real-IP_ignored_when_not_trusted (0.00s) 2026-10-22T08:24:00.598780075Z --- PASS: TestGetClientIP/XFF_takes_precedence_over_X-Real-IP (0.00s) 2026-10-22T08:24:00.59878899Z === RUN TestParseTrustedProxies 2026-10-22T08:24:00.598797969Z === RUN TestParseTrustedProxies/empty_list 2026-10-22T08:24:00.598807678Z === RUN TestParseTrustedProxies/single_IP_match 2026-10-22T08:24:00.59881666Z === RUN TestParseTrustedProxies/single_IP_no_match 2026-10-22T08:24:00.598826693Z === RUN TestParseTrustedProxies/CIDR_match 2026-10-22T08:24:00.59883551Z === RUN TestParseTrustedProxies/CIDR_no_match 2026-10-22T08:24:00.598844402Z === RUN TestParseTrustedProxies/mixed_IP_and_CIDR 2026-10-22T08:24:00.598853479Z === RUN TestParseTrustedProxies/invalid_entries_ignored 2026-10-22T08:24:00.598861801Z --- PASS: TestParseTrustedProxies (0.00s) 2026-10-22T08:24:00.598876635Z --- PASS: TestParseTrustedProxies/empty_list (0.00s) 2026-10-22T08:24:00.598902917Z --- PASS: TestParseTrustedProxies/single_IP_match (0.00s) 2026-10-22T08:24:00.598925179Z --- PASS: TestParseTrustedProxies/single_IP_no_match (0.00s) 2026-10-22T08:24:00.598941729Z --- PASS: TestParseTrustedProxies/CIDR_match (0.00s) 2026-10-22T08:24:00.598957562Z --- PASS: TestParseTrustedProxies/CIDR_no_match (0.00s) 2026-10-22T08:24:00.598973493Z --- PASS: TestParseTrustedProxies/mixed_IP_and_CIDR (0.00s) 2026-10-22T08:24:00.598989855Z --- PASS: TestParseTrustedProxies/invalid_entries_ignored (0.00s) 2026-10-22T08:24:00.598997176Z PASS 2026-10-22T08:24:00.599006501Z ok github.com/bnema/gordon/internal/adapters/in/http/registry 1.051s 2026-10-22T08:24:00.599014793Z === RUN TestParse_Routes 2026-10-22T08:24:00.599024693Z === RUN TestParse_Routes//v2/ 2026-10-22T08:24:00.599033034Z === RUN TestParse_Routes//v2 2026-10-22T08:24:00.599041951Z === RUN TestParse_Routes//v2/_catalog 2026-10-22T08:24:00.599051285Z === RUN TestParse_Routes//v2/myrepo/manifests/latest 2026-10-22T08:24:00.599059947Z === RUN TestParse_Routes//v2/myorg/myapp/manifests/v1.0 2026-10-22T08:24:00.599070439Z === RUN TestParse_Routes//v2/myrepo/blobs/sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 2026-10-22T08:24:00.599080189Z === RUN TestParse_Routes//v2/myrepo/blobs/uploads/ 2026-10-22T08:24:00.599089999Z === RUN TestParse_Routes//v2/myrepo/blobs/uploads/12345678-1234-4123-8123-123456789012 2026-10-22T08:24:00.599100509Z === RUN TestParse_Routes//v2/myrepo/tags/list 2026-10-22T08:24:00.599108835Z --- PASS: TestParse_Routes (0.00s) 2026-10-22T08:24:00.599122153Z --- PASS: TestParse_Routes//v2/ (0.00s) 2026-10-22T08:24:00.599135266Z --- PASS: TestParse_Routes//v2 (0.00s) 2026-10-22T08:24:00.599149385Z --- PASS: TestParse_Routes//v2/_catalog (0.00s) 2026-10-22T08:24:00.599165409Z --- PASS: TestParse_Routes//v2/myrepo/manifests/latest (0.00s) 2026-10-22T08:24:00.599183587Z --- PASS: TestParse_Routes//v2/myorg/myapp/manifests/v1.0 (0.00s) 2026-10-22T08:24:00.599213921Z --- PASS: TestParse_Routes//v2/myrepo/blobs/sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa (0.00s) 2026-10-22T08:24:00.599238417Z --- PASS: TestParse_Routes//v2/myrepo/blobs/uploads/ (0.00s) 2026-10-22T08:24:00.599275816Z --- PASS: TestParse_Routes//v2/myrepo/blobs/uploads/12345678-1234-4123-8123-123456789012 (0.00s) 2026-10-22T08:24:00.599296439Z --- PASS: TestParse_Routes//v2/myrepo/tags/list (0.00s) 2026-10-22T08:24:00.59930685Z === RUN TestParse_ResolvesRepositoryFromLastMarker 2026-10-22T08:24:00.599316859Z === RUN TestParse_ResolvesRepositoryFromLastMarker//v2/manifests/victim/manifests/latest 2026-10-22T08:24:00.59932699Z === RUN TestParse_ResolvesRepositoryFromLastMarker//v2/allowed/tags/victim/manifests/latest 2026-10-22T08:24:00.599345284Z === RUN TestParse_ResolvesRepositoryFromLastMarker//v2/blobs/impostor/blobs/sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 2026-10-22T08:24:00.59936481Z --- PASS: TestParse_ResolvesRepositoryFromLastMarker (0.00s) 2026-10-22T08:24:00.599399443Z --- PASS: TestParse_ResolvesRepositoryFromLastMarker//v2/manifests/victim/manifests/latest (0.00s) 2026-10-22T08:24:00.599451677Z --- PASS: TestParse_ResolvesRepositoryFromLastMarker//v2/allowed/tags/victim/manifests/latest (0.00s) 2026-10-22T08:24:00.599504098Z --- PASS: TestParse_ResolvesRepositoryFromLastMarker//v2/blobs/impostor/blobs/sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa (0.00s) 2026-10-22T08:24:00.599530479Z === RUN TestParse_Errors 2026-10-22T08:24:00.599550274Z === RUN TestParse_Errors/not_found_/healthz 2026-10-22T08:24:00.599566197Z === RUN TestParse_Errors/not_found_/v2/myrepo 2026-10-22T08:24:00.599584229Z === RUN TestParse_Errors/not_found_/v2/myrepo/manifests/ 2026-10-22T08:24:00.599601507Z === RUN TestParse_Errors/not_found_/v2/myrepo/manifests/a/b 2026-10-22T08:24:00.599615072Z === RUN TestParse_Errors/not_found_/v2/myrepo/blobs/ 2026-10-22T08:24:00.599629574Z === RUN TestParse_Errors/not_found_/v2/myrepo/tags/list/ 2026-10-22T08:24:00.599646898Z === RUN TestParse_Errors/not_found_/v2//manifests/latest 2026-10-22T08:24:00.599663918Z === RUN TestParse_Errors/invalid_/v2/BadRepo/manifests/latest 2026-10-22T08:24:00.59968676Z === RUN TestParse_Errors/invalid_/v2/myrepo/manifests/bad_tag 2026-10-22T08:24:00.599705754Z === RUN TestParse_Errors/invalid_/v2/myrepo/blobs/notadigest 2026-10-22T08:24:00.59972306Z === RUN TestParse_Errors/invalid_/v2/myrepo/blobs/uploads/not-a-uuid 2026-10-22T08:24:00.599735827Z --- PASS: TestParse_Errors (0.00s) 2026-10-22T08:24:00.599755717Z --- PASS: TestParse_Errors/not_found_/healthz (0.00s) 2026-10-22T08:24:00.599774238Z --- PASS: TestParse_Errors/not_found_/v2/myrepo (0.00s) 2026-10-22T08:24:00.599794355Z --- PASS: TestParse_Errors/not_found_/v2/myrepo/manifests/ (0.00s) 2026-10-22T08:24:00.599814586Z --- PASS: TestParse_Errors/not_found_/v2/myrepo/manifests/a/b (0.00s) 2026-10-22T08:24:00.599833738Z --- PASS: TestParse_Errors/not_found_/v2/myrepo/blobs/ (0.00s) 2026-10-22T08:24:00.599863059Z --- PASS: TestParse_Errors/not_found_/v2/myrepo/tags/list/ (0.00s) 2026-10-22T08:24:00.599886663Z --- PASS: TestParse_Errors/not_found_/v2//manifests/latest (0.00s) 2026-10-22T08:24:00.599911747Z --- PASS: TestParse_Errors/invalid_/v2/BadRepo/manifests/latest (0.00s) 2026-10-22T08:24:00.599949801Z --- PASS: TestParse_Errors/invalid_/v2/myrepo/manifests/bad_tag (0.00s) 2026-10-22T08:24:00.599980908Z --- PASS: TestParse_Errors/invalid_/v2/myrepo/blobs/notadigest (0.00s) 2026-10-22T08:24:00.600007625Z --- PASS: TestParse_Errors/invalid_/v2/myrepo/blobs/uploads/not-a-uuid (0.00s) 2026-10-22T08:24:00.600020671Z === RUN TestRequiresRepositoryAuth_ProtocolRootsOnly 2026-10-22T08:24:00.600032663Z --- PASS: TestRequiresRepositoryAuth_ProtocolRootsOnly (0.00s) 2026-10-22T08:24:00.600042703Z PASS 2026-10-22T08:24:00.600055199Z ok github.com/bnema/gordon/internal/adapters/in/http/registry/route 1.017s 2026-10-22T08:24:00.600067413Z === RUN TestNewEntryPointHTTPServerUsesConfiguredTimeouts 2026-10-22T08:24:00.600081625Z --- PASS: TestNewEntryPointHTTPServerUsesConfiguredTimeouts (0.00s) 2026-10-22T08:24:00.60009398Z === RUN TestManagerHTTPOptionsDefaultsWithoutSnapshot 2026-10-22T08:24:00.600107814Z --- PASS: TestManagerHTTPOptionsDefaultsWithoutSnapshot (0.00s) 2026-10-22T08:24:00.600120133Z === RUN TestEntryPointServersReceiveConfiguredHTTPOptions 2026-10-22T08:24:00.60013267Z --- PASS: TestEntryPointServersReceiveConfiguredHTTPOptions (0.00s) 2026-10-22T08:24:00.600144146Z === RUN TestTLSMuxServerReceivesConfiguredHTTPOptions 2026-10-22T08:24:00.600155766Z --- PASS: TestTLSMuxServerReceivesConfiguredHTTPOptions (0.00s) 2026-10-22T08:24:00.600167179Z === RUN TestSmartTCPStreamingResponseOutlivesTransferIdleTimeout 2026-10-22T08:24:00.600180616Z --- PASS: TestSmartTCPStreamingResponseOutlivesTransferIdleTimeout (0.91s) 2026-10-22T08:24:00.600191629Z === RUN TestAppL4TCPUdpRoundTrip 2026-10-22T08:24:00.600202903Z --- PASS: TestAppL4TCPUdpRoundTrip (0.05s) 2026-10-22T08:24:00.600214004Z === RUN TestSniffSmartTCPClassifiesHTTP 2026-10-22T08:24:00.600225048Z === RUN TestSniffSmartTCPClassifiesHTTP/get 2026-10-22T08:24:00.600238241Z === RUN TestSniffSmartTCPClassifiesHTTP/propfind 2026-10-22T08:24:00.600249949Z === RUN TestSniffSmartTCPClassifiesHTTP/mkcol 2026-10-22T08:24:00.600261204Z === RUN TestSniffSmartTCPClassifiesHTTP/unknown_method 2026-10-22T08:24:00.60027442Z === RUN TestSniffSmartTCPClassifiesHTTP/extension_method 2026-10-22T08:24:00.600285928Z --- PASS: TestSniffSmartTCPClassifiesHTTP (0.00s) 2026-10-22T08:24:00.600304202Z --- PASS: TestSniffSmartTCPClassifiesHTTP/get (0.00s) 2026-10-22T08:24:00.600322822Z --- PASS: TestSniffSmartTCPClassifiesHTTP/propfind (0.00s) 2026-10-22T08:24:00.600340784Z --- PASS: TestSniffSmartTCPClassifiesHTTP/mkcol (0.00s) 2026-10-22T08:24:00.600365926Z --- PASS: TestSniffSmartTCPClassifiesHTTP/unknown_method (0.00s) 2026-10-22T08:24:00.600388939Z --- PASS: TestSniffSmartTCPClassifiesHTTP/extension_method (0.00s) 2026-10-22T08:24:00.600400485Z === RUN TestSniffSmartTCPClassifiesH2C 2026-10-22T08:24:00.600414523Z --- PASS: TestSniffSmartTCPClassifiesH2C (0.00s) 2026-10-22T08:24:00.600426636Z === RUN TestSniffSmartTCPClassifiesTLSAndAllowsClientHelloParsing 2026-10-22T08:24:00.600439116Z --- PASS: TestSniffSmartTCPClassifiesTLSAndAllowsClientHelloParsing (0.00s) 2026-10-22T08:24:00.600451097Z === RUN TestSniffSmartTCPRejectsMalformedTLSLookingZeroLengthRecord 2026-10-22T08:24:00.600463256Z --- PASS: TestSniffSmartTCPRejectsMalformedTLSLookingZeroLengthRecord (0.00s) 2026-10-22T08:24:00.600474641Z === RUN TestSniffSmartTCPClassifiesSSHBannerAsUnknown 2026-10-22T08:24:00.600486358Z --- PASS: TestSniffSmartTCPClassifiesSSHBannerAsUnknown (0.00s) 2026-10-22T08:24:00.600497926Z === RUN TestSniffSmartTCPRejectsMalformedHTTPLookingRequestLine 2026-10-22T08:24:00.600511539Z --- PASS: TestSniffSmartTCPRejectsMalformedHTTPLookingRequestLine (0.00s) 2026-10-22T08:24:00.600523495Z === RUN TestSniffSmartTCPClassifiesTokenSpacePlaintextAsUnknown 2026-10-22T08:24:00.600535607Z --- PASS: TestSniffSmartTCPClassifiesTokenSpacePlaintextAsUnknown (0.00s) 2026-10-22T08:24:00.600547633Z === RUN TestSniffSmartTCPRejectsPROXY 2026-10-22T08:24:00.600558686Z === RUN TestSniffSmartTCPRejectsPROXY/v1 2026-10-22T08:24:00.600569599Z === RUN TestSniffSmartTCPRejectsPROXY/v2 2026-10-22T08:24:00.600580709Z --- PASS: TestSniffSmartTCPRejectsPROXY (0.00s) 2026-10-22T08:24:00.600598136Z --- PASS: TestSniffSmartTCPRejectsPROXY/v1 (0.00s) 2026-10-22T08:24:00.600617275Z --- PASS: TestSniffSmartTCPRejectsPROXY/v2 (0.00s) 2026-10-22T08:24:00.600628799Z === RUN TestSniffSmartTCPUnknownIsImmediate 2026-10-22T08:24:00.600640269Z --- PASS: TestSniffSmartTCPUnknownIsImmediate (0.00s) 2026-10-22T08:24:00.600651329Z === RUN TestSniffSmartTCPAmbiguousPartialsTimeOut 2026-10-22T08:24:00.600662478Z === RUN TestSniffSmartTCPAmbiguousPartialsTimeOut/g 2026-10-22T08:24:00.600673774Z === RUN TestSniffSmartTCPAmbiguousPartialsTimeOut/b 2026-10-22T08:24:00.600685525Z === RUN TestSniffSmartTCPAmbiguousPartialsTimeOut/bar 2026-10-22T08:24:00.600697523Z === RUN TestSniffSmartTCPAmbiguousPartialsTimeOut/pr 2026-10-22T08:24:00.60071624Z === RUN TestSniffSmartTCPAmbiguousPartialsTimeOut/tls_content_type 2026-10-22T08:24:00.600734853Z === RUN TestSniffSmartTCPAmbiguousPartialsTimeOut/tls_version_major 2026-10-22T08:24:00.600749203Z === RUN TestSniffSmartTCPAmbiguousPartialsTimeOut/tls_version_minor 2026-10-22T08:24:00.600761651Z === RUN TestSniffSmartTCPAmbiguousPartialsTimeOut/tls_record_length_partial 2026-10-22T08:24:00.600775273Z --- PASS: TestSniffSmartTCPAmbiguousPartialsTimeOut (0.16s) 2026-10-22T08:24:00.600794272Z --- PASS: TestSniffSmartTCPAmbiguousPartialsTimeOut/g (0.02s) 2026-10-22T08:24:00.600812864Z --- PASS: TestSniffSmartTCPAmbiguousPartialsTimeOut/b (0.02s) 2026-10-22T08:24:00.60181985Z --- PASS: TestSniffSmartTCPAmbiguousPartialsTimeOut/bar (0.02s) 2026-10-22T08:24:00.601861907Z --- PASS: TestSniffSmartTCPAmbiguousPartialsTimeOut/pr (0.02s) 2026-10-22T08:24:00.602161105Z --- PASS: TestSniffSmartTCPAmbiguousPartialsTimeOut/tls_content_type (0.02s) 2026-10-22T08:24:00.602201521Z --- PASS: TestSniffSmartTCPAmbiguousPartialsTimeOut/tls_version_major (0.02s) 2026-10-22T08:24:00.602260772Z --- PASS: TestSniffSmartTCPAmbiguousPartialsTimeOut/tls_version_minor (0.02s) 2026-10-22T08:24:00.602288636Z --- PASS: TestSniffSmartTCPAmbiguousPartialsTimeOut/tls_record_length_partial (0.02s) 2026-10-22T08:24:00.602295912Z === RUN TestSniffSmartTCPReplayReturnsSniffedBytesBeforeUnderlyingBytes 2026-10-22T08:24:00.6023024Z --- PASS: TestSniffSmartTCPReplayReturnsSniffedBytesBeforeUnderlyingBytes (0.00s) 2026-10-22T08:24:00.602317119Z === RUN TestSniffSmartTCPHandlesLongHTTPRequestLine 2026-10-22T08:24:00.602334118Z --- PASS: TestSniffSmartTCPHandlesLongHTTPRequestLine (0.00s) 2026-10-22T08:24:00.602347316Z === RUN TestSniffSmartTCPClearsReadDeadlineBeforeHandoff 2026-10-22T08:24:00.602357395Z --- PASS: TestSniffSmartTCPClearsReadDeadlineBeforeHandoff (0.00s) 2026-10-22T08:24:00.602375799Z === RUN TestSniffSmartTCPDoesNotTreatClosedPipeAsSuccess 2026-10-22T08:24:00.602382639Z --- PASS: TestSniffSmartTCPDoesNotTreatClosedPipeAsSuccess (0.00s) 2026-10-22T08:24:00.60239142Z === RUN TestTrafficRuntimeDefaultsApplySafeLimits 2026-10-22T08:24:00.60239783Z --- PASS: TestTrafficRuntimeDefaultsApplySafeLimits (0.00s) 2026-10-22T08:24:00.602403254Z === RUN TestBackendFromAddressRejectsOutOfRangePort 2026-10-22T08:24:00.602408605Z --- PASS: TestBackendFromAddressRejectsOutOfRangePort (0.00s) 2026-10-22T08:24:00.602414003Z === RUN TestSmartTCPDispatch 2026-10-22T08:24:00.60242866Z === RUN TestSmartTCPDispatch/cleartext_HTTP_request_reaches_HTTP_handler 2026-10-22T08:24:00.602438968Z === RUN TestSmartTCPDispatch/h2c_prior-knowledge_reaches_HTTP_handler 2026-10-22T08:24:00.602449098Z === RUN TestSmartTCPDispatch/HTTPS_request_reaches_configured_HTTPS_fallback 2026-10-22T08:24:00.602476972Z === RUN TestSmartTCPDispatch/TLS_passthrough_SNI_match_wins_before_HTTPS_fallback 2026-10-22T08:24:00.602488639Z === RUN TestSmartTCPDispatch/no-SNI_TLS_reaches_HTTPS_fallback 2026-10-22T08:24:00.60250788Z === RUN TestSmartTCPDispatch/unknown_bytes_reach_raw_fallback_immediately_when_source_policy_allows 2026-10-22T08:24:00.602522306Z === RUN TestSmartTCPDispatch/unknown_bytes_refused_without_raw_fallback 2026-10-22T08:24:00.602533426Z === RUN TestSmartTCPDispatch/unknown_bytes_refused_when_raw_fallback_source_policy_denies_peer 2026-10-22T08:24:00.602544139Z === RUN TestSmartTCPDispatch/malformed_HTTP-looking_bytes_do_not_reach_raw_fallback 2026-10-22T08:24:00.602562844Z === RUN TestSmartTCPDispatch/malformed_TLS-looking_bytes_do_not_reach_raw_fallback 2026-10-22T08:24:00.602572969Z === RUN TestSmartTCPDispatch/PROXY_v1_and_v2_prefixes_rejected 2026-10-22T08:24:00.602596076Z === RUN TestSmartTCPDispatch/sniff_deadline_cleared_before_backend_handoff 2026-10-22T08:24:00.602617645Z === RUN TestSmartTCPDispatch/raw_fallback_trusted_CIDR_reload_reuses_same_listener 2026-10-22T08:24:00.602636911Z === RUN TestSmartTCPDispatch/raw_fallback_connection_closes_when_trusted_CIDR_no_longer_allows_peer 2026-10-22T08:24:00.602670399Z === RUN TestSmartTCPDispatch/TLS_ClientHello_read_after_sniff_is_bounded 2026-10-22T08:24:00.60268648Z --- PASS: TestSmartTCPDispatch (3.47s) 2026-10-22T08:24:00.602706534Z --- PASS: TestSmartTCPDispatch/cleartext_HTTP_request_reaches_HTTP_handler (0.00s) 2026-10-22T08:24:00.602731894Z --- PASS: TestSmartTCPDispatch/h2c_prior-knowledge_reaches_HTTP_handler (0.01s) 2026-10-22T08:24:00.602753332Z --- PASS: TestSmartTCPDispatch/HTTPS_request_reaches_configured_HTTPS_fallback (0.01s) 2026-10-22T08:24:00.602780153Z --- PASS: TestSmartTCPDispatch/TLS_passthrough_SNI_match_wins_before_HTTPS_fallback (0.02s) 2026-10-22T08:24:00.60280698Z --- PASS: TestSmartTCPDispatch/no-SNI_TLS_reaches_HTTPS_fallback (0.01s) 2026-10-22T08:24:00.602865664Z --- PASS: TestSmartTCPDispatch/unknown_bytes_reach_raw_fallback_immediately_when_source_policy_allows (0.00s) 2026-10-22T08:24:00.602904659Z --- PASS: TestSmartTCPDispatch/unknown_bytes_refused_without_raw_fallback (1.00s) 2026-10-22T08:24:00.60293454Z --- PASS: TestSmartTCPDispatch/unknown_bytes_refused_when_raw_fallback_source_policy_denies_peer (1.00s) 2026-10-22T08:24:00.602984677Z --- PASS: TestSmartTCPDispatch/malformed_HTTP-looking_bytes_do_not_reach_raw_fallback (0.00s) 2026-10-22T08:24:00.603009859Z --- PASS: TestSmartTCPDispatch/malformed_TLS-looking_bytes_do_not_reach_raw_fallback (0.00s) 2026-10-22T08:24:00.603025066Z --- PASS: TestSmartTCPDispatch/PROXY_v1_and_v2_prefixes_rejected (0.00s) 2026-10-22T08:24:00.603044119Z --- PASS: TestSmartTCPDispatch/sniff_deadline_cleared_before_backend_handoff (0.15s) 2026-10-22T08:24:00.603065194Z --- PASS: TestSmartTCPDispatch/raw_fallback_trusted_CIDR_reload_reuses_same_listener (1.00s) 2026-10-22T08:24:00.603085671Z --- PASS: TestSmartTCPDispatch/raw_fallback_connection_closes_when_trusted_CIDR_no_longer_allows_peer (0.00s) 2026-10-22T08:24:00.603106881Z --- PASS: TestSmartTCPDispatch/TLS_ClientHello_read_after_sniff_is_bounded (0.25s) 2026-10-22T08:24:00.603116693Z === RUN TestSetSmartTCPHTTPServerCopiesProtocols 2026-10-22T08:24:00.603126721Z --- PASS: TestSetSmartTCPHTTPServerCopiesProtocols (0.00s) 2026-10-22T08:24:00.603135746Z === RUN TestSmartTCPStatusCounters 2026-10-22T08:24:00.603144792Z === RUN TestSmartTCPStatusCounters/HTTP_accepted 2026-10-22T08:24:00.603153727Z === RUN TestSmartTCPStatusCounters/h2c_accepted 2026-10-22T08:24:00.603163025Z === RUN TestSmartTCPStatusCounters/HTTPS_fallback_accepted 2026-10-22T08:24:00.603172023Z === RUN TestSmartTCPStatusCounters/TLS_passthrough_accepted 2026-10-22T08:24:00.603182909Z === RUN TestSmartTCPStatusCounters/raw_fallback_accepted 2026-10-22T08:24:00.603193866Z === RUN TestSmartTCPStatusCounters/raw_fallback_backend_dial_failure_is_not_accepted 2026-10-22T08:24:00.60320398Z === RUN TestSmartTCPStatusCounters/refused_and_rejected_classes 2026-10-22T08:24:00.60321556Z === RUN TestSmartTCPStatusCounters/unknown_without_fallback_refused 2026-10-22T08:24:00.603224715Z === RUN TestSmartTCPStatusCounters/sniff_timeout 2026-10-22T08:24:00.603233735Z === RUN TestSmartTCPStatusCounters/entrypoint_CIDR_refused 2026-10-22T08:24:00.603243856Z --- PASS: TestSmartTCPStatusCounters (0.09s) 2026-10-22T08:24:00.60325768Z --- PASS: TestSmartTCPStatusCounters/HTTP_accepted (0.00s) 2026-10-22T08:24:00.603273773Z --- PASS: TestSmartTCPStatusCounters/h2c_accepted (0.00s) 2026-10-22T08:24:00.603290771Z --- PASS: TestSmartTCPStatusCounters/HTTPS_fallback_accepted (0.01s) 2026-10-22T08:24:00.603314419Z --- PASS: TestSmartTCPStatusCounters/TLS_passthrough_accepted (0.01s) 2026-10-22T08:24:00.603344994Z --- PASS: TestSmartTCPStatusCounters/raw_fallback_accepted (0.00s) 2026-10-22T08:24:00.603376677Z --- PASS: TestSmartTCPStatusCounters/raw_fallback_backend_dial_failure_is_not_accepted (0.00s) 2026-10-22T08:24:00.603398604Z --- PASS: TestSmartTCPStatusCounters/refused_and_rejected_classes (0.01s) 2026-10-22T08:24:00.603414684Z --- PASS: TestSmartTCPStatusCounters/unknown_without_fallback_refused (0.00s) 2026-10-22T08:24:00.6034321Z --- PASS: TestSmartTCPStatusCounters/sniff_timeout (0.05s) 2026-10-22T08:24:00.603450299Z --- PASS: TestSmartTCPStatusCounters/entrypoint_CIDR_refused (0.00s) 2026-10-22T08:24:00.603460441Z === RUN TestManagerStatusAggregatesSmartTCP 2026-10-22T08:24:00.603466394Z --- PASS: TestManagerStatusAggregatesSmartTCP (0.00s) 2026-10-22T08:24:00.603471293Z === RUN TestSmartTCPLifecycleHardening 2026-10-22T08:24:00.603478093Z === RUN TestSmartTCPLifecycleHardening/internal_HTTP_and_HTTPS_fallback_servers_stop_when_entrypoint_removed 2026-10-22T08:24:00.603485731Z === RUN TestSmartTCPLifecycleHardening/HTTP_fallback_handoff_remains_counted_until_hijacked_connection_closes 2026-10-22T08:24:00.603492553Z === RUN TestSmartTCPLifecycleHardening/shutdown_force_drain_closes_open_HTTP_fallback_handoff 2026-10-22T08:24:00.603499531Z === RUN TestSmartTCPLifecycleHardening/trusted_CIDR_change_closes_active_smart_TCP_connections_no_longer_allowed 2026-10-22T08:24:00.603510608Z === RUN TestSmartTCPLifecycleHardening/active_upgraded_connection_remains_tied_to_accepted_generation 2026-10-22T08:24:00.603524533Z === RUN TestSmartTCPLifecycleHardening/listener_is_not_reused_for_incompatible_address 2026-10-22T08:24:00.603530759Z --- PASS: TestSmartTCPLifecycleHardening (0.06s) 2026-10-22T08:24:00.603552338Z --- PASS: TestSmartTCPLifecycleHardening/internal_HTTP_and_HTTPS_fallback_servers_stop_when_entrypoint_removed (0.00s) 2026-10-22T08:24:00.603577391Z --- PASS: TestSmartTCPLifecycleHardening/HTTP_fallback_handoff_remains_counted_until_hijacked_connection_closes (0.00s) 2026-10-22T08:24:00.603601435Z --- PASS: TestSmartTCPLifecycleHardening/shutdown_force_drain_closes_open_HTTP_fallback_handoff (0.05s) 2026-10-22T08:24:00.603626286Z --- PASS: TestSmartTCPLifecycleHardening/trusted_CIDR_change_closes_active_smart_TCP_connections_no_longer_allowed (0.00s) 2026-10-22T08:24:00.603646516Z --- PASS: TestSmartTCPLifecycleHardening/active_upgraded_connection_remains_tied_to_accepted_generation (0.00s) 2026-10-22T08:24:00.603663917Z --- PASS: TestSmartTCPLifecycleHardening/listener_is_not_reused_for_incompatible_address (0.00s) 2026-10-22T08:24:00.603668694Z === RUN TestSmartTCPHTTPHandoff 2026-10-22T08:24:00.603674822Z === RUN TestSmartTCPHTTPHandoff/HTTP_Upgrade_h2c_reaches_handler_and_not_raw_fallback 2026-10-22T08:24:00.603680291Z === RUN TestSmartTCPHTTPHandoff/websocket_upgrade_supports_hijacker 2026-10-22T08:24:00.603686088Z === RUN TestSmartTCPHTTPHandoff/CONNECT_reaches_HTTP_handler_and_not_raw_fallback 2026-10-22T08:24:00.603692697Z === RUN TestSmartTCPHTTPHandoff/handoff_connection_has_cleared_deadlines_and_useful_addresses 2026-10-22T08:24:00.603697463Z --- PASS: TestSmartTCPHTTPHandoff (0.16s) 2026-10-22T08:24:00.603714493Z --- PASS: TestSmartTCPHTTPHandoff/HTTP_Upgrade_h2c_reaches_handler_and_not_raw_fallback (0.00s) 2026-10-22T08:24:00.603728979Z --- PASS: TestSmartTCPHTTPHandoff/websocket_upgrade_supports_hijacker (0.00s) 2026-10-22T08:24:00.603745293Z --- PASS: TestSmartTCPHTTPHandoff/CONNECT_reaches_HTTP_handler_and_not_raw_fallback (0.00s) 2026-10-22T08:24:00.603763527Z --- PASS: TestSmartTCPHTTPHandoff/handoff_connection_has_cleared_deadlines_and_useful_addresses (0.15s) 2026-10-22T08:24:00.60377794Z === RUN TestRouteToHTTPListenerServeFailureReturnsFalseAndLeavesTrackedForCaller 2026-10-22T08:24:00.603785817Z --- PASS: TestRouteToHTTPListenerServeFailureReturnsFalseAndLeavesTrackedForCaller (0.00s) 2026-10-22T08:24:00.603793687Z === RUN TestTCPManagerLifecycle 2026-10-22T08:24:00.60380247Z --- PASS: TestTCPManagerLifecycle (0.00s) 2026-10-22T08:24:00.603811352Z === RUN TestTCPManagerRejectsInvalidGraphWithoutReplacingSnapshot 2026-10-22T08:24:00.603822157Z --- PASS: TestTCPManagerRejectsInvalidGraphWithoutReplacingSnapshot (0.00s) 2026-10-22T08:24:00.603830853Z === RUN TestTCPManagerReplacesSameAddressEntrypoint 2026-10-22T08:24:00.603840218Z --- PASS: TestTCPManagerReplacesSameAddressEntrypoint (0.00s) 2026-10-22T08:24:00.603846536Z === RUN TestTCPManagerSameAddressProtocolChangeStartsTLSHTTPServer 2026-10-22T08:24:00.60385757Z --- PASS: TestTCPManagerSameAddressProtocolChangeStartsTLSHTTPServer (0.01s) 2026-10-22T08:24:00.603863183Z === RUN TestTCPManagerSameAddressTLSMuxRenameRefreshesHTTPSRoute 2026-10-22T08:24:00.603868701Z --- PASS: TestTCPManagerSameAddressTLSMuxRenameRefreshesHTTPSRoute (0.01s) 2026-10-22T08:24:00.603873927Z === RUN TestTCPRuntimeDoesNotPublishTLSHTTPServerAfterClose 2026-10-22T08:24:00.603879153Z --- PASS: TestTCPRuntimeDoesNotPublishTLSHTTPServerAfterClose (0.00s) 2026-10-22T08:24:00.603884577Z === RUN TestTCPManagerSameAddressProtocolChangeStopsTLSHTTPServer 2026-10-22T08:24:00.603889952Z --- PASS: TestTCPManagerSameAddressProtocolChangeStopsTLSHTTPServer (0.01s) 2026-10-22T08:24:00.603895512Z === RUN TestTrackedTCPConnClosesLateBackendAfterStaleClose 2026-10-22T08:24:00.603901984Z --- PASS: TestTrackedTCPConnClosesLateBackendAfterStaleClose (0.00s) 2026-10-22T08:24:00.603906796Z === RUN TestTCPPassthroughRejectsUntrustedCIDR 2026-10-22T08:24:00.603911844Z --- PASS: TestTCPPassthroughRejectsUntrustedCIDR (0.00s) 2026-10-22T08:24:00.603917137Z === RUN TestTCPPassthroughReloadAppliesTrustedCIDRChange 2026-10-22T08:24:00.60392585Z --- PASS: TestTCPPassthroughReloadAppliesTrustedCIDRChange (0.00s) 2026-10-22T08:24:00.603931913Z === RUN TestTLSMuxReloadClosesActiveUntrustedHTTPSFallbackConnections 2026-10-22T08:24:00.603937651Z --- PASS: TestTLSMuxReloadClosesActiveUntrustedHTTPSFallbackConnections (0.01s) 2026-10-22T08:24:00.603943005Z === RUN TestTCPPassthroughReloadClosesActiveUntrustedConnections 2026-10-22T08:24:00.603948391Z --- PASS: TestTCPPassthroughReloadClosesActiveUntrustedConnections (0.00s) 2026-10-22T08:24:00.603952876Z === RUN TestTCPPassthroughEcho 2026-10-22T08:24:00.603958345Z --- PASS: TestTCPPassthroughEcho (0.00s) 2026-10-22T08:24:00.603963232Z === RUN TestTCPPassthroughUnknownRouterCloses 2026-10-22T08:24:00.603968234Z --- PASS: TestTCPPassthroughUnknownRouterCloses (0.00s) 2026-10-22T08:24:00.603972947Z === RUN TestTCPPassthroughBackendDialFailure 2026-10-22T08:24:00.603977868Z --- PASS: TestTCPPassthroughBackendDialFailure (0.00s) 2026-10-22T08:24:00.603982627Z === RUN TestTCPPassthroughShutdownStopsAccepting 2026-10-22T08:24:00.603987604Z --- PASS: TestTCPPassthroughShutdownStopsAccepting (0.00s) 2026-10-22T08:24:00.603992446Z === RUN TestTCPPassthroughIdleTimeoutClosesConnection 2026-10-22T08:24:00.603997649Z --- PASS: TestTCPPassthroughIdleTimeoutClosesConnection (0.05s) 2026-10-22T08:24:00.60400268Z === RUN TestTCPPassthroughMaxConnectionsRejectsOverflow 2026-10-22T08:24:00.604007857Z --- PASS: TestTCPPassthroughMaxConnectionsRejectsOverflow (0.00s) 2026-10-22T08:24:00.604013597Z === RUN TestTCPPassthroughDrainWaitsForActiveConnectionThenTimesOut 2026-10-22T08:24:00.604023559Z --- PASS: TestTCPPassthroughDrainWaitsForActiveConnectionThenTimesOut (0.05s) 2026-10-22T08:24:00.604029454Z === RUN TestTCPPassthroughStatusCountersTrackAcceptedRefusedErrorsAndBytes 2026-10-22T08:24:00.604035125Z --- PASS: TestTCPPassthroughStatusCountersTrackAcceptedRefusedErrorsAndBytes (0.01s) 2026-10-22T08:24:00.604040107Z === RUN TestClientHelloTooLargeUsesDomainSentinel 2026-10-22T08:24:00.604045253Z --- PASS: TestClientHelloTooLargeUsesDomainSentinel (0.00s) 2026-10-22T08:24:00.604049508Z === RUN TestClientHelloPeek 2026-10-22T08:24:00.604060044Z === RUN TestClientHelloPeek/valid_sni_returns_replayable_bytes 2026-10-22T08:24:00.604064819Z === RUN TestClientHelloPeek/no_sni 2026-10-22T08:24:00.604069425Z === RUN TestClientHelloPeek/malformed 2026-10-22T08:24:00.604073874Z === RUN TestClientHelloPeek/fragmented 2026-10-22T08:24:00.604079706Z === RUN TestClientHelloPeek/client_hello_across_multiple_tls_records 2026-10-22T08:24:00.604085379Z === RUN TestClientHelloPeek/client_hello_header_across_multiple_tls_records 2026-10-22T08:24:00.604089986Z --- PASS: TestClientHelloPeek (0.02s) 2026-10-22T08:24:00.604103705Z --- PASS: TestClientHelloPeek/valid_sni_returns_replayable_bytes (0.00s) 2026-10-22T08:24:00.604113693Z --- PASS: TestClientHelloPeek/no_sni (0.00s) 2026-10-22T08:24:00.604124112Z --- PASS: TestClientHelloPeek/malformed (0.00s) 2026-10-22T08:24:00.604178456Z --- PASS: TestClientHelloPeek/fragmented (0.01s) 2026-10-22T08:24:00.604197355Z --- PASS: TestClientHelloPeek/client_hello_across_multiple_tls_records (0.00s) 2026-10-22T08:24:00.604213818Z --- PASS: TestClientHelloPeek/client_hello_header_across_multiple_tls_records (0.00s) 2026-10-22T08:24:00.604218473Z === RUN TestTLSPassthrough 2026-10-22T08:24:00.604223412Z --- PASS: TestTLSPassthrough (0.02s) 2026-10-22T08:24:00.604238253Z === RUN TestTLSMuxUnknownClosesWithoutHTTPSRoute 2026-10-22T08:24:00.604251998Z --- PASS: TestTLSMuxUnknownClosesWithoutHTTPSRoute (0.00s) 2026-10-22T08:24:00.604261818Z === RUN TestTLSMuxIncompleteClientHelloDoesNotHangShutdown 2026-10-22T08:24:00.604271336Z --- PASS: TestTLSMuxIncompleteClientHelloDoesNotHangShutdown (0.05s) 2026-10-22T08:24:00.604313127Z === RUN TestTLSMuxHTTPServerRefreshesActiveRuntime 2026-10-22T08:24:00.604326312Z --- PASS: TestTLSMuxHTTPServerRefreshesActiveRuntime (0.02s) 2026-10-22T08:24:00.604337206Z === RUN TestTLSHTTPListenerServeRejectsAfterClose 2026-10-22T08:24:00.604343598Z --- PASS: TestTLSHTTPListenerServeRejectsAfterClose (0.01s) 2026-10-22T08:24:00.604349105Z === RUN TestTLSHTTPListenerCloseDrainsQueuedConnections 2026-10-22T08:24:00.60436701Z --- PASS: TestTLSHTTPListenerCloseDrainsQueuedConnections (0.00s) 2026-10-22T08:24:00.604384535Z === RUN TestTLSMuxHTTPSRoute 2026-10-22T08:24:00.604397448Z --- PASS: TestTLSMuxHTTPSRoute (0.02s) 2026-10-22T08:24:00.604406496Z === RUN TestTLSMuxHTTP2Route 2026-10-22T08:24:00.60441544Z --- PASS: TestTLSMuxHTTP2Route (0.01s) 2026-10-22T08:24:00.604424735Z === RUN TestHostMatchesTLSWildcard 2026-10-22T08:24:00.6044457Z --- PASS: TestHostMatchesTLSWildcard (0.00s) 2026-10-22T08:24:00.604460823Z === RUN TestUDPPassthroughEcho 2026-10-22T08:24:00.604471044Z --- PASS: TestUDPPassthroughEcho (0.05s) 2026-10-22T08:24:00.604479673Z === RUN TestUDPRejectsUntrustedCIDR 2026-10-22T08:24:00.604485178Z --- PASS: TestUDPRejectsUntrustedCIDR (0.08s) 2026-10-22T08:24:00.604490269Z === RUN TestUDPReloadAppliesTrustedCIDRChange 2026-10-22T08:24:00.604512727Z --- PASS: TestUDPReloadAppliesTrustedCIDRChange (0.08s) 2026-10-22T08:24:00.604522009Z === RUN TestUDPReloadClosesActiveUntrustedSessions 2026-10-22T08:24:00.604533228Z --- PASS: TestUDPReloadClosesActiveUntrustedSessions (0.08s) 2026-10-22T08:24:00.60454244Z === RUN TestUDPReloadReplacesSessionWhenBackendChanges 2026-10-22T08:24:00.604572658Z --- PASS: TestUDPReloadReplacesSessionWhenBackendChanges (0.11s) 2026-10-22T08:24:00.604596739Z === RUN TestUDPStaleRemovalKeepsReplacementSession 2026-10-22T08:24:00.604632863Z --- PASS: TestUDPStaleRemovalKeepsReplacementSession (0.00s) 2026-10-22T08:24:00.604669337Z === RUN TestUDPExpiryClosesOnlyRegisteredIdleSessionOnce 2026-10-22T08:24:00.604688643Z --- PASS: TestUDPExpiryClosesOnlyRegisteredIdleSessionOnce (0.00s) 2026-10-22T08:24:00.604708744Z === RUN TestUDPAdmissionGateBlocksPublicationAfterClosingBegins 2026-10-22T08:24:00.604731768Z --- PASS: TestUDPAdmissionGateBlocksPublicationAfterClosingBegins (0.00s) 2026-10-22T08:24:00.604765804Z === RUN TestUDPPublishSessionRejectsCompletedDialAfterAdmissionClosure 2026-10-22T08:24:00.604785839Z --- PASS: TestUDPPublishSessionRejectsCompletedDialAfterAdmissionClosure (0.00s) 2026-10-22T08:24:00.604816018Z === RUN TestUDPPublishSessionReusesExistingAndTouchesIt 2026-10-22T08:24:00.604846903Z --- PASS: TestUDPPublishSessionReusesExistingAndTouchesIt (0.00s) 2026-10-22T08:24:00.604867021Z === RUN TestUDPRemoveSessionNilIsSafe 2026-10-22T08:24:00.604884538Z --- PASS: TestUDPRemoveSessionNilIsSafe (0.00s) 2026-10-22T08:24:00.604926694Z === RUN TestUDPReadLoopRejectsInvalidSourceAddress 2026-10-22T08:24:00.604955364Z --- PASS: TestUDPReadLoopRejectsInvalidSourceAddress (0.06s) 2026-10-22T08:24:00.60497581Z === RUN TestUDPStopBeforeStartLeavesNoRuntimeGoroutines 2026-10-22T08:24:00.605006671Z --- PASS: TestUDPStopBeforeStartLeavesNoRuntimeGoroutines (0.00s) 2026-10-22T08:24:00.605027715Z === RUN TestUDPShutdownLeavesNoSessionsOrRuntimeGoroutines 2026-10-22T08:24:00.605061137Z --- PASS: TestUDPShutdownLeavesNoSessionsOrRuntimeGoroutines (0.05s) 2026-10-22T08:24:00.605083707Z === RUN TestUDPConcurrentCreationDuringShutdownLeavesNoSessions 2026-10-22T08:24:00.605116687Z --- PASS: TestUDPConcurrentCreationDuringShutdownLeavesNoSessions (0.00s) 2026-10-22T08:24:00.605158833Z === RUN TestUDPInFlightDialDoesNotPublishAfterAdmissionClosure 2026-10-22T08:24:00.605181Z --- PASS: TestUDPInFlightDialDoesNotPublishAfterAdmissionClosure (0.00s) 2026-10-22T08:24:00.605197427Z === RUN TestUDPAddrPortNormalizesIPv4MappedAndPreservesZones 2026-10-22T08:24:00.605214825Z --- PASS: TestUDPAddrPortNormalizesIPv4MappedAndPreservesZones (0.00s) 2026-10-22T08:24:00.605232604Z === RUN TestUDPAddrPortRejectsInvalidAddresses 2026-10-22T08:24:00.605249591Z --- PASS: TestUDPAddrPortRejectsInvalidAddresses (0.00s) 2026-10-22T08:24:00.605282884Z === RUN TestUDPSessionPrecomputesImmutableRemoteAddr 2026-10-22T08:24:00.60531856Z --- PASS: TestUDPSessionPrecomputesImmutableRemoteAddr (0.00s) 2026-10-22T08:24:00.605347282Z === RUN TestUDPTrustedAddrPortMatchesCIDRs 2026-10-22T08:24:00.605368307Z --- PASS: TestUDPTrustedAddrPortMatchesCIDRs (0.00s) 2026-10-22T08:24:00.605385941Z === RUN TestUDPTwoClientsGetIsolatedSessions 2026-10-22T08:24:00.605403384Z --- PASS: TestUDPTwoClientsGetIsolatedSessions (0.05s) 2026-10-22T08:24:00.605433677Z === RUN TestUDPIdleSessionExpires 2026-10-22T08:24:00.605453149Z --- PASS: TestUDPIdleSessionExpires (0.05s) 2026-10-22T08:24:00.605470371Z === RUN TestUDPMaxSessionsRejectsOverflow 2026-10-22T08:24:00.605508463Z --- PASS: TestUDPMaxSessionsRejectsOverflow (0.13s) 2026-10-22T08:24:00.605532136Z === RUN TestUDPRemovedRouterWithRetainedEntryPointDrainsSession 2026-10-22T08:24:00.605562588Z --- PASS: TestUDPRemovedRouterWithRetainedEntryPointDrainsSession (0.13s) 2026-10-22T08:24:00.605587601Z === RUN TestUDPBackendChangeDrainsExistingSession 2026-10-22T08:24:00.605606346Z --- PASS: TestUDPBackendChangeDrainsExistingSession (0.11s) 2026-10-22T08:24:00.605635881Z === RUN TestUDPRemovedRouterDrainsThenClosesSessions 2026-10-22T08:24:00.60565687Z --- PASS: TestUDPRemovedRouterDrainsThenClosesSessions (0.05s) 2026-10-22T08:24:00.605674175Z === RUN TestUDPShutdownClosesSocket 2026-10-22T08:24:00.605710289Z --- PASS: TestUDPShutdownClosesSocket (0.00s) 2026-10-22T08:24:00.605731542Z === RUN TestUDPStatusCountersTrackDatagrams 2026-10-22T08:24:00.605754234Z --- PASS: TestUDPStatusCountersTrackDatagrams (0.05s) 2026-10-22T08:24:00.605772284Z PASS 2026-10-22T08:24:00.605803796Z ok github.com/bnema/gordon/internal/adapters/in/traffic 7.357s 2026-10-22T08:24:00.605832476Z === RUN TestEnsureRuntimeDirPrefersXDG 2026-10-22T08:24:00.605851967Z --- PASS: TestEnsureRuntimeDirPrefersXDG (0.00s) 2026-10-22T08:24:00.605868526Z === RUN TestEnsureRuntimeDirFallsBackToHome 2026-10-22T08:24:00.605905661Z --- PASS: TestEnsureRuntimeDirFallsBackToHome (0.00s) 2026-10-22T08:24:00.605937208Z === RUN TestEnsureRuntimeDirRejectsUnsafeXDG 2026-10-22T08:24:00.605956601Z --- PASS: TestEnsureRuntimeDirRejectsUnsafeXDG (0.00s) 2026-10-22T08:24:00.605973504Z === RUN TestEnsureRuntimeDirRejectsRelativeXDG 2026-10-22T08:24:00.60600537Z --- PASS: TestEnsureRuntimeDirRejectsRelativeXDG (0.00s) 2026-10-22T08:24:00.606020256Z === RUN TestEnsureRuntimeDirNoFallbackOnCreateError 2026-10-22T08:24:00.606042176Z --- PASS: TestEnsureRuntimeDirNoFallbackOnCreateError (0.00s) 2026-10-22T08:24:00.606069973Z === RUN TestEnsureDirRefusesSymlinkAncestor 2026-10-22T08:24:00.60607828Z --- PASS: TestEnsureDirRefusesSymlinkAncestor (0.00s) 2026-10-22T08:24:00.606083668Z === RUN TestEnsureDirTightensPermissions 2026-10-22T08:24:00.606091929Z --- PASS: TestEnsureDirTightensPermissions (0.00s) 2026-10-22T08:24:00.606108558Z === RUN TestEnsureDirRejectsOwnerOwnedWritableAncestor 2026-10-22T08:24:00.606141225Z --- PASS: TestEnsureDirRejectsOwnerOwnedWritableAncestor (0.00s) 2026-10-22T08:24:00.606157498Z === RUN TestValidatePathComponentRejectsForeignOwnedAncestors 2026-10-22T08:24:00.606190624Z === RUN TestValidatePathComponentRejectsForeignOwnedAncestors/-rwxr-xr-x 2026-10-22T08:24:00.606209967Z === RUN TestValidatePathComponentRejectsForeignOwnedAncestors/-rwx------ 2026-10-22T08:24:00.606216998Z --- PASS: TestValidatePathComponentRejectsForeignOwnedAncestors (0.00s) 2026-10-22T08:24:00.606236024Z --- PASS: TestValidatePathComponentRejectsForeignOwnedAncestors/-rwxr-xr-x (0.00s) 2026-10-22T08:24:00.606280082Z --- PASS: TestValidatePathComponentRejectsForeignOwnedAncestors/-rwx------ (0.00s) 2026-10-22T08:24:00.606299971Z === RUN TestValidatePathComponentAllowsRootOwnedStickyAncestor 2026-10-22T08:24:00.606311676Z --- PASS: TestValidatePathComponentAllowsRootOwnedStickyAncestor (0.00s) 2026-10-22T08:24:00.606324218Z === RUN TestValidateDirAllowsStickyRootAncestor 2026-10-22T08:24:00.606345879Z --- PASS: TestValidateDirAllowsStickyRootAncestor (0.00s) 2026-10-22T08:24:00.606376253Z === RUN TestEnsureDirRejectsSymlinkDirectory 2026-10-22T08:24:00.606394363Z --- PASS: TestEnsureDirRejectsSymlinkDirectory (0.00s) 2026-10-22T08:24:00.606419915Z === RUN TestEnsureDirRejectsRegularFile 2026-10-22T08:24:00.606438192Z --- PASS: TestEnsureDirRejectsRegularFile (0.00s) 2026-10-22T08:24:00.60645514Z === RUN TestEnsureDirRejectsForeignOwner 2026-10-22T08:24:00.606489176Z localadmin_test.go:197: requires root to change directory ownership 2026-10-22T08:24:00.606505573Z --- SKIP: TestEnsureDirRejectsForeignOwner (0.00s) 2026-10-22T08:24:00.606521394Z === RUN TestListenCreatesOwnerOnlySocket 2026-10-22T08:24:00.606543397Z --- PASS: TestListenCreatesOwnerOnlySocket (0.00s) 2026-10-22T08:24:00.606561641Z === RUN TestListenRefusesActiveListener 2026-10-22T08:24:00.6065898Z --- PASS: TestListenRefusesActiveListener (0.00s) 2026-10-22T08:24:00.606608084Z === RUN TestListenRemovesStaleOwnedSocket 2026-10-22T08:24:00.606626915Z --- PASS: TestListenRemovesStaleOwnedSocket (0.00s) 2026-10-22T08:24:00.60667202Z === RUN TestListenRefusesRegularFileCollision 2026-10-22T08:24:00.606691703Z --- PASS: TestListenRefusesRegularFileCollision (0.00s) 2026-10-22T08:24:00.606708239Z === RUN TestListenRefusesSymlinkSocket 2026-10-22T08:24:00.606738711Z --- PASS: TestListenRefusesSymlinkSocket (0.00s) 2026-10-22T08:24:00.606764415Z === RUN TestValidateSocketRejectsGroupAccessibleSocket 2026-10-22T08:24:00.606785112Z --- PASS: TestValidateSocketRejectsGroupAccessibleSocket (0.00s) 2026-10-22T08:24:00.606803235Z === RUN TestRemoveOwnedSocketRemovesBoundSocket 2026-10-22T08:24:00.606833754Z --- PASS: TestRemoveOwnedSocketRemovesBoundSocket (0.00s) 2026-10-22T08:24:00.606851414Z === RUN TestRemoveOwnedSocketLeavesReplacement 2026-10-22T08:24:00.606879225Z --- PASS: TestRemoveOwnedSocketLeavesReplacement (0.00s) 2026-10-22T08:24:00.606907437Z === RUN TestRemoveOwnedSocketIgnoresMissingPath 2026-10-22T08:24:00.606926026Z --- PASS: TestRemoveOwnedSocketIgnoresMissingPath (0.00s) 2026-10-22T08:24:00.606948916Z === RUN TestClientDirCandidatesOrderAndDedupe 2026-10-22T08:24:00.606966927Z === RUN TestClientDirCandidatesOrderAndDedupe/xdg_coincides_with_the_systemd_default 2026-10-22T08:24:00.606980586Z === RUN TestClientDirCandidatesOrderAndDedupe/xdg_differs_from_the_systemd_default 2026-10-22T08:24:00.607000059Z --- PASS: TestClientDirCandidatesOrderAndDedupe (0.00s) 2026-10-22T08:24:00.607024047Z --- PASS: TestClientDirCandidatesOrderAndDedupe/xdg_coincides_with_the_systemd_default (0.00s) 2026-10-22T08:24:00.607049259Z --- PASS: TestClientDirCandidatesOrderAndDedupe/xdg_differs_from_the_systemd_default (0.00s) 2026-10-22T08:24:00.60705928Z === RUN TestDialContextRejectsPeerUIDMismatchBeforeUse 2026-10-22T08:24:00.60706927Z --- PASS: TestDialContextRejectsPeerUIDMismatchBeforeUse (0.00s) 2026-10-22T08:24:00.607078659Z === RUN TestListenRefusesForeignOwnedSocketDirectory 2026-10-22T08:24:00.607100401Z localadmin_test.go:389: requires root to change directory ownership 2026-10-22T08:24:00.607122001Z --- SKIP: TestListenRefusesForeignOwnedSocketDirectory (0.00s) 2026-10-22T08:24:00.607131687Z PASS 2026-10-22T08:24:00.607141559Z ok github.com/bnema/gordon/internal/adapters/localadmin 1.019s 2026-10-22T08:24:00.607159041Z === RUN TestFormatJSON_AllFields 2026-10-22T08:24:00.607170552Z --- PASS: TestFormatJSON_AllFields (0.00s) 2026-10-22T08:24:00.60717969Z === RUN TestFormatJSON_OneLinePerEntry 2026-10-22T08:24:00.607197522Z --- PASS: TestFormatJSON_OneLinePerEntry (0.00s) 2026-10-22T08:24:00.607232671Z === RUN TestFormatJSON_TimestampMillisecondPrecision 2026-10-22T08:24:00.607247512Z --- PASS: TestFormatJSON_TimestampMillisecondPrecision (0.00s) 2026-10-22T08:24:00.607256939Z === RUN TestFormatJSON_ClientIPNoPort 2026-10-22T08:24:00.607265759Z --- PASS: TestFormatJSON_ClientIPNoPort (0.00s) 2026-10-22T08:24:00.607274415Z === RUN TestFormatJSON_EmptyOptionalFields 2026-10-22T08:24:00.607292705Z --- PASS: TestFormatJSON_EmptyOptionalFields (0.00s) 2026-10-22T08:24:00.607304003Z === RUN TestFormatJSON_WithQuery 2026-10-22T08:24:00.607327274Z --- PASS: TestFormatJSON_WithQuery (0.00s) 2026-10-22T08:24:00.607337848Z === RUN TestFormatCLF_BasicLine 2026-10-22T08:24:00.607354508Z --- PASS: TestFormatCLF_BasicLine (0.00s) 2026-10-22T08:24:00.607365198Z === RUN TestFormatCLF_WithQuery 2026-10-22T08:24:00.607383332Z --- PASS: TestFormatCLF_WithQuery (0.00s) 2026-10-22T08:24:00.607394246Z === RUN TestFormatCLF_NoRefererOrUA 2026-10-22T08:24:00.607410575Z --- PASS: TestFormatCLF_NoRefererOrUA (0.00s) 2026-10-22T08:24:00.607421676Z === RUN TestFormatCLF_EscapesQuotesInTarget 2026-10-22T08:24:00.607438929Z --- PASS: TestFormatCLF_EscapesQuotesInTarget (0.00s) 2026-10-22T08:24:00.607452274Z === RUN TestFormatCombined_BasicLine 2026-10-22T08:24:00.60747446Z --- PASS: TestFormatCombined_BasicLine (0.00s) 2026-10-22T08:24:00.607485122Z === RUN TestFormatCombined_EmptyRefererIsDash 2026-10-22T08:24:00.607494741Z --- PASS: TestFormatCombined_EmptyRefererIsDash (0.00s) 2026-10-22T08:24:00.607516672Z === RUN TestFormatCombined_EmptyUAIsDash 2026-10-22T08:24:00.607528415Z --- PASS: TestFormatCombined_EmptyUAIsDash (0.00s) 2026-10-22T08:24:00.607537416Z === RUN TestFormatCombined_WithReferer 2026-10-22T08:24:00.60754719Z --- PASS: TestFormatCombined_WithReferer (0.00s) 2026-10-22T08:24:00.60755603Z === RUN TestFormatCombined_EscapesQuotesInUA 2026-10-22T08:24:00.607583038Z --- PASS: TestFormatCombined_EscapesQuotesInUA (0.00s) 2026-10-22T08:24:00.607606891Z === RUN TestBuildRequestTarget_NoQuery 2026-10-22T08:24:00.607636179Z --- PASS: TestBuildRequestTarget_NoQuery (0.00s) 2026-10-22T08:24:00.607667118Z === RUN TestBuildRequestTarget_WithQuery 2026-10-22T08:24:00.607682161Z --- PASS: TestBuildRequestTarget_WithQuery (0.00s) 2026-10-22T08:24:00.607695622Z === RUN TestEscapeQuoted 2026-10-22T08:24:00.607706213Z --- PASS: TestEscapeQuoted (0.00s) 2026-10-22T08:24:00.607715762Z === RUN TestEscapeQuoted_ControlCharacters 2026-10-22T08:24:00.607725745Z --- PASS: TestEscapeQuoted_ControlCharacters (0.00s) 2026-10-22T08:24:00.607740749Z === RUN TestNewJournaldSink_JournaldUnavailable 2026-10-22T08:24:00.607769976Z --- PASS: TestNewJournaldSink_JournaldUnavailable (0.00s) 2026-10-22T08:24:00.607781174Z === RUN TestNewJournaldSink_EmptySyslogIdentifier 2026-10-22T08:24:00.607802247Z --- PASS: TestNewJournaldSink_EmptySyslogIdentifier (0.00s) 2026-10-22T08:24:00.607819803Z === RUN TestNewJournaldSink_WhitespaceSyslogIdentifier 2026-10-22T08:24:00.607836698Z --- PASS: TestNewJournaldSink_WhitespaceSyslogIdentifier (0.00s) 2026-10-22T08:24:00.607855153Z === RUN TestJournaldSink_Write_CallsJournalSend 2026-10-22T08:24:00.607866249Z --- PASS: TestJournaldSink_Write_CallsJournalSend (0.00s) 2026-10-22T08:24:00.607875331Z === RUN TestJournaldSink_Write_SendsCustomIdentifier 2026-10-22T08:24:00.607892856Z --- PASS: TestJournaldSink_Write_SendsCustomIdentifier (0.00s) 2026-10-22T08:24:00.607910133Z === RUN TestJournaldSink_Write_ReturnsErrorOnSendFailure 2026-10-22T08:24:00.607927849Z --- PASS: TestJournaldSink_Write_ReturnsErrorOnSendFailure (0.00s) 2026-10-22T08:24:00.60793941Z === RUN TestNew_InvalidFormat 2026-10-22T08:24:00.607948712Z --- PASS: TestNew_InvalidFormat (0.00s) 2026-10-22T08:24:00.607963091Z === RUN TestNew_InvalidOutput 2026-10-22T08:24:00.607972749Z --- PASS: TestNew_InvalidOutput (0.00s) 2026-10-22T08:24:00.607981149Z === RUN TestNew_FileOutput_EmptyPath 2026-10-22T08:24:00.607995099Z --- PASS: TestNew_FileOutput_EmptyPath (0.00s) 2026-10-22T08:24:00.608009414Z === RUN TestNew_FileOutput_CreatesDirectory 2026-10-22T08:24:00.608020129Z --- PASS: TestNew_FileOutput_CreatesDirectory (0.00s) 2026-10-22T08:24:00.608028954Z === RUN TestWriter_Stdout_JSON 2026-10-22T08:24:00.608047333Z --- PASS: TestWriter_Stdout_JSON (0.00s) 2026-10-22T08:24:00.608055851Z === RUN TestWriter_Stdout_CLF 2026-10-22T08:24:00.608064342Z --- PASS: TestWriter_Stdout_CLF (0.00s) 2026-10-22T08:24:00.608075749Z === RUN TestWriter_Stdout_Combined 2026-10-22T08:24:00.608093029Z --- PASS: TestWriter_Stdout_Combined (0.00s) 2026-10-22T08:24:00.60810396Z === RUN TestWriter_File_WritesLines 2026-10-22T08:24:00.608113204Z --- PASS: TestWriter_File_WritesLines (0.00s) 2026-10-22T08:24:00.608118569Z === RUN TestWriter_ConcurrentWrites 2026-10-22T08:24:00.608135355Z --- PASS: TestWriter_ConcurrentWrites (0.01s) 2026-10-22T08:24:00.608145266Z PASS 2026-10-22T08:24:00.608155Z ok github.com/bnema/gordon/internal/adapters/out/accesslog 1.024s 2026-10-22T08:24:00.60816956Z === RUN TestCloudflareZoneResolverFindsParentZone 2026-10-22T08:24:00.608199625Z --- PASS: TestCloudflareZoneResolverFindsParentZone (0.00s) 2026-10-22T08:24:00.608217886Z === RUN TestCloudflareZoneResolverDoesNotLeakTokenInError 2026-10-22T08:24:00.608229382Z --- PASS: TestCloudflareZoneResolverDoesNotLeakTokenInError (0.00s) 2026-10-22T08:24:00.608238814Z === RUN TestCloudflareZoneResolverSimpleDomain 2026-10-22T08:24:00.608265835Z --- PASS: TestCloudflareZoneResolverSimpleDomain (0.00s) 2026-10-22T08:24:00.608288744Z === RUN TestCloudflareZoneResolverNoZoneFound 2026-10-22T08:24:00.608303153Z --- PASS: TestCloudflareZoneResolverNoZoneFound (0.00s) 2026-10-22T08:24:00.608313369Z === RUN TestCloudflareZoneResolverCachesErrorsWithShortTTL 2026-10-22T08:24:00.608338136Z --- PASS: TestCloudflareZoneResolverCachesErrorsWithShortTTL (0.00s) 2026-10-22T08:24:00.608358393Z === RUN TestCloudflareZoneResolverUnsuccessfulAPI 2026-10-22T08:24:00.608373733Z --- PASS: TestCloudflareZoneResolverUnsuccessfulAPI (0.00s) 2026-10-22T08:24:00.608397076Z === RUN TestCloudflareZoneResolverImplementsInterface 2026-10-22T08:24:00.608432619Z --- PASS: TestCloudflareZoneResolverImplementsInterface (0.00s) 2026-10-22T08:24:00.608457842Z === RUN TestWithCloudflareHTTPClientNilLeavesDefault 2026-10-22T08:24:00.608470002Z --- PASS: TestWithCloudflareHTTPClientNilLeavesDefault (0.00s) 2026-10-22T08:24:00.608502544Z === RUN TestCloudflareZoneResolverFindZoneLowercasesInput 2026-10-22T08:24:00.608515226Z --- PASS: TestCloudflareZoneResolverFindZoneLowercasesInput (0.00s) 2026-10-22T08:24:00.608531405Z === RUN TestCloudflareZoneResolverFindZoneMixedCaseWithTrailingDot 2026-10-22T08:24:00.608543572Z --- PASS: TestCloudflareZoneResolverFindZoneMixedCaseWithTrailingDot (0.00s) 2026-10-22T08:24:00.608574471Z === RUN TestHTTPProviderStoresAndCleansChallenge 2026-10-22T08:24:00.608587246Z --- PASS: TestHTTPProviderStoresAndCleansChallenge (0.00s) 2026-10-22T08:24:00.608602882Z === RUN TestHTTPProviderNilSink 2026-10-22T08:24:00.608614029Z --- PASS: TestHTTPProviderNilSink (0.00s) 2026-10-22T08:24:00.60863976Z === RUN TestNewIssuerValidatesEmail 2026-10-22T08:24:00.608652094Z --- PASS: TestNewIssuerValidatesEmail (0.00s) 2026-10-22T08:24:00.608660683Z === RUN TestNewIssuerValidatesStore 2026-10-22T08:24:00.608669293Z --- PASS: TestNewIssuerValidatesStore (0.00s) 2026-10-22T08:24:00.608684446Z === RUN TestNewIssuerValidatesHTTPChallengeSink 2026-10-22T08:24:00.608709685Z --- PASS: TestNewIssuerValidatesHTTPChallengeSink (0.00s) 2026-10-22T08:24:00.608720187Z === RUN TestNewIssuerValidatesChallengeMode 2026-10-22T08:24:00.608739087Z --- PASS: TestNewIssuerValidatesChallengeMode (0.00s) 2026-10-22T08:24:00.608752385Z === RUN TestNewIssuerValidatesCloudflareToken 2026-10-22T08:24:00.608773253Z --- PASS: TestNewIssuerValidatesCloudflareToken (0.00s) 2026-10-22T08:24:00.608790883Z === RUN TestNewIssuerValidatesCloudflareDNSConfig 2026-10-22T08:24:00.60880065Z --- PASS: TestNewIssuerValidatesCloudflareDNSConfig (0.00s) 2026-10-22T08:24:00.608811396Z === RUN TestNormalizeDNSResolversErrorsIncludeEntryContext 2026-10-22T08:24:00.608840151Z === RUN TestNormalizeDNSResolversErrorsIncludeEntryContext/empty_after_trimming 2026-10-22T08:24:00.608861134Z === RUN TestNormalizeDNSResolversErrorsIncludeEntryContext/missing_port 2026-10-22T08:24:00.608881691Z === RUN TestNormalizeDNSResolversErrorsIncludeEntryContext/empty_host 2026-10-22T08:24:00.608940493Z === RUN TestNormalizeDNSResolversErrorsIncludeEntryContext/invalid_port 2026-10-22T08:24:00.608954517Z --- PASS: TestNormalizeDNSResolversErrorsIncludeEntryContext (0.00s) 2026-10-22T08:24:00.608982955Z --- PASS: TestNormalizeDNSResolversErrorsIncludeEntryContext/empty_after_trimming (0.00s) 2026-10-22T08:24:00.609018703Z --- PASS: TestNormalizeDNSResolversErrorsIncludeEntryContext/missing_port (0.00s) 2026-10-22T08:24:00.609046266Z --- PASS: TestNormalizeDNSResolversErrorsIncludeEntryContext/empty_host (0.00s) 2026-10-22T08:24:00.609080386Z --- PASS: TestNormalizeDNSResolversErrorsIncludeEntryContext/invalid_port (0.00s) 2026-10-22T08:24:00.609098783Z === RUN TestNewIssuerRejectsNonHTTPSURL 2026-10-22T08:24:00.609108506Z --- PASS: TestNewIssuerRejectsNonHTTPSURL (0.00s) 2026-10-22T08:24:00.609134343Z === RUN TestNewIssuerValidWithDefaults 2026-10-22T08:24:00.609146178Z --- PASS: TestNewIssuerValidWithDefaults (0.00s) 2026-10-22T08:24:00.60915548Z === RUN TestCloudflareDNSProviderConfigUsesDNSSettings 2026-10-22T08:24:00.609164667Z --- PASS: TestCloudflareDNSProviderConfigUsesDNSSettings (0.00s) 2026-10-22T08:24:00.609187232Z === RUN TestPrivateKeyRoundTrip 2026-10-22T08:24:00.60920531Z --- PASS: TestPrivateKeyRoundTrip (0.00s) 2026-10-22T08:24:00.609216642Z === RUN TestPrivateKeyRSARoundTrip 2026-10-22T08:24:00.609241328Z --- PASS: TestPrivateKeyRSARoundTrip (0.10s) 2026-10-22T08:24:00.609280637Z === RUN TestResourceConversionToStoredCertificate 2026-10-22T08:24:00.609297669Z --- PASS: TestResourceConversionToStoredCertificate (0.00s) 2026-10-22T08:24:00.609310609Z === RUN TestResourceConversionNoIssuer 2026-10-22T08:24:00.609350578Z --- PASS: TestResourceConversionNoIssuer (0.00s) 2026-10-22T08:24:00.609369714Z === RUN TestAccountJSONRoundTrip 2026-10-22T08:24:00.609384561Z --- PASS: TestAccountJSONRoundTrip (0.00s) 2026-10-22T08:24:00.609412152Z === RUN TestParsedCertificateNotAfter 2026-10-22T08:24:00.609445716Z --- PASS: TestParsedCertificateNotAfter (0.00s) 2026-10-22T08:24:00.609454936Z PASS 2026-10-22T08:24:00.609465235Z ok github.com/bnema/gordon/internal/adapters/out/acmelego 1.134s 2026-10-22T08:24:00.609473073Z === RUN TestStoreSaveLoadAll 2026-10-22T08:24:00.609480862Z --- PASS: TestStoreSaveLoadAll (0.00s) 2026-10-22T08:24:00.609502506Z === RUN TestStorePrivateKeyMode 2026-10-22T08:24:00.60951215Z --- PASS: TestStorePrivateKeyMode (0.00s) 2026-10-22T08:24:00.609520752Z === RUN TestStoreRejectsUnsafeID 2026-10-22T08:24:00.60952883Z === RUN TestStoreRejectsUnsafeID/../escape 2026-10-22T08:24:00.609536128Z === RUN TestStoreRejectsUnsafeID/. 2026-10-22T08:24:00.609549095Z === RUN TestStoreRejectsUnsafeID/.hidden 2026-10-22T08:24:00.609593055Z === RUN TestStoreRejectsUnsafeID/tenant.old 2026-10-22T08:24:00.609612458Z === RUN TestStoreRejectsUnsafeID/tenant.tmp-123 2026-10-22T08:24:00.60962848Z --- PASS: TestStoreRejectsUnsafeID (0.00s) 2026-10-22T08:24:00.609669562Z --- PASS: TestStoreRejectsUnsafeID/../escape (0.00s) 2026-10-22T08:24:00.609688788Z --- PASS: TestStoreRejectsUnsafeID/. (0.00s) 2026-10-22T08:24:00.609720357Z --- PASS: TestStoreRejectsUnsafeID/.hidden (0.00s) 2026-10-22T08:24:00.609741025Z --- PASS: TestStoreRejectsUnsafeID/tenant.old (0.00s) 2026-10-22T08:24:00.609757646Z --- PASS: TestStoreRejectsUnsafeID/tenant.tmp-123 (0.00s) 2026-10-22T08:24:00.609784926Z === RUN TestStoreLockAcquireRelease 2026-10-22T08:24:00.60979854Z --- PASS: TestStoreLockAcquireRelease (0.00s) 2026-10-22T08:24:00.609815303Z === RUN TestStoreLockContextCanceled 2026-10-22T08:24:00.609824601Z --- PASS: TestStoreLockContextCanceled (0.00s) 2026-10-22T08:24:00.609852929Z === RUN TestStoreNewRestoresBackupDir 2026-10-22T08:24:00.60986637Z --- PASS: TestStoreNewRestoresBackupDir (0.00s) 2026-10-22T08:24:00.609875365Z === RUN TestStoreSaveLoadAccount 2026-10-22T08:24:00.609884039Z --- PASS: TestStoreSaveLoadAccount (0.00s) 2026-10-22T08:24:00.60989208Z === RUN TestStoreAccountFileMode 2026-10-22T08:24:00.609912899Z --- PASS: TestStoreAccountFileMode (0.00s) 2026-10-22T08:24:00.609925396Z === RUN TestStoreSaveLoadState 2026-10-22T08:24:00.6099396Z --- PASS: TestStoreSaveLoadState (0.00s) 2026-10-22T08:24:00.60994941Z === RUN TestStoreLoadAllInvalidChallenge 2026-10-22T08:24:00.609976713Z --- PASS: TestStoreLoadAllInvalidChallenge (0.00s) 2026-10-22T08:24:00.609995811Z === RUN TestStoreLoadAllCorruptPrivkey 2026-10-22T08:24:00.610007082Z --- PASS: TestStoreLoadAllCorruptPrivkey (0.00s) 2026-10-22T08:24:00.610022261Z === RUN TestStoreLoadAllCorruptFullchain 2026-10-22T08:24:00.610051309Z --- PASS: TestStoreLoadAllCorruptFullchain (0.00s) 2026-10-22T08:24:00.610063189Z === RUN TestStoreLoadAllSkipsTempAndBackupDirs 2026-10-22T08:24:00.610072636Z --- PASS: TestStoreLoadAllSkipsTempAndBackupDirs (0.00s) 2026-10-22T08:24:00.610081017Z === RUN TestStoreLoadAllInvalidPEM 2026-10-22T08:24:00.610091262Z --- PASS: TestStoreLoadAllInvalidPEM (0.00s) 2026-10-22T08:24:00.610118801Z PASS 2026-10-22T08:24:00.610131402Z ok github.com/bnema/gordon/internal/adapters/out/acmestore 1.025s 2026-10-22T08:24:00.610139936Z === RUN TestValidateAppSecretPath 2026-10-22T08:24:00.610160543Z --- PASS: TestValidateAppSecretPath (0.00s) 2026-10-22T08:24:00.610169393Z PASS 2026-10-22T08:24:00.610180753Z ok github.com/bnema/gordon/internal/adapters/out/appsecrets 1.012s 2026-10-22T08:24:00.610202186Z === RUN TestStore_ProtectionSnapshotCoversEveryRoot 2026-10-22T08:24:00.610212766Z --- PASS: TestStore_ProtectionSnapshotCoversEveryRoot (0.01s) 2026-10-22T08:24:00.610225234Z === RUN TestStore_ProtectionSnapshotStoppedAppKeepsActive 2026-10-22T08:24:00.610248368Z --- PASS: TestStore_ProtectionSnapshotStoppedAppKeepsActive (0.00s) 2026-10-22T08:24:00.610263455Z === RUN TestStore_ProtectionSnapshotKeepsHistoricalIncarnations 2026-10-22T08:24:00.610275181Z --- PASS: TestStore_ProtectionSnapshotKeepsHistoricalIncarnations (0.00s) 2026-10-22T08:24:00.610312195Z === RUN TestStore_ProtectionSnapshotKeepsDifferentClaimStates 2026-10-22T08:24:00.610330134Z --- PASS: TestStore_ProtectionSnapshotKeepsDifferentClaimStates (0.00s) 2026-10-22T08:24:00.610337011Z === RUN TestStore_ProtectionSnapshotReleasedIsTheOnlyDeletableState 2026-10-22T08:24:00.610348724Z --- PASS: TestStore_ProtectionSnapshotReleasedIsTheOnlyDeletableState (0.00s) 2026-10-22T08:24:00.610360965Z === RUN TestStore_ProtectionSnapshotUnknownStateIsRetained 2026-10-22T08:24:00.610370868Z --- PASS: TestStore_ProtectionSnapshotUnknownStateIsRetained (0.00s) 2026-10-22T08:24:00.610380091Z === RUN TestStore_ProtectionSnapshotMigrationBackfillsHistory 2026-10-22T08:24:00.610393964Z --- PASS: TestStore_ProtectionSnapshotMigrationBackfillsHistory (0.00s) 2026-10-22T08:24:00.610403883Z === RUN TestStore_ProtectionSnapshotReportsCorruptRecords 2026-10-22T08:24:00.610414691Z --- PASS: TestStore_ProtectionSnapshotReportsCorruptRecords (0.00s) 2026-10-22T08:24:00.610424365Z === RUN TestStore_ProtectionSnapshotConcurrentWrites 2026-10-22T08:24:00.610433106Z --- PASS: TestStore_ProtectionSnapshotConcurrentWrites (0.05s) 2026-10-22T08:24:00.610441537Z === RUN TestStore_ProtectionSnapshotCancellation 2026-10-22T08:24:00.610453459Z --- PASS: TestStore_ProtectionSnapshotCancellation (0.00s) 2026-10-22T08:24:00.610473558Z === RUN TestStore_ClaimOperationCreatesInFlightJournal 2026-10-22T08:24:00.61048633Z --- PASS: TestStore_ClaimOperationCreatesInFlightJournal (0.00s) 2026-10-22T08:24:00.610497773Z === RUN TestStore_ClaimOperationReplaysSameRequest 2026-10-22T08:24:00.610507679Z --- PASS: TestStore_ClaimOperationReplaysSameRequest (0.00s) 2026-10-22T08:24:00.610532264Z === RUN TestStore_ClaimOperationConflictsOnDifferentRequest 2026-10-22T08:24:00.610552991Z --- PASS: TestStore_ClaimOperationConflictsOnDifferentRequest (0.00s) 2026-10-22T08:24:00.610563945Z === RUN TestStore_ClaimOperationRefusesUnknownAppWithoutState 2026-10-22T08:24:00.610573591Z --- PASS: TestStore_ClaimOperationRefusesUnknownAppWithoutState (0.00s) 2026-10-22T08:24:00.610582868Z === RUN TestStore_ClaimOperationIsAtomicUnderConcurrency 2026-10-22T08:24:00.610592183Z --- PASS: TestStore_ClaimOperationIsAtomicUnderConcurrency (0.00s) 2026-10-22T08:24:00.61060108Z === RUN TestStore_ClaimOperationReplaysAfterReopen 2026-10-22T08:24:00.610610478Z --- PASS: TestStore_ClaimOperationReplaysAfterReopen (0.00s) 2026-10-22T08:24:00.610620849Z === RUN TestStore_ClaimOperationSurvivesRetire 2026-10-22T08:24:00.610630832Z --- PASS: TestStore_ClaimOperationSurvivesRetire (0.00s) 2026-10-22T08:24:00.610640196Z === RUN TestStore_CommitApplyRejectsSupersededIntent 2026-10-22T08:24:00.610666588Z --- PASS: TestStore_CommitApplyRejectsSupersededIntent (0.00s) 2026-10-22T08:24:00.610679325Z === RUN TestStore_RecoverDropsSupersededCommittedIntent 2026-10-22T08:24:00.610689284Z --- PASS: TestStore_RecoverDropsSupersededCommittedIntent (0.01s) 2026-10-22T08:24:00.610700059Z === RUN TestStore_CollectGarbagePreservesInFlightIntent 2026-10-22T08:24:00.610712698Z --- PASS: TestStore_CollectGarbagePreservesInFlightIntent (0.00s) 2026-10-22T08:24:00.610722361Z === RUN TestStore_RetireAppEndsIncarnation 2026-10-22T08:24:00.610728344Z --- PASS: TestStore_RetireAppEndsIncarnation (0.00s) 2026-10-22T08:24:00.610738179Z === RUN TestStore_RetireAppIsAtomicOnEmptyApp 2026-10-22T08:24:00.610747338Z --- PASS: TestStore_RetireAppIsAtomicOnEmptyApp (0.00s) 2026-10-22T08:24:00.610756925Z === RUN TestProtectionSnapshot_OperationDigestRootCarriesRepository 2026-10-22T08:24:00.610763588Z --- PASS: TestProtectionSnapshot_OperationDigestRootCarriesRepository (0.00s) 2026-10-22T08:24:00.610771978Z === RUN TestStore_BackendBindsRegisterRelease 2026-10-22T08:24:00.610785337Z --- PASS: TestStore_BackendBindsRegisterRelease (0.00s) 2026-10-22T08:24:00.610796522Z === RUN TestStore_BackendBindsConflictCrossApp 2026-10-22T08:24:00.610806163Z --- PASS: TestStore_BackendBindsConflictCrossApp (0.00s) 2026-10-22T08:24:00.61081545Z === RUN TestStore_BackendBindsUDPProtocol 2026-10-22T08:24:00.610824911Z --- PASS: TestStore_BackendBindsUDPProtocol (0.00s) 2026-10-22T08:24:00.610833135Z === RUN TestStore_StageCommitMaterialize 2026-10-22T08:24:00.61084178Z --- PASS: TestStore_StageCommitMaterialize (0.00s) 2026-10-22T08:24:00.610851069Z === RUN TestStore_RecoverCompletesCommitted 2026-10-22T08:24:00.610861637Z --- PASS: TestStore_RecoverCompletesCommitted (0.00s) 2026-10-22T08:24:00.610870491Z === RUN TestStore_ConcurrentSamePortCrossApp 2026-10-22T08:24:00.610879597Z --- PASS: TestStore_ConcurrentSamePortCrossApp (0.01s) 2026-10-22T08:24:00.610888352Z === RUN TestStore_GarbageProtectsReferenced 2026-10-22T08:24:00.610896996Z --- PASS: TestStore_GarbageProtectsReferenced (0.01s) 2026-10-22T08:24:00.610905231Z === RUN TestStore_CorruptAndIncompatible 2026-10-22T08:24:00.610914126Z --- PASS: TestStore_CorruptAndIncompatible (0.00s) 2026-10-22T08:24:00.610923027Z === RUN TestStore_AcceptApplyPublishesDesiredRevision 2026-10-22T08:24:00.610933844Z --- PASS: TestStore_AcceptApplyPublishesDesiredRevision (0.00s) 2026-10-22T08:24:00.610942757Z === RUN TestStore_GarbageSweepsStagedOrphan 2026-10-22T08:24:00.610952217Z --- PASS: TestStore_GarbageSweepsStagedOrphan (0.00s) 2026-10-22T08:24:00.610960537Z === RUN TestStore_OperationJournal 2026-10-22T08:24:00.610968953Z --- PASS: TestStore_OperationJournal (0.00s) 2026-10-22T08:24:00.610977038Z === RUN TestStore_IntentAndOwnership 2026-10-22T08:24:00.610985561Z --- PASS: TestStore_IntentAndOwnership (0.00s) 2026-10-22T08:24:00.610994658Z === RUN TestStore_RetentionEvictsUnreferencedBeyondDefault 2026-10-22T08:24:00.611009408Z --- PASS: TestStore_RetentionEvictsUnreferencedBeyondDefault (0.03s) 2026-10-22T08:24:00.611019902Z === RUN TestStore_ConfiguredRetentionOverridesDefault 2026-10-22T08:24:00.611043441Z --- PASS: TestStore_ConfiguredRetentionOverridesDefault (0.01s) 2026-10-22T08:24:00.611060405Z === RUN TestStore_ReopenPersistsAcrossClose 2026-10-22T08:24:00.611074715Z --- PASS: TestStore_ReopenPersistsAcrossClose (0.00s) 2026-10-22T08:24:00.611084504Z === RUN TestStore_OwnershipUUIDSurvivesNameReuse 2026-10-22T08:24:00.611093804Z --- PASS: TestStore_OwnershipUUIDSurvivesNameReuse (0.00s) 2026-10-22T08:24:00.611102953Z === RUN TestStore_RecoveryInhibitionsAreDurableAndGenerationScoped 2026-10-22T08:24:00.611112566Z --- PASS: TestStore_RecoveryInhibitionsAreDurableAndGenerationScoped (0.00s) 2026-10-22T08:24:00.611123167Z === RUN TestStore_DesiredDevicesRoundTrip 2026-10-22T08:24:00.611145567Z --- PASS: TestStore_DesiredDevicesRoundTrip (0.00s) 2026-10-22T08:24:00.611156466Z === RUN TestStore_DesiredWithoutDevicesLoads 2026-10-22T08:24:00.611165482Z --- PASS: TestStore_DesiredWithoutDevicesLoads (0.00s) 2026-10-22T08:24:00.611180328Z === RUN TestStore_DesiredCapabilitiesRoundTrip 2026-10-22T08:24:00.611190564Z --- PASS: TestStore_DesiredCapabilitiesRoundTrip (0.00s) 2026-10-22T08:24:00.611201268Z === RUN TestStore_DesiredWithoutCapabilitiesLoads 2026-10-22T08:24:00.611210386Z --- PASS: TestStore_DesiredWithoutCapabilitiesLoads (0.00s) 2026-10-22T08:24:00.611218078Z PASS 2026-10-22T08:24:00.611227722Z ok github.com/bnema/gordon/internal/adapters/out/appstate 1.206s 2026-10-22T08:24:00.611237171Z === RUN TestDetectRuntimeSocket_ExplicitPathTakesPrecedence 2026-10-22T08:24:00.611246706Z --- PASS: TestDetectRuntimeSocket_ExplicitPathTakesPrecedence (0.00s) 2026-10-22T08:24:00.61125567Z === RUN TestDetectRuntimeSocket_FallsBackToDockerHost 2026-10-22T08:24:00.61126582Z --- PASS: TestDetectRuntimeSocket_FallsBackToDockerHost (0.00s) 2026-10-22T08:24:00.611277375Z === RUN TestDetectRuntimeSocket_EmptyDockerHostIgnored 2026-10-22T08:24:00.611286922Z --- PASS: TestDetectRuntimeSocket_EmptyDockerHostIgnored (0.00s) 2026-10-22T08:24:00.61130108Z === RUN TestDetectRuntimeSocket_NonUnixDockerHostPassedThrough 2026-10-22T08:24:00.611311377Z --- PASS: TestDetectRuntimeSocket_NonUnixDockerHostPassedThrough (0.00s) 2026-10-22T08:24:00.611319903Z === RUN TestParseUnixSocketPath 2026-10-22T08:24:00.611336993Z === RUN TestParseUnixSocketPath/unix:///var/run/docker.sock 2026-10-22T08:24:00.611349605Z === RUN TestParseUnixSocketPath/unix:///run/podman/podman.sock 2026-10-22T08:24:00.611358894Z === RUN TestParseUnixSocketPath/tcp://localhost:2375 2026-10-22T08:24:00.611373772Z === RUN TestParseUnixSocketPath//var/run/docker.sock 2026-10-22T08:24:00.611383505Z --- PASS: TestParseUnixSocketPath (0.00s) 2026-10-22T08:24:00.611401002Z --- PASS: TestParseUnixSocketPath/unix:///var/run/docker.sock (0.00s) 2026-10-22T08:24:00.611421835Z --- PASS: TestParseUnixSocketPath/unix:///run/podman/podman.sock (0.00s) 2026-10-22T08:24:00.611439131Z --- PASS: TestParseUnixSocketPath/tcp://localhost:2375 (0.00s) 2026-10-22T08:24:00.611457832Z --- PASS: TestParseUnixSocketPath//var/run/docker.sock (0.00s) 2026-10-22T08:24:00.611466993Z === RUN TestNewRuntimeWithSocket_UsesExplicitHost 2026-10-22T08:24:00.611476369Z --- PASS: TestNewRuntimeWithSocket_UsesExplicitHost (0.00s) 2026-10-22T08:24:00.611500042Z === RUN TestRuntime_StreamContainerLogs_DemuxesTimestampedLines 2026-10-22T08:24:00.611512633Z --- PASS: TestRuntime_StreamContainerLogs_DemuxesTimestampedLines (0.00s) 2026-10-22T08:24:00.611522546Z === RUN TestRuntime_StreamContainerLogs_NotFound 2026-10-22T08:24:00.611537487Z --- PASS: TestRuntime_StreamContainerLogs_NotFound (0.00s) 2026-10-22T08:24:00.611544381Z === RUN TestReadBoundedLine_TruncatesOversizedLines 2026-10-22T08:24:00.611549861Z --- PASS: TestReadBoundedLine_TruncatesOversizedLines (0.00s) 2026-10-22T08:24:00.611555457Z === RUN TestParseTimestampedLine_KeepsBodyWithoutTimestamp 2026-10-22T08:24:00.611570352Z --- PASS: TestParseTimestampedLine_KeepsBodyWithoutTimestamp (0.00s) 2026-10-22T08:24:00.611577126Z === RUN TestParseTimestampedLine_SanitizesInvalidUTF8 2026-10-22T08:24:00.611599777Z --- PASS: TestParseTimestampedLine_SanitizesInvalidUTF8 (0.00s) 2026-10-22T08:24:00.611612881Z === RUN TestBuildNetworkProbeCommand 2026-10-22T08:24:00.611624238Z === RUN TestBuildNetworkProbeCommand/http_carries_path,_whole-second_timeout,_and_exact_endpoint 2026-10-22T08:24:00.611638642Z === RUN TestBuildNetworkProbeCommand/tcp_carries_no_path 2026-10-22T08:24:00.611645976Z === RUN TestBuildNetworkProbeCommand/nc_bound_stays_strictly_under_the_attempt_bound 2026-10-22T08:24:00.611652172Z === RUN TestBuildNetworkProbeCommand/timeout_is_clamped_into_the_bounded_window 2026-10-22T08:24:00.611657278Z --- PASS: TestBuildNetworkProbeCommand (0.00s) 2026-10-22T08:24:00.611676341Z --- PASS: TestBuildNetworkProbeCommand/http_carries_path,_whole-second_timeout,_and_exact_endpoint (0.00s) 2026-10-22T08:24:00.611693969Z --- PASS: TestBuildNetworkProbeCommand/tcp_carries_no_path (0.00s) 2026-10-22T08:24:00.611717935Z --- PASS: TestBuildNetworkProbeCommand/nc_bound_stays_strictly_under_the_attempt_bound (0.00s) 2026-10-22T08:24:00.611736366Z --- PASS: TestBuildNetworkProbeCommand/timeout_is_clamped_into_the_bounded_window (0.00s) 2026-10-22T08:24:00.611745751Z === RUN TestProbeHelperHostConfig_IsHardened 2026-10-22T08:24:00.6117515Z --- PASS: TestProbeHelperHostConfig_IsHardened (0.00s) 2026-10-22T08:24:00.611759753Z === RUN TestProbeHelperConfig_NoSharedNetworks 2026-10-22T08:24:00.611765569Z --- PASS: TestProbeHelperConfig_NoSharedNetworks (0.00s) 2026-10-22T08:24:00.611773401Z === RUN TestParseProbeStatus 2026-10-22T08:24:00.611781906Z --- PASS: TestParseProbeStatus (0.00s) 2026-10-22T08:24:00.611789883Z === RUN TestCappedProbeBuffer 2026-10-22T08:24:00.61179844Z --- PASS: TestCappedProbeBuffer (0.00s) 2026-10-22T08:24:00.61180701Z === RUN TestHTTPProbeScript_RequiresThreeDigitStatus 2026-10-22T08:24:00.611817557Z --- PASS: TestHTTPProbeScript_RequiresThreeDigitStatus (0.00s) 2026-10-22T08:24:00.611827669Z === RUN TestProbeCleanupResult_PriorErrorNeverHidesCleanupFailure 2026-10-22T08:24:00.611840029Z 2026-10-22T08:23:55Z WRN failed to remove network probe helper error="remove failed" 2026-10-22T08:24:00.611850757Z --- PASS: TestProbeCleanupResult_PriorErrorNeverHidesCleanupFailure (0.00s) 2026-10-22T08:24:00.611859681Z === RUN TestProbeBoundExpired_OnlySessionDeadline 2026-10-22T08:24:00.611869357Z --- PASS: TestProbeBoundExpired_OnlySessionDeadline (0.00s) 2026-10-22T08:24:00.61187834Z === RUN TestProbeTimeoutFailure_IsUnhealthyNotError 2026-10-22T08:24:00.611889815Z --- PASS: TestProbeTimeoutFailure_IsUnhealthyNotError (0.00s) 2026-10-22T08:24:00.611906927Z === RUN TestProbeDiagnostic 2026-10-22T08:24:00.61191717Z --- PASS: TestProbeDiagnostic (0.00s) 2026-10-22T08:24:00.611923028Z === RUN TestDefaultNetworkProbeImage_IsDigestPinned 2026-10-22T08:24:00.611935143Z --- PASS: TestDefaultNetworkProbeImage_IsDigestPinned (0.00s) 2026-10-22T08:24:00.61194857Z === RUN TestRuntime_GetContainerNetwork 2026-10-22T08:24:00.611958079Z --- PASS: TestRuntime_GetContainerNetwork (0.00s) 2026-10-22T08:24:00.611966873Z === RUN TestRuntime_GetContainerNetwork_Fallback 2026-10-22T08:24:00.611977455Z --- PASS: TestRuntime_GetContainerNetwork_Fallback (0.00s) 2026-10-22T08:24:00.611987436Z === RUN TestRuntime_GetContainerNetwork_EmptyNetworks 2026-10-22T08:24:00.611997145Z --- PASS: TestRuntime_GetContainerNetwork_EmptyNetworks (0.00s) 2026-10-22T08:24:00.61200652Z === RUN TestRuntime_GetContainerNetwork_NilNetworkSettings 2026-10-22T08:24:00.612016259Z --- PASS: TestRuntime_GetContainerNetwork_NilNetworkSettings (0.00s) 2026-10-22T08:24:00.612025656Z === RUN TestRuntime_GetContainerBackendBindsRejectsMalformedMappings 2026-10-22T08:24:00.612042776Z === RUN TestRuntime_GetContainerBackendBindsRejectsMalformedMappings/wildcard 2026-10-22T08:24:00.612055754Z === RUN TestRuntime_GetContainerBackendBindsRejectsMalformedMappings/non-loopback 2026-10-22T08:24:00.612065937Z === RUN TestRuntime_GetContainerBackendBindsRejectsMalformedMappings/empty_host_ip 2026-10-22T08:24:00.612085593Z === RUN TestRuntime_GetContainerBackendBindsRejectsMalformedMappings/multiple_bindings 2026-10-22T08:24:00.612098639Z === RUN TestRuntime_GetContainerBackendBindsRejectsMalformedMappings/invalid_host_port 2026-10-22T08:24:00.61212023Z --- PASS: TestRuntime_GetContainerBackendBindsRejectsMalformedMappings (0.01s) 2026-10-22T08:24:00.612170278Z --- PASS: TestRuntime_GetContainerBackendBindsRejectsMalformedMappings/wildcard (0.00s) 2026-10-22T08:24:00.612199968Z --- PASS: TestRuntime_GetContainerBackendBindsRejectsMalformedMappings/non-loopback (0.00s) 2026-10-22T08:24:00.612237411Z --- PASS: TestRuntime_GetContainerBackendBindsRejectsMalformedMappings/empty_host_ip (0.00s) 2026-10-22T08:24:00.612267838Z --- PASS: TestRuntime_GetContainerBackendBindsRejectsMalformedMappings/multiple_bindings (0.00s) 2026-10-22T08:24:00.61229244Z --- PASS: TestRuntime_GetContainerBackendBindsRejectsMalformedMappings/invalid_host_port (0.00s) 2026-10-22T08:24:00.612302779Z === RUN TestRuntime_GetContainerBackendBindsResolvesTCPAndUDPTogether 2026-10-22T08:24:00.612312798Z --- PASS: TestRuntime_GetContainerBackendBindsResolvesTCPAndUDPTogether (0.00s) 2026-10-22T08:24:00.612322495Z === RUN TestRuntime_GetContainerBackendBindsFailsWhenProtocolMissing 2026-10-22T08:24:00.612333578Z --- PASS: TestRuntime_GetContainerBackendBindsFailsWhenProtocolMissing (0.00s) 2026-10-22T08:24:00.61234591Z === RUN TestRuntime_CreateContainerPublishesExplicitUDPPort 2026-10-22T08:24:00.612357399Z --- PASS: TestRuntime_CreateContainerPublishesExplicitUDPPort (0.00s) 2026-10-22T08:24:00.612367676Z === RUN TestRuntime_CreateContainerKeepsLegacyPortsRandomLoopbackTCP 2026-10-22T08:24:00.612381891Z --- PASS: TestRuntime_CreateContainerKeepsLegacyPortsRandomLoopbackTCP (0.00s) 2026-10-22T08:24:00.612402178Z === RUN TestRuntime_CreateContainerAppliesRestartPolicy 2026-10-22T08:24:00.612413074Z --- PASS: TestRuntime_CreateContainerAppliesRestartPolicy (0.00s) 2026-10-22T08:24:00.612437092Z === RUN TestRuntime_CreateContainerMountsDeclaredReadOnlyVolumes 2026-10-22T08:24:00.612450173Z --- PASS: TestRuntime_CreateContainerMountsDeclaredReadOnlyVolumes (0.00s) 2026-10-22T08:24:00.612460069Z === RUN TestRuntime_CreateContainerAppliesNetworkAndResourceLimits 2026-10-22T08:24:00.612469413Z --- PASS: TestRuntime_CreateContainerAppliesNetworkAndResourceLimits (0.00s) 2026-10-22T08:24:00.612485088Z === RUN TestRuntime_CreateContainerTranslatesBindMounts 2026-10-22T08:24:00.612514562Z --- PASS: TestRuntime_CreateContainerTranslatesBindMounts (0.00s) 2026-10-22T08:24:00.612528227Z === RUN TestBuildBindMounts 2026-10-22T08:24:00.612538468Z === RUN TestBuildBindMounts/sorts_by_destination 2026-10-22T08:24:00.612552181Z === RUN TestBuildBindMounts/invalid_paths_rejected_without_echoing_source 2026-10-22T08:24:00.612567527Z === RUN TestBuildBindMounts/invalid_paths_rejected_without_echoing_source/relative_source 2026-10-22T08:24:00.612579981Z === RUN TestBuildBindMounts/invalid_paths_rejected_without_echoing_source/empty_source 2026-10-22T08:24:00.612589824Z === RUN TestBuildBindMounts/invalid_paths_rejected_without_echoing_source/unclean_source 2026-10-22T08:24:00.612608069Z === RUN TestBuildBindMounts/invalid_paths_rejected_without_echoing_source/relative_destination 2026-10-22T08:24:00.612621053Z === RUN TestBuildBindMounts/invalid_paths_rejected_without_echoing_source/sensitive_destination 2026-10-22T08:24:00.612633273Z === RUN TestBuildBindMounts/duplicate_destination_rejected 2026-10-22T08:24:00.612649458Z --- PASS: TestBuildBindMounts (0.00s) 2026-10-22T08:24:00.612667883Z --- PASS: TestBuildBindMounts/sorts_by_destination (0.00s) 2026-10-22T08:24:00.612687863Z --- PASS: TestBuildBindMounts/invalid_paths_rejected_without_echoing_source (0.00s) 2026-10-22T08:24:00.612733186Z --- PASS: TestBuildBindMounts/invalid_paths_rejected_without_echoing_source/relative_source (0.00s) 2026-10-22T08:24:00.612774886Z --- PASS: TestBuildBindMounts/invalid_paths_rejected_without_echoing_source/empty_source (0.00s) 2026-10-22T08:24:00.612814335Z --- PASS: TestBuildBindMounts/invalid_paths_rejected_without_echoing_source/unclean_source (0.00s) 2026-10-22T08:24:00.612858839Z --- PASS: TestBuildBindMounts/invalid_paths_rejected_without_echoing_source/relative_destination (0.00s) 2026-10-22T08:24:00.612898668Z --- PASS: TestBuildBindMounts/invalid_paths_rejected_without_echoing_source/sensitive_destination (0.00s) 2026-10-22T08:24:00.6129264Z --- PASS: TestBuildBindMounts/duplicate_destination_rejected (0.00s) 2026-10-22T08:24:00.612948123Z === RUN TestMergeAddedCapabilities 2026-10-22T08:24:00.612961479Z --- PASS: TestMergeAddedCapabilities (0.00s) 2026-10-22T08:24:00.6129717Z === RUN TestRuntime_CreateContainerAddsGrantedCapabilitiesOnTopOfDefaults 2026-10-22T08:24:00.612981863Z --- PASS: TestRuntime_CreateContainerAddsGrantedCapabilitiesOnTopOfDefaults (0.00s) 2026-10-22T08:24:00.612991498Z === RUN TestRuntime_CreateContainerWithoutGrantsKeepsDefaultCapabilities 2026-10-22T08:24:00.613014839Z --- PASS: TestRuntime_CreateContainerWithoutGrantsKeepsDefaultCapabilities (0.00s) 2026-10-22T08:24:00.613027534Z === RUN TestBuildDeviceRequests_EmptyIsNil 2026-10-22T08:24:00.61303704Z --- PASS: TestBuildDeviceRequests_EmptyIsNil (0.00s) 2026-10-22T08:24:00.613046793Z === RUN TestBuildDeviceRequests_OneNativeCDIRequest 2026-10-22T08:24:00.613055977Z --- PASS: TestBuildDeviceRequests_OneNativeCDIRequest (0.00s) 2026-10-22T08:24:00.613078109Z === RUN TestBuildDeviceRequests_DoesNotMutateConfig 2026-10-22T08:24:00.613094928Z --- PASS: TestBuildDeviceRequests_DoesNotMutateConfig (0.00s) 2026-10-22T08:24:00.61310419Z === RUN TestCheckCDISupportMatrix 2026-10-22T08:24:00.613114535Z === RUN TestCheckCDISupportMatrix/podman_6.1.1 2026-10-22T08:24:00.613138728Z === RUN TestCheckCDISupportMatrix/podman_5.4_exact 2026-10-22T08:24:00.613152031Z === RUN TestCheckCDISupportMatrix/podman_4.9_refused 2026-10-22T08:24:00.61317266Z === RUN TestCheckCDISupportMatrix/docker_28.3 2026-10-22T08:24:00.613184213Z === RUN TestCheckCDISupportMatrix/docker_27_refused 2026-10-22T08:24:00.613193178Z === RUN TestCheckCDISupportMatrix/unknown_engine_refused 2026-10-22T08:24:00.613204134Z === RUN TestCheckCDISupportMatrix/socket_hint_podman_accepted 2026-10-22T08:24:00.613210778Z === RUN TestCheckCDISupportMatrix/unparsable_version_refused 2026-10-22T08:24:00.613216508Z === RUN TestCheckCDISupportMatrix/prerelease_minor_refused 2026-10-22T08:24:00.613235889Z --- PASS: TestCheckCDISupportMatrix (0.00s) 2026-10-22T08:24:00.61326501Z --- PASS: TestCheckCDISupportMatrix/podman_6.1.1 (0.00s) 2026-10-22T08:24:00.613303686Z --- PASS: TestCheckCDISupportMatrix/podman_5.4_exact (0.00s) 2026-10-22T08:24:00.613329098Z --- PASS: TestCheckCDISupportMatrix/podman_4.9_refused (0.00s) 2026-10-22T08:24:00.61335272Z --- PASS: TestCheckCDISupportMatrix/docker_28.3 (0.00s) 2026-10-22T08:24:00.613375334Z --- PASS: TestCheckCDISupportMatrix/docker_27_refused (0.00s) 2026-10-22T08:24:00.613398247Z --- PASS: TestCheckCDISupportMatrix/unknown_engine_refused (0.00s) 2026-10-22T08:24:00.6134313Z --- PASS: TestCheckCDISupportMatrix/socket_hint_podman_accepted (0.00s) 2026-10-22T08:24:00.613455232Z --- PASS: TestCheckCDISupportMatrix/unparsable_version_refused (0.00s) 2026-10-22T08:24:00.613477862Z --- PASS: TestCheckCDISupportMatrix/prerelease_minor_refused (0.00s) 2026-10-22T08:24:00.613493568Z === RUN TestCompareEngineVersion 2026-10-22T08:24:00.613507901Z --- PASS: TestCompareEngineVersion (0.00s) 2026-10-22T08:24:00.613523897Z === RUN TestEngineProbeError 2026-10-22T08:24:00.613539626Z === RUN TestEngineProbeError/canceled_probe_keeps_the_sentinel_and_drops_the_endpoint 2026-10-22T08:24:00.613555178Z === RUN TestEngineProbeError/canceled_adapter_cause_is_preserved 2026-10-22T08:24:00.613571443Z === RUN TestEngineProbeError/other_probe_failures_stay_redacted 2026-10-22T08:24:00.613585472Z --- PASS: TestEngineProbeError (0.00s) 2026-10-22T08:24:00.613612105Z --- PASS: TestEngineProbeError/canceled_probe_keeps_the_sentinel_and_drops_the_endpoint (0.00s) 2026-10-22T08:24:00.613643653Z --- PASS: TestEngineProbeError/canceled_adapter_cause_is_preserved (0.00s) 2026-10-22T08:24:00.613667665Z --- PASS: TestEngineProbeError/other_probe_failures_stay_redacted (0.00s) 2026-10-22T08:24:00.613683465Z === RUN TestParseExecOutput_SplitsStdoutAndStderr 2026-10-22T08:24:00.613698193Z --- PASS: TestParseExecOutput_SplitsStdoutAndStderr (0.00s) 2026-10-22T08:24:00.613713075Z === RUN TestParseExecOutput_RejectsOversizedFrameBeforeReadingPayload 2026-10-22T08:24:00.613730007Z --- PASS: TestParseExecOutput_RejectsOversizedFrameBeforeReadingPayload (0.00s) 2026-10-22T08:24:00.613744695Z === RUN TestRuntime_ExecInContainer_RejectsEmptyCommand 2026-10-22T08:24:00.613758913Z === RUN TestRuntime_ExecInContainer_RejectsEmptyCommand/nil 2026-10-22T08:24:00.613775166Z === RUN TestRuntime_ExecInContainer_RejectsEmptyCommand/empty_slice 2026-10-22T08:24:00.613789867Z --- PASS: TestRuntime_ExecInContainer_RejectsEmptyCommand (0.00s) 2026-10-22T08:24:00.613814007Z --- PASS: TestRuntime_ExecInContainer_RejectsEmptyCommand/nil (0.00s) 2026-10-22T08:24:00.613837474Z --- PASS: TestRuntime_ExecInContainer_RejectsEmptyCommand/empty_slice (0.00s) 2026-10-22T08:24:00.613851783Z === RUN TestExtractFileFromTarMatchesFullCleanPath 2026-10-22T08:24:00.613867526Z --- PASS: TestExtractFileFromTarMatchesFullCleanPath (0.00s) 2026-10-22T08:24:00.613891059Z === RUN TestExtractFileFromTarMatchesBasenameForCopiedFile 2026-10-22T08:24:00.613909946Z --- PASS: TestExtractFileFromTarMatchesBasenameForCopiedFile (0.00s) 2026-10-22T08:24:00.613933888Z === RUN TestExtractFileFromTarPrefersExactPathOverBasename 2026-10-22T08:24:00.613951045Z --- PASS: TestExtractFileFromTarPrefersExactPathOverBasename (0.00s) 2026-10-22T08:24:00.613973429Z === RUN TestExtractFileFromTarRejectsAmbiguousBasenameFallback 2026-10-22T08:24:00.613989181Z --- PASS: TestExtractFileFromTarRejectsAmbiguousBasenameFallback (0.00s) 2026-10-22T08:24:00.614004174Z === RUN TestExtractFileFromTarDoesNotMatchBasenameInNestedDirectory 2026-10-22T08:24:00.614020357Z --- PASS: TestExtractFileFromTarDoesNotMatchBasenameInNestedDirectory (0.00s) 2026-10-22T08:24:00.614034335Z === RUN TestReadExtractedEnvFileRejectsOversizedContent 2026-10-22T08:24:00.61404842Z --- PASS: TestReadExtractedEnvFileRejectsOversizedContent (0.01s) 2026-10-22T08:24:00.614067782Z === RUN TestRuntime_GetContainerHealthStatus_ConfiguredHealthcheck 2026-10-22T08:24:00.614082966Z --- PASS: TestRuntime_GetContainerHealthStatus_ConfiguredHealthcheck (0.00s) 2026-10-22T08:24:00.614099353Z === RUN TestRuntime_GetContainerHealthStatus_NoConfiguredHealthcheckWithStateHealthObject 2026-10-22T08:24:00.614114268Z --- PASS: TestRuntime_GetContainerHealthStatus_NoConfiguredHealthcheckWithStateHealthObject (0.00s) 2026-10-22T08:24:00.61413287Z === RUN TestRuntime_GetContainerHealthStatus_DisabledHealthcheck 2026-10-22T08:24:00.6141493Z --- PASS: TestRuntime_GetContainerHealthStatus_DisabledHealthcheck (0.00s) 2026-10-22T08:24:00.61416322Z === RUN TestRuntime_InspectContainer_ReportsConfiguredCapAdd 2026-10-22T08:24:00.614177806Z --- PASS: TestRuntime_InspectContainer_ReportsConfiguredCapAdd (0.00s) 2026-10-22T08:24:00.614197103Z === RUN Test_sortPortsHTTPFirst 2026-10-22T08:24:00.614208293Z === RUN Test_sortPortsHTTPFirst/single_port_unchanged 2026-10-22T08:24:00.614221806Z === RUN Test_sortPortsHTTPFirst/SSH_port_pushed_to_end 2026-10-22T08:24:00.614238069Z === RUN Test_sortPortsHTTPFirst/HTTP_ports_sorted_by_priority 2026-10-22T08:24:00.614252784Z === RUN Test_sortPortsHTTPFirst/SSH_pushed_behind_non-priority_ports 2026-10-22T08:24:00.614267358Z === RUN Test_sortPortsHTTPFirst/mixed_priority_and_non-priority_ports 2026-10-22T08:24:00.614283419Z === RUN Test_sortPortsHTTPFirst/all_non-priority_ports_sorted_ascending 2026-10-22T08:24:00.614297401Z === RUN Test_sortPortsHTTPFirst/empty_slice_is_no-op 2026-10-22T08:24:00.614311713Z === RUN Test_sortPortsHTTPFirst/gitea-style_multi-port_image 2026-10-22T08:24:00.614326745Z --- PASS: Test_sortPortsHTTPFirst (0.00s) 2026-10-22T08:24:00.614348784Z --- PASS: Test_sortPortsHTTPFirst/single_port_unchanged (0.00s) 2026-10-22T08:24:00.614372671Z --- PASS: Test_sortPortsHTTPFirst/SSH_port_pushed_to_end (0.00s) 2026-10-22T08:24:00.614395787Z --- PASS: Test_sortPortsHTTPFirst/HTTP_ports_sorted_by_priority (0.00s) 2026-10-22T08:24:00.614419672Z --- PASS: Test_sortPortsHTTPFirst/SSH_pushed_behind_non-priority_ports (0.00s) 2026-10-22T08:24:00.614445603Z --- PASS: Test_sortPortsHTTPFirst/mixed_priority_and_non-priority_ports (0.00s) 2026-10-22T08:24:00.614469831Z --- PASS: Test_sortPortsHTTPFirst/all_non-priority_ports_sorted_ascending (0.00s) 2026-10-22T08:24:00.614491763Z --- PASS: Test_sortPortsHTTPFirst/empty_slice_is_no-op (0.00s) 2026-10-22T08:24:00.614538017Z --- PASS: Test_sortPortsHTTPFirst/gitea-style_multi-port_image (0.00s) 2026-10-22T08:24:00.614558889Z === RUN TestRuntime_InventoryRuntime 2026-10-22T08:24:00.61457332Z --- PASS: TestRuntime_InventoryRuntime (0.00s) 2026-10-22T08:24:00.614589429Z === RUN TestRuntime_InventoryRuntimeReportsGapsNotAbsence 2026-10-22T08:24:00.614605137Z --- PASS: TestRuntime_InventoryRuntimeReportsGapsNotAbsence (0.00s) 2026-10-22T08:24:00.614619721Z === RUN TestRuntime_InventoryRuntimeContainerListFailureProtectsImages 2026-10-22T08:24:00.614635964Z --- PASS: TestRuntime_InventoryRuntimeContainerListFailureProtectsImages (0.00s) 2026-10-22T08:24:00.614662609Z === RUN TestRuntime_RemoveImageExactUsesExactIdentityWithoutForce 2026-10-22T08:24:00.614679133Z --- PASS: TestRuntime_RemoveImageExactUsesExactIdentityWithoutForce (0.00s) 2026-10-22T08:24:00.614690295Z === RUN TestRuntime_RemoveVolumeExactUsesExactIdentityWithoutForce 2026-10-22T08:24:00.614700243Z --- PASS: TestRuntime_RemoveVolumeExactUsesExactIdentityWithoutForce (0.00s) 2026-10-22T08:24:00.614709721Z === RUN TestRuntime_ExactRemovalRejectsInvalidIdentity 2026-10-22T08:24:00.614725101Z --- PASS: TestRuntime_ExactRemovalRejectsInvalidIdentity (0.00s) 2026-10-22T08:24:00.614741575Z === RUN TestRuntime_ExactRemovalPropagatesRuntimeErrors 2026-10-22T08:24:00.614756275Z --- PASS: TestRuntime_ExactRemovalPropagatesRuntimeErrors (0.00s) 2026-10-22T08:24:00.614768977Z === RUN TestRuntime_InspectContainerReportsNotFoundSentinel 2026-10-22T08:24:00.6147855Z --- PASS: TestRuntime_InspectContainerReportsNotFoundSentinel (0.00s) 2026-10-22T08:24:00.614799465Z === RUN TestRuntime_InspectContainerPreservesTransientErrors 2026-10-22T08:24:00.614813705Z --- PASS: TestRuntime_InspectContainerPreservesTransientErrors (0.00s) 2026-10-22T08:24:00.614835835Z === RUN TestRuntime_InspectContainerNormalizesStatusAndExecutionStart 2026-10-22T08:24:00.614851045Z === RUN TestRuntime_InspectContainerNormalizesStatusAndExecutionStart/running 2026-10-22T08:24:00.614866004Z === RUN TestRuntime_InspectContainerNormalizesStatusAndExecutionStart/exited 2026-10-22T08:24:00.614887076Z === RUN TestRuntime_InspectContainerNormalizesStatusAndExecutionStart/restarting 2026-10-22T08:24:00.614901946Z === RUN TestRuntime_InspectContainerNormalizesStatusAndExecutionStart/paused 2026-10-22T08:24:00.6149182Z === RUN TestRuntime_InspectContainerNormalizesStatusAndExecutionStart/created 2026-10-22T08:24:00.614932871Z --- PASS: TestRuntime_InspectContainerNormalizesStatusAndExecutionStart (0.00s) 2026-10-22T08:24:00.614958471Z --- PASS: TestRuntime_InspectContainerNormalizesStatusAndExecutionStart/running (0.00s) 2026-10-22T08:24:00.614984818Z --- PASS: TestRuntime_InspectContainerNormalizesStatusAndExecutionStart/exited (0.00s) 2026-10-22T08:24:00.615010036Z --- PASS: TestRuntime_InspectContainerNormalizesStatusAndExecutionStart/restarting (0.00s) 2026-10-22T08:24:00.615048566Z --- PASS: TestRuntime_InspectContainerNormalizesStatusAndExecutionStart/paused (0.00s) 2026-10-22T08:24:00.615088532Z --- PASS: TestRuntime_InspectContainerNormalizesStatusAndExecutionStart/created (0.00s) 2026-10-22T08:24:00.615106045Z === RUN TestRuntime_StartContainerReportsNotFoundSentinel 2026-10-22T08:24:00.615122811Z --- PASS: TestRuntime_StartContainerReportsNotFoundSentinel (0.00s) 2026-10-22T08:24:00.615137053Z === RUN TestRuntime_GetContainerLogsSinceScopesTheRequest 2026-10-22T08:24:00.615149318Z --- PASS: TestRuntime_GetContainerLogsSinceScopesTheRequest (0.00s) 2026-10-22T08:24:00.615168576Z === RUN TestRuntime_GetContainerLogsSinceReportsNotFoundSentinel 2026-10-22T08:24:00.615183108Z --- PASS: TestRuntime_GetContainerLogsSinceReportsNotFoundSentinel (0.00s) 2026-10-22T08:24:00.615198299Z === RUN TestRuntime_InspectImageEnv_RedactsValuesInDebugLog 2026-10-22T08:24:00.61521408Z --- PASS: TestRuntime_InspectImageEnv_RedactsValuesInDebugLog (0.00s) 2026-10-22T08:24:00.615228462Z === RUN TestWaitForVolumeArchiveContainerIgnoresNilErrorBeforeStatus 2026-10-22T08:24:00.615244154Z --- PASS: TestWaitForVolumeArchiveContainerIgnoresNilErrorBeforeStatus (0.00s) 2026-10-22T08:24:00.615261102Z === RUN TestWaitForVolumeArchiveContainerHandlesClosedErrorChannelBeforeStatus 2026-10-22T08:24:00.61527627Z --- PASS: TestWaitForVolumeArchiveContainerHandlesClosedErrorChannelBeforeStatus (0.00s) 2026-10-22T08:24:00.615292355Z === RUN TestWaitForVolumeArchiveContainerReturnsErrorChannelError 2026-10-22T08:24:00.615307917Z --- PASS: TestWaitForVolumeArchiveContainerReturnsErrorChannelError (0.00s) 2026-10-22T08:24:00.615395901Z === RUN TestWaitForVolumeArchiveContainerErrorsWhenStatusChannelCloses 2026-10-22T08:24:00.615415733Z --- PASS: TestWaitForVolumeArchiveContainerErrorsWhenStatusChannelCloses (0.00s) 2026-10-22T08:24:00.615435349Z === RUN TestStopTimeout_ConvertsGraceToAPISeconds 2026-10-22T08:24:00.615448379Z === RUN TestStopTimeout_ConvertsGraceToAPISeconds/zero_keeps_the_runtime_default 2026-10-22T08:24:00.615460845Z === RUN TestStopTimeout_ConvertsGraceToAPISeconds/negative_keeps_the_runtime_default 2026-10-22T08:24:00.615472116Z === RUN TestStopTimeout_ConvertsGraceToAPISeconds/default_app_grace 2026-10-22T08:24:00.615483763Z === RUN TestStopTimeout_ConvertsGraceToAPISeconds/sub-second_rounds_up 2026-10-22T08:24:00.615495746Z === RUN TestStopTimeout_ConvertsGraceToAPISeconds/fractional_rounds_up 2026-10-22T08:24:00.615511278Z === RUN TestStopTimeout_ConvertsGraceToAPISeconds/exact_seconds_are_preserved 2026-10-22T08:24:00.615523312Z === RUN TestStopTimeout_ConvertsGraceToAPISeconds/the_app_cap_is_preserved 2026-10-22T08:24:00.615533372Z --- PASS: TestStopTimeout_ConvertsGraceToAPISeconds (0.00s) 2026-10-22T08:24:00.615572531Z --- PASS: TestStopTimeout_ConvertsGraceToAPISeconds/zero_keeps_the_runtime_default (0.00s) 2026-10-22T08:24:00.615622189Z --- PASS: TestStopTimeout_ConvertsGraceToAPISeconds/negative_keeps_the_runtime_default (0.00s) 2026-10-22T08:24:00.615646533Z --- PASS: TestStopTimeout_ConvertsGraceToAPISeconds/default_app_grace (0.00s) 2026-10-22T08:24:00.615684197Z --- PASS: TestStopTimeout_ConvertsGraceToAPISeconds/sub-second_rounds_up (0.00s) 2026-10-22T08:24:00.615716226Z --- PASS: TestStopTimeout_ConvertsGraceToAPISeconds/fractional_rounds_up (0.00s) 2026-10-22T08:24:00.615756198Z --- PASS: TestStopTimeout_ConvertsGraceToAPISeconds/exact_seconds_are_preserved (0.00s) 2026-10-22T08:24:00.615793897Z --- PASS: TestStopTimeout_ConvertsGraceToAPISeconds/the_app_cap_is_preserved (0.00s) 2026-10-22T08:24:00.615803279Z PASS 2026-10-22T08:24:00.615809834Z ok github.com/bnema/gordon/internal/adapters/out/docker 1.108s 2026-10-22T08:24:00.615815739Z ? github.com/bnema/gordon/internal/adapters/out/eventbus [no test files] 2026-10-22T08:24:00.615820876Z === RUN TestBackupStorage_StoreAndGet 2026-10-22T08:24:00.615826005Z --- PASS: TestBackupStorage_StoreAndGet (0.00s) 2026-10-22T08:24:00.615831575Z === RUN TestBackupStorage_StoreSameSecondBackupsUseDistinctFinalAndTempPaths 2026-10-22T08:24:00.615837599Z --- PASS: TestBackupStorage_StoreSameSecondBackupsUseDistinctFinalAndTempPaths (0.00s) 2026-10-22T08:24:00.615844638Z === RUN TestBackupStorage_PreservesCanonicalIdentityAndSeparatesSameNamedDatabases 2026-10-22T08:24:00.615852076Z --- PASS: TestBackupStorage_PreservesCanonicalIdentityAndSeparatesSameNamedDatabases (0.00s) 2026-10-22T08:24:00.615860538Z === RUN TestBackupStorage_DoesNotMergePreCutoverRecords 2026-10-22T08:24:00.61586945Z --- PASS: TestBackupStorage_DoesNotMergePreCutoverRecords (0.00s) 2026-10-22T08:24:00.615875194Z === RUN TestBackupStorage_ListWithScheduleFilter 2026-10-22T08:24:00.615880641Z --- PASS: TestBackupStorage_ListWithScheduleFilter (0.00s) 2026-10-22T08:24:00.615885163Z === RUN TestBackupStorage_Delete 2026-10-22T08:24:00.615890159Z --- PASS: TestBackupStorage_Delete (0.00s) 2026-10-22T08:24:00.615894866Z === RUN TestBackupStorage_ApplyRetention 2026-10-22T08:24:00.615899555Z --- PASS: TestBackupStorage_ApplyRetention (0.00s) 2026-10-22T08:24:00.615904809Z === RUN TestBackupStorage_StoreSanitizesDotOnlyPathComponents 2026-10-22T08:24:00.615910677Z --- PASS: TestBackupStorage_StoreSanitizesDotOnlyPathComponents (0.00s) 2026-10-22T08:24:00.615916214Z === RUN TestBackupStorage_StoreSanitizesSchedulePathComponent 2026-10-22T08:24:00.615922343Z --- PASS: TestBackupStorage_StoreSanitizesSchedulePathComponent (0.00s) 2026-10-22T08:24:00.615927687Z === RUN TestBlobStorage_CleanupStaleUploads_RemovesOldFiles 2026-10-22T08:24:00.615938147Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_CleanupStaleUploads_RemovesOldFiles1169463292/001 2026-10-22T08:24:00.615949285Z 2026-10-22T08:23:56Z INF removed stale upload adapter=filesystem layer=adapter size=1024 uuid=stale-uuid-1234 2026-10-22T08:24:00.615955934Z --- PASS: TestBlobStorage_CleanupStaleUploads_RemovesOldFiles (0.00s) 2026-10-22T08:24:00.615961186Z === RUN TestBlobStorage_CleanupStaleUploads_PreservesRecentFiles 2026-10-22T08:24:00.615970895Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_CleanupStaleUploads_PreservesRecentFiles3221381154/001 2026-10-22T08:24:00.615977597Z --- PASS: TestBlobStorage_CleanupStaleUploads_PreservesRecentFiles (0.00s) 2026-10-22T08:24:00.615982748Z === RUN TestBlobStorage_CleanupStaleUploads_EmptyUploadsDir 2026-10-22T08:24:00.615992527Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_CleanupStaleUploads_EmptyUploadsDir1204262072/001 2026-10-22T08:24:00.615998693Z --- PASS: TestBlobStorage_CleanupStaleUploads_EmptyUploadsDir (0.00s) 2026-10-22T08:24:00.616003609Z === RUN TestBlobStorage_CleanupStaleUploads_MixedAges 2026-10-22T08:24:00.616013244Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_CleanupStaleUploads_MixedAges1810035615/001 2026-10-22T08:24:00.61602235Z 2026-10-22T08:23:56Z INF removed stale upload adapter=filesystem layer=adapter size=2048 uuid=stale-uuid 2026-10-22T08:24:00.61602845Z --- PASS: TestBlobStorage_CleanupStaleUploads_MixedAges (0.00s) 2026-10-22T08:24:00.616032958Z === RUN TestNewBlobStorage 2026-10-22T08:24:00.616042432Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestNewBlobStorage253012530/001 2026-10-22T08:24:00.616047756Z --- PASS: TestNewBlobStorage (0.00s) 2026-10-22T08:24:00.616052247Z === RUN TestNewBlobStorage_InvalidPath 2026-10-22T08:24:00.616057023Z --- PASS: TestNewBlobStorage_InvalidPath (0.00s) 2026-10-22T08:24:00.616062031Z === RUN TestBlobStorage_PutAndGetBlob 2026-10-22T08:24:00.616071033Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_PutAndGetBlob3073290834/001 2026-10-22T08:24:00.616081666Z 2026-10-22T08:23:56Z INF blob stored adapter=filesystem digest=sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 layer=adapter size_bytes=17 2026-10-22T08:24:00.616088241Z --- PASS: TestBlobStorage_PutAndGetBlob (0.00s) 2026-10-22T08:24:00.616092767Z === RUN TestBlobStorage_GetBlob_NotFound 2026-10-22T08:24:00.616101661Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_GetBlob_NotFound939962819/001 2026-10-22T08:24:00.616107405Z --- PASS: TestBlobStorage_GetBlob_NotFound (0.00s) 2026-10-22T08:24:00.61611195Z === RUN TestBlobStorage_GetBlobPath 2026-10-22T08:24:00.616120634Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_GetBlobPath3105171576/001 2026-10-22T08:24:00.616131164Z 2026-10-22T08:23:56Z INF blob stored adapter=filesystem digest=sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 layer=adapter size_bytes=17 2026-10-22T08:24:00.616136948Z --- PASS: TestBlobStorage_GetBlobPath (0.00s) 2026-10-22T08:24:00.616142054Z === RUN TestBlobStorage_GetBlobPath_NotFound 2026-10-22T08:24:00.616151183Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_GetBlobPath_NotFound394836739/001 2026-10-22T08:24:00.616156952Z --- PASS: TestBlobStorage_GetBlobPath_NotFound (0.00s) 2026-10-22T08:24:00.616161613Z === RUN TestBlobStorage_PutBlob_SizeMismatch 2026-10-22T08:24:00.616171437Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_PutBlob_SizeMismatch4114999355/001 2026-10-22T08:24:00.616177697Z --- PASS: TestBlobStorage_PutBlob_SizeMismatch (0.00s) 2026-10-22T08:24:00.616182348Z === RUN TestBlobStorage_PutBlob_ZeroSize 2026-10-22T08:24:00.616191355Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_PutBlob_ZeroSize3913759062/001 2026-10-22T08:24:00.616201762Z 2026-10-22T08:23:56Z INF blob stored adapter=filesystem digest=sha256:b3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d5 layer=adapter size_bytes=17 2026-10-22T08:24:00.61620751Z --- PASS: TestBlobStorage_PutBlob_ZeroSize (0.00s) 2026-10-22T08:24:00.616211932Z === RUN TestBlobStorage_DeleteBlob 2026-10-22T08:24:00.616221068Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_DeleteBlob1329402853/001 2026-10-22T08:24:00.616231527Z 2026-10-22T08:23:56Z INF blob stored adapter=filesystem digest=sha256:b3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d5 layer=adapter size_bytes=17 2026-10-22T08:24:00.61624272Z 2026-10-22T08:23:56Z INF blob deleted adapter=filesystem digest=sha256:b3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d5 layer=adapter size_bytes=17 2026-10-22T08:24:00.616248461Z --- PASS: TestBlobStorage_DeleteBlob (0.00s) 2026-10-22T08:24:00.61625313Z === RUN TestBlobStorage_DeleteBlob_NotFound 2026-10-22T08:24:00.61626212Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_DeleteBlob_NotFound3182534200/001 2026-10-22T08:24:00.616267656Z --- PASS: TestBlobStorage_DeleteBlob_NotFound (0.00s) 2026-10-22T08:24:00.61627202Z === RUN TestBlobStorage_BlobExists 2026-10-22T08:24:00.616280719Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_BlobExists3838992741/001 2026-10-22T08:24:00.616291065Z 2026-10-22T08:23:56Z INF blob stored adapter=filesystem digest=sha256:b3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d5 layer=adapter size_bytes=17 2026-10-22T08:24:00.616296553Z --- PASS: TestBlobStorage_BlobExists (0.00s) 2026-10-22T08:24:00.616301148Z === RUN TestBlobStorage_ListBlobs 2026-10-22T08:24:00.616310772Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_ListBlobs3815818051/001 2026-10-22T08:24:00.616324874Z 2026-10-22T08:23:56Z INF blob stored adapter=filesystem digest=sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 layer=adapter size_bytes=17 2026-10-22T08:24:00.616339911Z 2026-10-22T08:23:56Z INF blob stored adapter=filesystem digest=sha256:b3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d5 layer=adapter size_bytes=17 2026-10-22T08:24:00.616346195Z --- PASS: TestBlobStorage_ListBlobs (0.00s) 2026-10-22T08:24:00.616350789Z === RUN TestBlobStorage_ListBlobs_Empty 2026-10-22T08:24:00.616359798Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_ListBlobs_Empty949215507/001 2026-10-22T08:24:00.616365351Z --- PASS: TestBlobStorage_ListBlobs_Empty (0.00s) 2026-10-22T08:24:00.616369892Z === RUN TestBlobStorage_StartBlobUpload 2026-10-22T08:24:00.616379498Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_StartBlobUpload2157185594/001 2026-10-22T08:24:00.616389032Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=446cbe7b-56eb-4ae3-9d39-c3ff245c3473 2026-10-22T08:24:00.616395125Z --- PASS: TestBlobStorage_StartBlobUpload (0.00s) 2026-10-22T08:24:00.616399709Z === RUN TestBlobStorage_AppendBlobChunk 2026-10-22T08:24:00.616409424Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_AppendBlobChunk2184606715/001 2026-10-22T08:24:00.616418821Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=7cb18512-48fc-4495-8865-b666a1c9fd6e 2026-10-22T08:24:00.616424327Z --- PASS: TestBlobStorage_AppendBlobChunk (0.00s) 2026-10-22T08:24:00.616429111Z === RUN TestBlobStorage_AppendBlobChunk_NotFound 2026-10-22T08:24:00.616438402Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_AppendBlobChunk_NotFound3825893072/001 2026-10-22T08:24:00.616445495Z --- PASS: TestBlobStorage_AppendBlobChunk_NotFound (0.00s) 2026-10-22T08:24:00.616450453Z === RUN TestBlobStorage_AppendBlobChunk_MaxBlobSize 2026-10-22T08:24:00.616459673Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_AppendBlobChunk_MaxBlobSize2254218516/001 2026-10-22T08:24:00.616469331Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=77397e7e-0268-4059-af4e-2ce8aa6587a8 2026-10-22T08:24:00.616476439Z --- PASS: TestBlobStorage_AppendBlobChunk_MaxBlobSize (0.00s) 2026-10-22T08:24:00.616483173Z === RUN TestBlobStorage_AppendBlobChunk_MaxBlobSizeContentLengthTooLargeDoesNotRead 2026-10-22T08:24:00.616493627Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_AppendBlobChunk_MaxBlobSizeContentLengthTooLarge4082353754/001 2026-10-22T08:24:00.616503579Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=a39eaeb4-abc2-47bb-8b82-6e99c22e33e2 2026-10-22T08:24:00.616510155Z --- PASS: TestBlobStorage_AppendBlobChunk_MaxBlobSizeContentLengthTooLargeDoesNotRead (0.00s) 2026-10-22T08:24:00.616516056Z === RUN TestBlobStorage_AppendBlobChunk_MaxBlobSizeOverflowMidReadTruncates 2026-10-22T08:24:00.616526317Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_AppendBlobChunk_MaxBlobSizeOverflowMidReadTrunca316578184/001 2026-10-22T08:24:00.616535663Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=0da6c358-b81c-42c2-bd19-d54b2648e7b7 2026-10-22T08:24:00.616541824Z --- PASS: TestBlobStorage_AppendBlobChunk_MaxBlobSizeOverflowMidReadTruncates (0.00s) 2026-10-22T08:24:00.616546464Z === RUN TestBlobStorage_GetBlobUpload 2026-10-22T08:24:00.616555372Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_GetBlobUpload2998001977/001 2026-10-22T08:24:00.616569489Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=b1d52727-bc92-4399-8564-a4991e3093d8 2026-10-22T08:24:00.616575671Z --- PASS: TestBlobStorage_GetBlobUpload (0.00s) 2026-10-22T08:24:00.616580587Z === RUN TestBlobStorage_GetBlobUpload_NotFound 2026-10-22T08:24:00.616589757Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_GetBlobUpload_NotFound2580924057/001 2026-10-22T08:24:00.616595521Z --- PASS: TestBlobStorage_GetBlobUpload_NotFound (0.00s) 2026-10-22T08:24:00.616600042Z === RUN TestBlobStorage_FinishBlobUpload 2026-10-22T08:24:00.616608988Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_FinishBlobUpload132812385/001 2026-10-22T08:24:00.616618332Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=cb1ed31e-210b-46f7-b976-bcd3821315cf 2026-10-22T08:24:00.616623616Z --- PASS: TestBlobStorage_FinishBlobUpload (0.00s) 2026-10-22T08:24:00.616628313Z === RUN TestBlobStorage_CancelBlobUpload 2026-10-22T08:24:00.616637259Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_CancelBlobUpload2521052866/001 2026-10-22T08:24:00.616647059Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=8e66a23b-0822-4b1e-b5ba-bbccc764ba7b 2026-10-22T08:24:00.616656399Z 2026-10-22T08:23:56Z INF blob upload cancelled adapter=filesystem layer=adapter name=myapp uuid=8e66a23b-0822-4b1e-b5ba-bbccc764ba7b 2026-10-22T08:24:00.616661871Z --- PASS: TestBlobStorage_CancelBlobUpload (0.00s) 2026-10-22T08:24:00.616666698Z === RUN TestBlobStorage_CancelBlobUpload_NotFound 2026-10-22T08:24:00.616676497Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_CancelBlobUpload_NotFound3909342215/001 2026-10-22T08:24:00.616682643Z --- PASS: TestBlobStorage_CancelBlobUpload_NotFound (0.00s) 2026-10-22T08:24:00.616687255Z === RUN TestBlobStorage_BlobPathStructure 2026-10-22T08:24:00.616696426Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_BlobPathStructure742708555/001 2026-10-22T08:24:00.616706465Z 2026-10-22T08:23:56Z INF blob stored adapter=filesystem digest=sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 layer=adapter size_bytes=17 2026-10-22T08:24:00.616712854Z --- PASS: TestBlobStorage_BlobPathStructure (0.00s) 2026-10-22T08:24:00.616717583Z === RUN TestBlobStorage_DigestFormats 2026-10-22T08:24:00.616726932Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_DigestFormats3181560821/001 2026-10-22T08:24:00.616732608Z === RUN TestBlobStorage_DigestFormats/sha256_standard 2026-10-22T08:24:00.616742513Z 2026-10-22T08:23:56Z INF blob stored adapter=filesystem digest=sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 layer=adapter size_bytes=88 2026-10-22T08:24:00.616748313Z === RUN TestBlobStorage_DigestFormats/sha512 2026-10-22T08:24:00.616760851Z 2026-10-22T08:23:56Z INF blob stored adapter=filesystem digest=sha512:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 layer=adapter size_bytes=152 2026-10-22T08:24:00.616767951Z --- PASS: TestBlobStorage_DigestFormats (0.00s) 2026-10-22T08:24:00.616780585Z --- PASS: TestBlobStorage_DigestFormats/sha256_standard (0.00s) 2026-10-22T08:24:00.616792088Z --- PASS: TestBlobStorage_DigestFormats/sha512 (0.00s) 2026-10-22T08:24:00.616797485Z === RUN TestBlobStorage_CompleteUploadFlow 2026-10-22T08:24:00.616806515Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_CompleteUploadFlow3098151535/001 2026-10-22T08:24:00.616816159Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myorg/myapp uuid=140d30d6-0d01-4ee5-9e5d-e5a31525e7e1 2026-10-22T08:24:00.616826651Z 2026-10-22T08:23:56Z INF blob upload cancelled adapter=filesystem layer=adapter name=myorg/myapp uuid=140d30d6-0d01-4ee5-9e5d-e5a31525e7e1 2026-10-22T08:24:00.616833105Z --- PASS: TestBlobStorage_CompleteUploadFlow (0.00s) 2026-10-22T08:24:00.616838051Z === RUN TestBlobStorage_ConcurrentAppendAndFinalize 2026-10-22T08:24:00.616847303Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_ConcurrentAppendAndFinalize2139033938/001 2026-10-22T08:24:00.616858755Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=20ea04a6-ed7d-4672-a2fc-33a8ab4a754b 2026-10-22T08:24:00.616871431Z 2026-10-22T08:23:56Z INF blob upload finished adapter=filesystem digest=sha256:e28df5bd6963a61ee101b65a7bb927154720ff11bb96e66fac684a61c8265b65 layer=adapter name=myapp uuid=20ea04a6-ed7d-4672-a2fc-33a8ab4a754b 2026-10-22T08:24:00.616878778Z --- PASS: TestBlobStorage_ConcurrentAppendAndFinalize (0.00s) 2026-10-22T08:24:00.616883571Z === RUN TestBlobStorage_AppendAfterFinalize 2026-10-22T08:24:00.616893283Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_AppendAfterFinalize2858428988/001 2026-10-22T08:24:00.616902798Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=4ecd363c-fbea-49f3-852d-c0de876a3489 2026-10-22T08:24:00.616914888Z 2026-10-22T08:23:56Z INF blob upload finished adapter=filesystem digest=sha256:230d6ef6dba6e66b584ea80ab7f70d5654e1149930c6f555b4d40ce0df212677 layer=adapter name=myapp uuid=4ecd363c-fbea-49f3-852d-c0de876a3489 2026-10-22T08:24:00.616921754Z --- PASS: TestBlobStorage_AppendAfterFinalize (0.00s) 2026-10-22T08:24:00.616928602Z === RUN TestBlobStorage_FinishBlobUploadMarksBlobAsRecentlyFinalized 2026-10-22T08:24:00.616938708Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_FinishBlobUploadMarksBlobAsRecentlyFinalized2265458089/001 2026-10-22T08:24:00.616948439Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=fd2e4318-6cb4-4a38-9804-ee55ec3ce689 2026-10-22T08:24:00.6169605Z 2026-10-22T08:23:56Z INF blob upload finished adapter=filesystem digest=sha256:230d6ef6dba6e66b584ea80ab7f70d5654e1149930c6f555b4d40ce0df212677 layer=adapter name=myapp uuid=fd2e4318-6cb4-4a38-9804-ee55ec3ce689 2026-10-22T08:24:00.616967466Z --- PASS: TestBlobStorage_FinishBlobUploadMarksBlobAsRecentlyFinalized (0.00s) 2026-10-22T08:24:00.616972527Z === RUN TestBlobStorage_FailedFinalizeRetryable 2026-10-22T08:24:00.61698178Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_FailedFinalizeRetryable1455439861/001 2026-10-22T08:24:00.616991609Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=d4f8477e-98d2-4d40-a1dd-f1fe465e70a2 2026-10-22T08:24:00.61700815Z 2026-10-22T08:23:56Z INF blob upload finished adapter=filesystem digest=sha256:23eba1d161026739b83ff8de576b8fe41a81239c4f759d2e870143568b95b074 layer=adapter name=myapp uuid=d4f8477e-98d2-4d40-a1dd-f1fe465e70a2 2026-10-22T08:24:00.617015387Z --- PASS: TestBlobStorage_FailedFinalizeRetryable (0.00s) 2026-10-22T08:24:00.617020498Z === RUN TestBlobStorage_SequentialFlow 2026-10-22T08:24:00.617029572Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_SequentialFlow2446689598/001 2026-10-22T08:24:00.617038963Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=4c9408f3-062b-429a-9702-bfba661bda7d 2026-10-22T08:24:00.617050748Z 2026-10-22T08:23:56Z INF blob upload finished adapter=filesystem digest=sha256:26ec65d7941970f710a75fe966c09fdef470067ef7072951beae88e4f36d6e1c layer=adapter name=myapp uuid=4c9408f3-062b-429a-9702-bfba661bda7d 2026-10-22T08:24:00.617057054Z --- PASS: TestBlobStorage_SequentialFlow (0.00s) 2026-10-22T08:24:00.617061949Z === RUN TestBlobStorage_UploadBoundToRepository 2026-10-22T08:24:00.617071199Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_UploadBoundToRepository3108333385/001 2026-10-22T08:24:00.617080633Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=owner uuid=097c41db-c944-4b2d-b159-a06115e2d776 2026-10-22T08:24:00.617093084Z 2026-10-22T08:23:56Z INF blob upload finished adapter=filesystem digest=sha256:f57e412226282015394463a91a090cdb7508e746819cb38979d22fa98592f574 layer=adapter name=owner uuid=097c41db-c944-4b2d-b159-a06115e2d776 2026-10-22T08:24:00.617099571Z --- PASS: TestBlobStorage_UploadBoundToRepository (0.00s) 2026-10-22T08:24:00.617104788Z === RUN TestBlobStorage_BlobOwnershipPersistsAcrossRestart 2026-10-22T08:24:00.617115038Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_BlobOwnershipPersistsAcrossRestart161875223/001 2026-10-22T08:24:00.617124818Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=03206fdc-678a-48bb-bb27-bcfeb08a8b02 2026-10-22T08:24:00.617136567Z 2026-10-22T08:23:56Z INF blob upload finished adapter=filesystem digest=sha256:371ff2b882c995407dfcbb34cb71c4bbc2427dc1ecd7bb25e7fdb9a312102d98 layer=adapter name=myapp uuid=03206fdc-678a-48bb-bb27-bcfeb08a8b02 2026-10-22T08:24:00.617147357Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_BlobOwnershipPersistsAcrossRestart161875223/001 2026-10-22T08:24:00.617153222Z --- PASS: TestBlobStorage_BlobOwnershipPersistsAcrossRestart (0.00s) 2026-10-22T08:24:00.617158506Z === RUN TestBlobStorage_FailedFinishDoesNotRecordOwnership 2026-10-22T08:24:00.61716786Z 2026-10-22T08:23:56Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestBlobStorage_FailedFinishDoesNotRecordOwnership1877238982/001 2026-10-22T08:24:00.61717796Z 2026-10-22T08:23:56Z INF blob upload started adapter=filesystem layer=adapter name=myapp uuid=8c58efb6-9869-4c91-a70f-d720a5135846 2026-10-22T08:24:00.617183966Z --- PASS: TestBlobStorage_FailedFinishDoesNotRecordOwnership (0.00s) 2026-10-22T08:24:00.617188418Z === RUN TestNewManifestStorage 2026-10-22T08:24:00.617197563Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestNewManifestStorage652083874/001 2026-10-22T08:24:00.617203173Z --- PASS: TestNewManifestStorage (0.00s) 2026-10-22T08:24:00.617207982Z === RUN TestNewManifestStorage_InvalidPath 2026-10-22T08:24:00.617213431Z --- PASS: TestNewManifestStorage_InvalidPath (0.00s) 2026-10-22T08:24:00.617218037Z === RUN TestManifestStorage_PutAndGetManifest 2026-10-22T08:24:00.61722733Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_PutAndGetManifest349550987/001 2026-10-22T08:24:00.617236249Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=latest 2026-10-22T08:24:00.617241807Z --- PASS: TestManifestStorage_PutAndGetManifest (0.00s) 2026-10-22T08:24:00.617246476Z === RUN TestManifestStorage_PutMirrorsDigest 2026-10-22T08:24:00.617256111Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_PutMirrorsDigest2663662818/001 2026-10-22T08:24:00.617265334Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=v1 2026-10-22T08:24:00.617271073Z --- PASS: TestManifestStorage_PutMirrorsDigest (0.00s) 2026-10-22T08:24:00.617276386Z === RUN TestManifestStorage_GetManifest_NotFound 2026-10-22T08:24:00.617285971Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_GetManifest_NotFound2878051645/001 2026-10-22T08:24:00.617292431Z --- PASS: TestManifestStorage_GetManifest_NotFound (0.00s) 2026-10-22T08:24:00.6172972Z === RUN TestManifestStorage_GetManifestModTime 2026-10-22T08:24:00.617306335Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_GetManifestModTime3984058724/001 2026-10-22T08:24:00.61731493Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=latest 2026-10-22T08:24:00.617320339Z --- PASS: TestManifestStorage_GetManifestModTime (0.00s) 2026-10-22T08:24:00.617325467Z === RUN TestManifestStorage_GetManifestModTime_NotFound 2026-10-22T08:24:00.617334947Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_GetManifestModTime_NotFound3533829252/001 2026-10-22T08:24:00.617341323Z --- PASS: TestManifestStorage_GetManifestModTime_NotFound (0.00s) 2026-10-22T08:24:00.617346621Z === RUN TestManifestStorage_GetManifest_FallbackContentType 2026-10-22T08:24:00.617356548Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_GetManifest_FallbackContentType1861184802/001 2026-10-22T08:24:00.617372953Z 2026-10-22T08:23:56Z WRN could not get manifest content type, falling back to default error="open /tmp/TestManifestStorage_GetManifest_FallbackContentType1861184802/001/repositories/myapp/manifests/latest.contenttype: no such file or directory" adapter=filesystem layer=adapter name=myapp reference=latest 2026-10-22T08:24:00.61738708Z --- PASS: TestManifestStorage_GetManifest_FallbackContentType (0.00s) 2026-10-22T08:24:00.617392099Z === RUN TestManifestStorage_DeleteManifest 2026-10-22T08:24:00.61740134Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_DeleteManifest3915186190/001 2026-10-22T08:24:00.617410058Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=latest 2026-10-22T08:24:00.617419702Z 2026-10-22T08:23:56Z INF manifest deleted adapter=filesystem layer=adapter name=myapp reference=latest 2026-10-22T08:24:00.61742518Z --- PASS: TestManifestStorage_DeleteManifest (0.00s) 2026-10-22T08:24:00.61743004Z === RUN TestManifestStorage_DeleteManifest_NotFound 2026-10-22T08:24:00.617439618Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_DeleteManifest_NotFound1807105496/001 2026-10-22T08:24:00.617445639Z --- PASS: TestManifestStorage_DeleteManifest_NotFound (0.00s) 2026-10-22T08:24:00.617450027Z === RUN TestManifestStorage_ListTags 2026-10-22T08:24:00.61745925Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_ListTags257195093/001 2026-10-22T08:24:00.617468536Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=latest 2026-10-22T08:24:00.617476989Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=v1.0 2026-10-22T08:24:00.617486228Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=v2.0 2026-10-22T08:24:00.617491139Z --- PASS: TestManifestStorage_ListTags (0.00s) 2026-10-22T08:24:00.617495755Z === RUN TestManifestStorage_ListTags_Empty 2026-10-22T08:24:00.617504826Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_ListTags_Empty2752192440/001 2026-10-22T08:24:00.617510209Z --- PASS: TestManifestStorage_ListTags_Empty (0.00s) 2026-10-22T08:24:00.617515167Z === RUN TestManifestStorage_ListTags_SkipsDigestReference 2026-10-22T08:24:00.617525071Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_ListTags_SkipsDigestReference300699173/001 2026-10-22T08:24:00.617536024Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 2026-10-22T08:24:00.617542684Z --- PASS: TestManifestStorage_ListTags_SkipsDigestReference (0.00s) 2026-10-22T08:24:00.61754779Z === RUN TestManifestStorage_ListTags_AfterDelete 2026-10-22T08:24:00.617557181Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_ListTags_AfterDelete1293707489/001 2026-10-22T08:24:00.617565789Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=latest 2026-10-22T08:24:00.617574222Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=v1.0 2026-10-22T08:24:00.617584802Z 2026-10-22T08:23:56Z INF manifest deleted adapter=filesystem layer=adapter name=myapp reference=v1.0 2026-10-22T08:24:00.617591065Z --- PASS: TestManifestStorage_ListTags_AfterDelete (0.00s) 2026-10-22T08:24:00.617595911Z === RUN TestManifestStorage_ListRepositories 2026-10-22T08:24:00.617608165Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_ListRepositories3902696200/001 2026-10-22T08:24:00.617622356Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=app1 reference=latest 2026-10-22T08:24:00.617637554Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=app2 reference=latest 2026-10-22T08:24:00.617653132Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=org/app3 reference=latest 2026-10-22T08:24:00.617660189Z --- PASS: TestManifestStorage_ListRepositories (0.00s) 2026-10-22T08:24:00.61766511Z === RUN TestManifestStorage_ListRepositories_Empty 2026-10-22T08:24:00.617674404Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_ListRepositories_Empty2417712252/001 2026-10-22T08:24:00.617681174Z --- PASS: TestManifestStorage_ListRepositories_Empty (0.00s) 2026-10-22T08:24:00.617686098Z === RUN TestManifestStorage_NestedRepositoryNames 2026-10-22T08:24:00.617695529Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_NestedRepositoryNames754007716/001 2026-10-22T08:24:00.617701137Z === RUN TestManifestStorage_NestedRepositoryNames/simple 2026-10-22T08:24:00.617708976Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=simple reference=latest 2026-10-22T08:24:00.617714522Z === RUN TestManifestStorage_NestedRepositoryNames/org/project 2026-10-22T08:24:00.617722584Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=org/project reference=v1.0 2026-10-22T08:24:00.617729037Z === RUN TestManifestStorage_NestedRepositoryNames/org/team/project 2026-10-22T08:24:00.617738435Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=org/team/project reference=v2.0 2026-10-22T08:24:00.617745183Z === RUN TestManifestStorage_NestedRepositoryNames/deeply/nested/repo/name 2026-10-22T08:24:00.617754397Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=deeply/nested/repo/name reference=sha256:abc123 2026-10-22T08:24:00.617760257Z --- PASS: TestManifestStorage_NestedRepositoryNames (0.00s) 2026-10-22T08:24:00.617773307Z --- PASS: TestManifestStorage_NestedRepositoryNames/simple (0.00s) 2026-10-22T08:24:00.617787193Z --- PASS: TestManifestStorage_NestedRepositoryNames/org/project (0.00s) 2026-10-22T08:24:00.617806448Z --- PASS: TestManifestStorage_NestedRepositoryNames/org/team/project (0.00s) 2026-10-22T08:24:00.617832346Z --- PASS: TestManifestStorage_NestedRepositoryNames/deeply/nested/repo/name (0.00s) 2026-10-22T08:24:00.617839654Z === RUN TestManifestStorage_ContentTypes 2026-10-22T08:24:00.617848981Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_ContentTypes923844902/001 2026-10-22T08:24:00.617855504Z === RUN TestManifestStorage_ContentTypes/v2_manifest 2026-10-22T08:24:00.617863599Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=test-repo reference=tag-a 2026-10-22T08:24:00.617868872Z === RUN TestManifestStorage_ContentTypes/v1_manifest 2026-10-22T08:24:00.617876869Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=test-repo reference=tag-b 2026-10-22T08:24:00.617882108Z === RUN TestManifestStorage_ContentTypes/OCI_manifest 2026-10-22T08:24:00.617890852Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=test-repo reference=tag-c 2026-10-22T08:24:00.61789615Z === RUN TestManifestStorage_ContentTypes/OCI_index 2026-10-22T08:24:00.617904239Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=test-repo reference=tag-d 2026-10-22T08:24:00.617909424Z === RUN TestManifestStorage_ContentTypes/manifest_list 2026-10-22T08:24:00.617917933Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=test-repo reference=tag-e 2026-10-22T08:24:00.617923033Z --- PASS: TestManifestStorage_ContentTypes (0.00s) 2026-10-22T08:24:00.617935815Z --- PASS: TestManifestStorage_ContentTypes/v2_manifest (0.00s) 2026-10-22T08:24:00.617948325Z --- PASS: TestManifestStorage_ContentTypes/v1_manifest (0.00s) 2026-10-22T08:24:00.6179608Z --- PASS: TestManifestStorage_ContentTypes/OCI_manifest (0.00s) 2026-10-22T08:24:00.617973092Z --- PASS: TestManifestStorage_ContentTypes/OCI_index (0.00s) 2026-10-22T08:24:00.617985856Z --- PASS: TestManifestStorage_ContentTypes/manifest_list (0.00s) 2026-10-22T08:24:00.617990524Z === RUN TestManifestStorage_DuplicateTag 2026-10-22T08:24:00.617999595Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_DuplicateTag3225770921/001 2026-10-22T08:24:00.618008161Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=latest 2026-10-22T08:24:00.618016483Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=latest 2026-10-22T08:24:00.618021574Z --- PASS: TestManifestStorage_DuplicateTag (0.00s) 2026-10-22T08:24:00.618026105Z === RUN TestManifestStorage_LargeManifest 2026-10-22T08:24:00.618035824Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_LargeManifest556434543/001 2026-10-22T08:24:00.618045007Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=large-app reference=latest 2026-10-22T08:24:00.618050993Z --- PASS: TestManifestStorage_LargeManifest (0.04s) 2026-10-22T08:24:00.618056008Z === RUN TestManifestStorage_SpecialCharactersInReference 2026-10-22T08:24:00.618065382Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_SpecialCharactersInReference1014109375/001 2026-10-22T08:24:00.618076197Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 2026-10-22T08:24:00.618082226Z --- PASS: TestManifestStorage_SpecialCharactersInReference (0.00s) 2026-10-22T08:24:00.618087057Z === RUN TestManifestStorage_CompleteWorkflow 2026-10-22T08:24:00.618096792Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_CompleteWorkflow1824111933/001 2026-10-22T08:24:00.618105573Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myorg/myapp reference=v1.0 2026-10-22T08:24:00.618114047Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myorg/myapp reference=latest 2026-10-22T08:24:00.61812309Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myorg/myapp reference=v2.0 2026-10-22T08:24:00.61813165Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myorg/myapp reference=latest 2026-10-22T08:24:00.618140211Z 2026-10-22T08:23:56Z INF manifest deleted adapter=filesystem layer=adapter name=myorg/myapp reference=v1.0 2026-10-22T08:24:00.618145557Z --- PASS: TestManifestStorage_CompleteWorkflow (0.00s) 2026-10-22T08:24:00.618150742Z === RUN TestManifestStorage_UpdateTagsList_CleansLegacyDigestEntries 2026-10-22T08:24:00.618160758Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_UpdateTagsList_CleansLegacyDigestEntries2963811790/001 2026-10-22T08:24:00.618169594Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=v1.0 2026-10-22T08:24:00.618177987Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=v2.0 2026-10-22T08:24:00.618186657Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=v3.0 2026-10-22T08:24:00.618192597Z --- PASS: TestManifestStorage_UpdateTagsList_CleansLegacyDigestEntries (0.00s) 2026-10-22T08:24:00.618198144Z === RUN TestManifestStorage_RemoveFromTagsList_CleansLegacyDigestEntries 2026-10-22T08:24:00.618208382Z 2026-10-22T08:23:56Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestManifestStorage_RemoveFromTagsList_CleansLegacyDigestEntries199012160/001 2026-10-22T08:24:00.618217158Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=v1.0 2026-10-22T08:24:00.618225529Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=v2.0 2026-10-22T08:24:00.618233436Z 2026-10-22T08:23:56Z INF manifest stored adapter=filesystem layer=adapter name=myapp reference=v3.0 2026-10-22T08:24:00.61824139Z 2026-10-22T08:23:56Z INF manifest deleted adapter=filesystem layer=adapter name=myapp reference=v2.0 2026-10-22T08:24:00.618247445Z --- PASS: TestManifestStorage_RemoveFromTagsList_CleansLegacyDigestEntries (0.00s) 2026-10-22T08:24:00.618251558Z PASS 2026-10-22T08:24:00.618260272Z ok github.com/bnema/gordon/internal/adapters/out/filesystem 1.136s 2026-10-22T08:24:00.618270638Z ? github.com/bnema/gordon/internal/adapters/out/httpprober [no test files] 2026-10-22T08:24:00.618278716Z === RUN TestResolver_PinnedPassesThrough 2026-10-22T08:24:00.618286796Z --- PASS: TestResolver_PinnedPassesThrough (0.00s) 2026-10-22T08:24:00.618298996Z === RUN TestResolver_LocalManifestHashes 2026-10-22T08:24:00.61830632Z --- PASS: TestResolver_LocalManifestHashes (0.00s) 2026-10-22T08:24:00.618310898Z === RUN TestResolver_ExternalNeedsRemote 2026-10-22T08:24:00.618316362Z --- PASS: TestResolver_ExternalNeedsRemote (0.00s) 2026-10-22T08:24:00.618321307Z === RUN TestResolver_RejectsMalformedRemoteDigest 2026-10-22T08:24:00.618326369Z --- PASS: TestResolver_RejectsMalformedRemoteDigest (0.00s) 2026-10-22T08:24:00.618332224Z === RUN TestResolver_RejectsDisallowedRefsWithoutConnecting 2026-10-22T08:24:00.618337643Z --- PASS: TestResolver_RejectsDisallowedRefsWithoutConnecting (0.00s) 2026-10-22T08:24:00.618343012Z === RUN TestResolver_AllowsInstallationAndAllowlistedRefs 2026-10-22T08:24:00.618348335Z --- PASS: TestResolver_AllowsInstallationAndAllowlistedRefs (0.00s) 2026-10-22T08:24:00.618353147Z === RUN TestResolver_RequireDigestRejectsTags 2026-10-22T08:24:00.618358726Z --- PASS: TestResolver_RequireDigestRejectsTags (0.00s) 2026-10-22T08:24:00.61836221Z PASS 2026-10-22T08:24:00.61836751Z ok github.com/bnema/gordon/internal/adapters/out/imageref 1.013s 2026-10-22T08:24:00.618371382Z === RUN TestNew 2026-10-22T08:24:00.618376869Z === RUN TestNew/creates_log_directory 2026-10-22T08:24:00.618381465Z === RUN TestNew/uses_existing_directory 2026-10-22T08:24:00.618385442Z --- PASS: TestNew (0.00s) 2026-10-22T08:24:00.61839587Z --- PASS: TestNew/creates_log_directory (0.00s) 2026-10-22T08:24:00.618406445Z --- PASS: TestNew/uses_existing_directory (0.00s) 2026-10-22T08:24:00.618410913Z === RUN TestStartLogging 2026-10-22T08:24:00.618415859Z === RUN TestStartLogging/creates_log_file_and_writes_data 2026-10-22T08:24:00.618421638Z === RUN TestStartLogging/replaces_existing_log_stream_for_same_container 2026-10-22T08:24:00.618426283Z --- PASS: TestStartLogging (0.25s) 2026-10-22T08:24:00.618439209Z --- PASS: TestStartLogging/creates_log_file_and_writes_data (0.10s) 2026-10-22T08:24:00.618456533Z --- PASS: TestStartLogging/replaces_existing_log_stream_for_same_container (0.15s) 2026-10-22T08:24:00.618461123Z === RUN TestStopLogging 2026-10-22T08:24:00.618466168Z === RUN TestStopLogging/stops_log_collection 2026-10-22T08:24:00.618471778Z === RUN TestStopLogging/noop_for_non-existent_container 2026-10-22T08:24:00.618475987Z --- PASS: TestStopLogging (0.05s) 2026-10-22T08:24:00.618491671Z --- PASS: TestStopLogging/stops_log_collection (0.05s) 2026-10-22T08:24:00.618512653Z --- PASS: TestStopLogging/noop_for_non-existent_container (0.00s) 2026-10-22T08:24:00.618518303Z === RUN TestClose 2026-10-22T08:24:00.618523393Z === RUN TestClose/stops_all_log_streams 2026-10-22T08:24:00.618527526Z --- PASS: TestClose (0.03s) 2026-10-22T08:24:00.618538238Z --- PASS: TestClose/stops_all_log_streams (0.03s) 2026-10-22T08:24:00.618542327Z === RUN TestSanitizeDomain 2026-10-22T08:24:00.618546777Z === RUN TestSanitizeDomain/app.example.com 2026-10-22T08:24:00.618551373Z === RUN TestSanitizeDomain/api.v1.example.com 2026-10-22T08:24:00.618555991Z === RUN TestSanitizeDomain/localhost:8080 2026-10-22T08:24:00.618560332Z === RUN TestSanitizeDomain/app/service 2026-10-22T08:24:00.618564824Z === RUN TestSanitizeDomain/app_with_spaces 2026-10-22T08:24:00.618569127Z === RUN TestSanitizeDomain/simple 2026-10-22T08:24:00.61857378Z --- PASS: TestSanitizeDomain (0.00s) 2026-10-22T08:24:00.618585118Z --- PASS: TestSanitizeDomain/app.example.com (0.00s) 2026-10-22T08:24:00.618596617Z --- PASS: TestSanitizeDomain/api.v1.example.com (0.00s) 2026-10-22T08:24:00.618607433Z --- PASS: TestSanitizeDomain/localhost:8080 (0.00s) 2026-10-22T08:24:00.618617921Z --- PASS: TestSanitizeDomain/app/service (0.00s) 2026-10-22T08:24:00.618628902Z --- PASS: TestSanitizeDomain/app_with_spaces (0.00s) 2026-10-22T08:24:00.619590843Z --- PASS: TestSanitizeDomain/simple (0.00s) 2026-10-22T08:24:00.619652328Z === RUN TestMultipleContainers 2026-10-22T08:24:00.619673556Z --- PASS: TestMultipleContainers (0.10s) 2026-10-22T08:24:00.619682023Z PASS 2026-10-22T08:24:00.619693394Z ok github.com/bnema/gordon/internal/adapters/out/logwriter 1.440s 2026-10-22T08:24:00.619748422Z === RUN TestNewCA_GeneratesRootAndIntermediate 2026-10-22T08:24:00.619767914Z 2026-10-22T08:23:57Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:00.619779632Z 2026-10-22T08:23:57Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:23:57Z 2026-10-22T08:24:00.619786631Z --- PASS: TestNewCA_GeneratesRootAndIntermediate (0.00s) 2026-10-22T08:24:00.619834664Z === RUN TestNewCA_LoadsExistingOnRestart 2026-10-22T08:24:00.619859554Z 2026-10-22T08:23:57Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:00.61987087Z 2026-10-22T08:23:57Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:23:57Z 2026-10-22T08:24:00.61987913Z 2026-10-22T08:23:57Z INF loaded existing root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:00.619934431Z 2026-10-22T08:23:57Z INF loaded existing intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:23:57Z 2026-10-22T08:24:00.619951983Z --- PASS: TestNewCA_LoadsExistingOnRestart (0.00s) 2026-10-22T08:24:00.620009239Z === RUN TestCA_IssueCertificate 2026-10-22T08:24:00.620053365Z 2026-10-22T08:23:57Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:00.620118467Z 2026-10-22T08:23:57Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:23:57Z 2026-10-22T08:24:00.620722136Z --- PASS: TestCA_IssueCertificate (0.00s) 2026-10-22T08:24:00.62075624Z === RUN TestCA_RenewIntermediate 2026-10-22T08:24:00.620773674Z 2026-10-22T08:23:57Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:00.620789937Z 2026-10-22T08:23:57Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:23:57Z 2026-10-22T08:24:00.62080973Z 2026-10-22T08:23:58Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:23:58Z 2026-10-22T08:24:00.620824835Z 2026-10-22T08:23:58Z INF intermediate CA renewed expires=2026-10-29T08:23:58Z 2026-10-22T08:24:00.620836387Z --- PASS: TestCA_RenewIntermediate (1.10s) 2026-10-22T08:24:00.620847383Z === RUN TestGenerateMobileconfig 2026-10-22T08:24:00.620861688Z 2026-10-22T08:23:58Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:00.620875615Z 2026-10-22T08:23:58Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:23:58Z 2026-10-22T08:24:00.620885838Z --- PASS: TestGenerateMobileconfig (0.00s) 2026-10-22T08:24:00.620897052Z === RUN TestGenerateMobileconfig_UsesIdentifierSafePayloadIdentifier 2026-10-22T08:24:00.62090902Z --- PASS: TestGenerateMobileconfig_UsesIdentifierSafePayloadIdentifier (0.00s) 2026-10-22T08:24:00.620923603Z PASS 2026-10-22T08:24:00.620935912Z ok github.com/bnema/gordon/internal/adapters/out/pki 2.129s 2026-10-22T08:24:00.620946924Z === RUN TestMemoryStore_Allow_WithinLimit 2026-10-22T08:24:00.620957552Z --- PASS: TestMemoryStore_Allow_WithinLimit (0.00s) 2026-10-22T08:24:00.620969691Z === RUN TestMemoryStore_Allow_ExceedsLimit 2026-10-22T08:24:00.620980021Z --- PASS: TestMemoryStore_Allow_ExceedsLimit (0.00s) 2026-10-22T08:24:00.620990066Z === RUN TestMemoryStore_Allow_BurstBehavior 2026-10-22T08:24:00.621000218Z --- PASS: TestMemoryStore_Allow_BurstBehavior (0.20s) 2026-10-22T08:24:00.621011985Z === RUN TestMemoryStore_Allow_IndependentKeys 2026-10-22T08:24:00.621024494Z --- PASS: TestMemoryStore_Allow_IndependentKeys (0.00s) 2026-10-22T08:24:00.621035179Z === RUN TestMemoryStore_AllowN_Basic 2026-10-22T08:24:00.621045151Z --- PASS: TestMemoryStore_AllowN_Basic (0.00s) 2026-10-22T08:24:00.621060239Z === RUN TestMemoryStore_AllowN_ExceedsBurst 2026-10-22T08:24:00.621076103Z --- PASS: TestMemoryStore_AllowN_ExceedsBurst (0.00s) 2026-10-22T08:24:00.621093991Z === RUN TestMemoryStore_Allow_ConcurrentAccess 2026-10-22T08:24:00.621112486Z --- PASS: TestMemoryStore_Allow_ConcurrentAccess (0.00s) 2026-10-22T08:24:00.621130961Z === RUN TestMemoryStore_IPKeyFormat 2026-10-22T08:24:00.621151188Z --- PASS: TestMemoryStore_IPKeyFormat (0.00s) 2026-10-22T08:24:00.62117375Z === RUN TestMemoryStore_GlobalKey 2026-10-22T08:24:00.62119238Z --- PASS: TestMemoryStore_GlobalKey (0.00s) 2026-10-22T08:24:00.621209823Z === RUN TestNewStore_MemoryBackend 2026-10-22T08:24:00.621227511Z --- PASS: TestNewStore_MemoryBackend (0.00s) 2026-10-22T08:24:00.621248858Z === RUN TestNewStore_EmptyBackend 2026-10-22T08:24:00.621265936Z --- PASS: TestNewStore_EmptyBackend (0.00s) 2026-10-22T08:24:00.62128307Z === RUN TestNewStore_RedisBackend 2026-10-22T08:24:00.621302536Z --- PASS: TestNewStore_RedisBackend (0.00s) 2026-10-22T08:24:00.621323379Z === RUN TestNewStore_UnknownBackend 2026-10-22T08:24:00.621341102Z --- PASS: TestNewStore_UnknownBackend (0.00s) 2026-10-22T08:24:00.621357271Z PASS 2026-10-22T08:24:00.621377733Z ok github.com/bnema/gordon/internal/adapters/out/ratelimit 1.214s 2026-10-22T08:24:00.679601641Z === RUN TestVolumeBackupStorageStoreListGet 2026-10-22T08:24:00.679639691Z --- PASS: TestVolumeBackupStorageStoreListGet (0.00s) 2026-10-22T08:24:00.679648853Z === RUN TestVolumeBackupStorageSendsConfiguredStorageClass 2026-10-22T08:24:00.679655956Z --- PASS: TestVolumeBackupStorageSendsConfiguredStorageClass (0.00s) 2026-10-22T08:24:00.679663188Z === RUN TestVolumeBackupStorageRetentionMixesLongAndShortIDs 2026-10-22T08:24:00.679669266Z --- PASS: TestVolumeBackupStorageRetentionMixesLongAndShortIDs (0.00s) 2026-10-22T08:24:00.679674646Z === RUN TestVolumeBackupStorageLatestVolumeArchives 2026-10-22T08:24:00.679713417Z --- PASS: TestVolumeBackupStorageLatestVolumeArchives (0.00s) 2026-10-22T08:24:00.679732597Z === RUN TestVolumeBackupStorageRetentionUsesParsedKeyTimestamp 2026-10-22T08:24:00.679739939Z --- PASS: TestVolumeBackupStorageRetentionUsesParsedKeyTimestamp (0.00s) 2026-10-22T08:24:00.679745837Z === RUN TestVolumeBackupStorageRejectsWrongBucketArtifact 2026-10-22T08:24:00.679751497Z --- PASS: TestVolumeBackupStorageRejectsWrongBucketArtifact (0.00s) 2026-10-22T08:24:00.679756383Z PASS 2026-10-22T08:24:00.679766372Z ok github.com/bnema/gordon/internal/adapters/out/s3 1.016s 2026-10-22T08:24:01.401463212Z === RUN TestStore_WriteModesAndRead 2026-10-22T08:24:01.40150269Z --- PASS: TestStore_WriteModesAndRead (0.00s) 2026-10-22T08:24:01.401516031Z === RUN TestStore_WriteNeverReplacesExistingContainer 2026-10-22T08:24:01.401527658Z --- PASS: TestStore_WriteNeverReplacesExistingContainer (0.00s) 2026-10-22T08:24:01.401538653Z === RUN TestStore_RemoveAndList 2026-10-22T08:24:01.40155824Z --- PASS: TestStore_RemoveAndList (0.00s) 2026-10-22T08:24:01.401569142Z === RUN TestStore_InvalidNamesRejected 2026-10-22T08:24:01.401577369Z === RUN TestStore_InvalidNamesRejected/app_traversal 2026-10-22T08:24:01.40158594Z === RUN TestStore_InvalidNamesRejected/app_slash 2026-10-22T08:24:01.401599853Z === RUN TestStore_InvalidNamesRejected/container_dot 2026-10-22T08:24:01.401611065Z === RUN TestStore_InvalidNamesRejected/container_dotdot 2026-10-22T08:24:01.4016211Z === RUN TestStore_InvalidNamesRejected/container_slash 2026-10-22T08:24:01.401630992Z === RUN TestStore_InvalidNamesRejected/container_empty 2026-10-22T08:24:01.401639691Z === RUN TestStore_InvalidNamesRejected/bad_key 2026-10-22T08:24:01.401645224Z === RUN TestStore_InvalidNamesRejected/key_traversal 2026-10-22T08:24:01.401650087Z --- PASS: TestStore_InvalidNamesRejected (0.00s) 2026-10-22T08:24:01.401665397Z --- PASS: TestStore_InvalidNamesRejected/app_traversal (0.00s) 2026-10-22T08:24:01.401682977Z --- PASS: TestStore_InvalidNamesRejected/app_slash (0.00s) 2026-10-22T08:24:01.401700935Z --- PASS: TestStore_InvalidNamesRejected/container_dot (0.00s) 2026-10-22T08:24:01.401719038Z --- PASS: TestStore_InvalidNamesRejected/container_dotdot (0.00s) 2026-10-22T08:24:01.401736888Z --- PASS: TestStore_InvalidNamesRejected/container_slash (0.00s) 2026-10-22T08:24:01.401754798Z --- PASS: TestStore_InvalidNamesRejected/container_empty (0.00s) 2026-10-22T08:24:01.401771946Z --- PASS: TestStore_InvalidNamesRejected/bad_key (0.00s) 2026-10-22T08:24:01.401789148Z --- PASS: TestStore_InvalidNamesRejected/key_traversal (0.00s) 2026-10-22T08:24:01.401798664Z === RUN TestStore_SymlinkEscapeRefused 2026-10-22T08:24:01.40180416Z --- PASS: TestStore_SymlinkEscapeRefused (0.00s) 2026-10-22T08:24:01.401811361Z === RUN TestNewStore_RefusesSymlinkBase 2026-10-22T08:24:01.401817023Z --- PASS: TestNewStore_RefusesSymlinkBase (0.00s) 2026-10-22T08:24:01.401821322Z PASS 2026-10-22T08:24:01.401827125Z ok github.com/bnema/gordon/internal/adapters/out/secretfiles 1.015s 2026-10-22T08:24:01.723472633Z === RUN TestValidatePath 2026-10-22T08:24:01.723514435Z === RUN TestValidatePath/simple_path 2026-10-22T08:24:01.723522735Z === RUN TestValidatePath/path_with_dots_in_name 2026-10-22T08:24:01.723528752Z === RUN TestValidatePath/path_with_hyphens 2026-10-22T08:24:01.723534038Z === RUN TestValidatePath/path_with_underscores 2026-10-22T08:24:01.723543314Z === RUN TestValidatePath/nested_path 2026-10-22T08:24:01.723549988Z === RUN TestValidatePath/path_traversal_with_double_dots 2026-10-22T08:24:01.723555649Z === RUN TestValidatePath/path_traversal_in_middle 2026-10-22T08:24:01.723565338Z === RUN TestValidatePath/path_traversal_at_end 2026-10-22T08:24:01.723572342Z === RUN TestValidatePath/encoded_path_traversal 2026-10-22T08:24:01.72358534Z === RUN TestValidatePath/absolute_path 2026-10-22T08:24:01.72359944Z === RUN TestValidatePath/absolute_path_with_valid_chars 2026-10-22T08:24:01.723605922Z === RUN TestValidatePath/semicolon_injection 2026-10-22T08:24:01.723610561Z === RUN TestValidatePath/pipe_injection 2026-10-22T08:24:01.723615434Z === RUN TestValidatePath/backtick_injection 2026-10-22T08:24:01.723620107Z === RUN TestValidatePath/dollar_injection 2026-10-22T08:24:01.723624683Z === RUN TestValidatePath/ampersand_injection 2026-10-22T08:24:01.723629176Z === RUN TestValidatePath/newline_injection 2026-10-22T08:24:01.723633456Z === RUN TestValidatePath/space_in_path 2026-10-22T08:24:01.72363831Z === RUN TestValidatePath/null_byte_injection 2026-10-22T08:24:01.723642697Z === RUN TestValidatePath/empty_path 2026-10-22T08:24:01.723647227Z === RUN TestValidatePath/single_dot 2026-10-22T08:24:01.723651756Z --- PASS: TestValidatePath (0.00s) 2026-10-22T08:24:01.723662141Z --- PASS: TestValidatePath/simple_path (0.00s) 2026-10-22T08:24:01.723674216Z --- PASS: TestValidatePath/path_with_dots_in_name (0.00s) 2026-10-22T08:24:01.723685616Z --- PASS: TestValidatePath/path_with_hyphens (0.00s) 2026-10-22T08:24:01.723697324Z --- PASS: TestValidatePath/path_with_underscores (0.00s) 2026-10-22T08:24:01.723707664Z --- PASS: TestValidatePath/nested_path (0.00s) 2026-10-22T08:24:01.723721411Z --- PASS: TestValidatePath/path_traversal_with_double_dots (0.00s) 2026-10-22T08:24:01.723745409Z --- PASS: TestValidatePath/path_traversal_in_middle (0.00s) 2026-10-22T08:24:01.723757554Z --- PASS: TestValidatePath/path_traversal_at_end (0.00s) 2026-10-22T08:24:01.723769284Z --- PASS: TestValidatePath/encoded_path_traversal (0.00s) 2026-10-22T08:24:01.723779745Z --- PASS: TestValidatePath/absolute_path (0.00s) 2026-10-22T08:24:01.723792853Z --- PASS: TestValidatePath/absolute_path_with_valid_chars (0.00s) 2026-10-22T08:24:01.723804179Z --- PASS: TestValidatePath/semicolon_injection (0.00s) 2026-10-22T08:24:01.72381498Z --- PASS: TestValidatePath/pipe_injection (0.00s) 2026-10-22T08:24:01.723825972Z --- PASS: TestValidatePath/backtick_injection (0.00s) 2026-10-22T08:24:01.723836804Z --- PASS: TestValidatePath/dollar_injection (0.00s) 2026-10-22T08:24:01.723847863Z --- PASS: TestValidatePath/ampersand_injection (0.00s) 2026-10-22T08:24:01.723858831Z --- PASS: TestValidatePath/newline_injection (0.00s) 2026-10-22T08:24:01.723874445Z --- PASS: TestValidatePath/space_in_path (0.00s) 2026-10-22T08:24:01.723887564Z --- PASS: TestValidatePath/null_byte_injection (0.00s) 2026-10-22T08:24:01.72389768Z --- PASS: TestValidatePath/empty_path (0.00s) 2026-10-22T08:24:01.723907812Z --- PASS: TestValidatePath/single_dot (0.00s) 2026-10-22T08:24:01.723912607Z === RUN TestPassProvider_GetSecret_PathValidation 2026-10-22T08:24:01.723919471Z === RUN TestPassProvider_GetSecret_PathValidation/valid_path_rejected_due_to_pass_not_installed 2026-10-22T08:24:01.723927868Z === RUN TestPassProvider_GetSecret_PathValidation/path_traversal_rejected_before_command_execution 2026-10-22T08:24:01.723940029Z 2026-10-22T08:24:00Z WRN rejected invalid pass path error="path traversal not allowed" adapter=secrets layer=adapter path=../../../etc/passwd provider=pass 2026-10-22T08:24:01.72394885Z === RUN TestPassProvider_GetSecret_PathValidation/command_injection_rejected_before_command_execution 2026-10-22T08:24:01.72396167Z 2026-10-22T08:24:00Z WRN rejected invalid pass path error="invalid path: must contain only alphanumeric characters, /, _, ., -" adapter=secrets layer=adapter path=secret;whoami provider=pass 2026-10-22T08:24:01.723969371Z --- PASS: TestPassProvider_GetSecret_PathValidation (0.00s) 2026-10-22T08:24:01.723992257Z --- PASS: TestPassProvider_GetSecret_PathValidation/valid_path_rejected_due_to_pass_not_installed (0.00s) 2026-10-22T08:24:01.724014749Z --- PASS: TestPassProvider_GetSecret_PathValidation/path_traversal_rejected_before_command_execution (0.00s) 2026-10-22T08:24:01.724050885Z --- PASS: TestPassProvider_GetSecret_PathValidation/command_injection_rejected_before_command_execution (0.00s) 2026-10-22T08:24:01.724061815Z === RUN TestPublicTLSResolverPrefersPass 2026-10-22T08:24:01.724072778Z --- PASS: TestPublicTLSResolverPrefersPass (0.00s) 2026-10-22T08:24:01.7240803Z === RUN TestPublicTLSResolverFallsBackToTokenFile 2026-10-22T08:24:01.724085474Z --- PASS: TestPublicTLSResolverFallsBackToTokenFile (0.00s) 2026-10-22T08:24:01.724090367Z === RUN TestPublicTLSResolverFallsBackToEnv 2026-10-22T08:24:01.724095493Z --- PASS: TestPublicTLSResolverFallsBackToEnv (0.00s) 2026-10-22T08:24:01.724100096Z === RUN TestPublicTLSResolverNoToken 2026-10-22T08:24:01.724104743Z --- PASS: TestPublicTLSResolverNoToken (0.00s) 2026-10-22T08:24:01.724110358Z === RUN TestPublicTLSResolverPassErrorWithoutFallback 2026-10-22T08:24:01.724115708Z --- PASS: TestPublicTLSResolverPassErrorWithoutFallback (0.00s) 2026-10-22T08:24:01.724120827Z === RUN TestPublicTLSResolverPassErrorWithEnvFallback 2026-10-22T08:24:01.724126051Z --- PASS: TestPublicTLSResolverPassErrorWithEnvFallback (0.00s) 2026-10-22T08:24:01.724131123Z === RUN TestPublicTLSResolverTokenFileErrorWithoutFallback 2026-10-22T08:24:01.724136499Z --- PASS: TestPublicTLSResolverTokenFileErrorWithoutFallback (0.00s) 2026-10-22T08:24:01.724141891Z === RUN TestPublicTLSResolverTokenFileErrorWithEnvFallback 2026-10-22T08:24:01.724147094Z --- PASS: TestPublicTLSResolverTokenFileErrorWithEnvFallback (0.00s) 2026-10-22T08:24:01.724151915Z === RUN TestPublicTLSResolverEmptyPassValueFallback 2026-10-22T08:24:01.724156936Z --- PASS: TestPublicTLSResolverEmptyPassValueFallback (0.00s) 2026-10-22T08:24:01.724161331Z === RUN TestConvertToSopsExtractPath 2026-10-22T08:24:01.72416677Z === RUN TestConvertToSopsExtractPath/empty_string 2026-10-22T08:24:01.724171631Z === RUN TestConvertToSopsExtractPath/single_key 2026-10-22T08:24:01.724176652Z === RUN TestConvertToSopsExtractPath/two_level_nested 2026-10-22T08:24:01.724181503Z === RUN TestConvertToSopsExtractPath/three_level_nested 2026-10-22T08:24:01.724186611Z === RUN TestConvertToSopsExtractPath/key_with_underscores 2026-10-22T08:24:01.724192303Z === RUN TestConvertToSopsExtractPath/key_with_hyphens 2026-10-22T08:24:01.724197298Z === RUN TestConvertToSopsExtractPath/array_index_only 2026-10-22T08:24:01.724202317Z === RUN TestConvertToSopsExtractPath/key_with_array_index 2026-10-22T08:24:01.724207905Z === RUN TestConvertToSopsExtractPath/nested_key_with_array_index 2026-10-22T08:24:01.724213512Z === RUN TestConvertToSopsExtractPath/nested_key_with_array_then_key 2026-10-22T08:24:01.724218827Z === RUN TestConvertToSopsExtractPath/multiple_array_indices 2026-10-22T08:24:01.724224332Z === RUN TestConvertToSopsExtractPath/deeply_nested_with_array 2026-10-22T08:24:01.724229045Z --- PASS: TestConvertToSopsExtractPath (0.00s) 2026-10-22T08:24:01.724244373Z --- PASS: TestConvertToSopsExtractPath/empty_string (0.00s) 2026-10-22T08:24:01.724264995Z --- PASS: TestConvertToSopsExtractPath/single_key (0.00s) 2026-10-22T08:24:01.72428564Z --- PASS: TestConvertToSopsExtractPath/two_level_nested (0.00s) 2026-10-22T08:24:01.724306058Z --- PASS: TestConvertToSopsExtractPath/three_level_nested (0.00s) 2026-10-22T08:24:01.72432107Z --- PASS: TestConvertToSopsExtractPath/key_with_underscores (0.00s) 2026-10-22T08:24:01.724334076Z --- PASS: TestConvertToSopsExtractPath/key_with_hyphens (0.00s) 2026-10-22T08:24:01.724346708Z --- PASS: TestConvertToSopsExtractPath/array_index_only (0.00s) 2026-10-22T08:24:01.724359837Z --- PASS: TestConvertToSopsExtractPath/key_with_array_index (0.00s) 2026-10-22T08:24:01.724373936Z --- PASS: TestConvertToSopsExtractPath/nested_key_with_array_index (0.00s) 2026-10-22T08:24:01.724390472Z --- PASS: TestConvertToSopsExtractPath/nested_key_with_array_then_key (0.00s) 2026-10-22T08:24:01.724404424Z --- PASS: TestConvertToSopsExtractPath/multiple_array_indices (0.00s) 2026-10-22T08:24:01.724418312Z --- PASS: TestConvertToSopsExtractPath/deeply_nested_with_array (0.00s) 2026-10-22T08:24:01.724422316Z PASS 2026-10-22T08:24:01.724428093Z ok github.com/bnema/gordon/internal/adapters/out/secrets 1.023s 2026-10-22T08:24:03.799521438Z === RUN TestRecordBackupRun_CountsResultAndTracksLastSuccess 2026-10-22T08:24:03.799565649Z --- PASS: TestRecordBackupRun_CountsResultAndTracksLastSuccess (0.00s) 2026-10-22T08:24:03.799608177Z === RUN TestObserveStoredBackup_KeepsTheNewestSuccess 2026-10-22T08:24:03.799631256Z --- PASS: TestObserveStoredBackup_KeepsTheNewestSuccess (0.00s) 2026-10-22T08:24:03.799650517Z === RUN TestRetainBackupTargets_ForgetsUndeclaredTargetsOfThatKindOnly 2026-10-22T08:24:03.799669818Z --- PASS: TestRetainBackupTargets_ForgetsUndeclaredTargetsOfThatKindOnly (0.00s) 2026-10-22T08:24:03.799688118Z === RUN TestRetainBackupTargets_KeepsSuccessRecordedAfterTheSnapshot 2026-10-22T08:24:03.799706214Z --- PASS: TestRetainBackupTargets_KeepsSuccessRecordedAfterTheSnapshot (0.00s) 2026-10-22T08:24:03.799723297Z === RUN TestObserveBackupNextRun 2026-10-22T08:24:03.799739847Z --- PASS: TestObserveBackupNextRun (0.00s) 2026-10-22T08:24:03.799756533Z === RUN TestLogExporter_ExportsPerSourceIdentity 2026-10-22T08:24:03.799777478Z --- PASS: TestLogExporter_ExportsPerSourceIdentity (0.02s) 2026-10-22T08:24:03.799793649Z === RUN TestLogExporter_DropsAfterShutdown 2026-10-22T08:24:03.799809489Z --- PASS: TestLogExporter_DropsAfterShutdown (0.00s) 2026-10-22T08:24:03.799824995Z === RUN TestObserveManagedContainers 2026-10-22T08:24:03.799840472Z --- PASS: TestObserveManagedContainers (0.00s) 2026-10-22T08:24:03.799855289Z PASS 2026-10-22T08:24:03.799872285Z ok github.com/bnema/gordon/internal/adapters/out/telemetry 1.051s 2026-10-22T08:24:03.836174504Z === RUN TestParsePassLsOutput 2026-10-22T08:24:03.83622371Z === RUN TestParsePassLsOutput/flat_entries_only 2026-10-22T08:24:03.836237615Z === RUN TestParsePassLsOutput/nested_entries_with_slash_in_subject 2026-10-22T08:24:03.836255154Z === RUN TestParsePassLsOutput/deeply_nested_entries 2026-10-22T08:24:03.836266869Z === RUN TestParsePassLsOutput/mixed_flat_and_nested 2026-10-22T08:24:03.836284606Z === RUN TestParsePassLsOutput/empty_output_(no_entries) 2026-10-22T08:24:03.836303863Z === RUN TestParsePassLsOutput/ascii_tree_decoration_variant 2026-10-22T08:24:03.836319965Z --- PASS: TestParsePassLsOutput (0.00s) 2026-10-22T08:24:03.836350803Z --- PASS: TestParsePassLsOutput/flat_entries_only (0.00s) 2026-10-22T08:24:03.836385944Z --- PASS: TestParsePassLsOutput/nested_entries_with_slash_in_subject (0.00s) 2026-10-22T08:24:03.836416183Z --- PASS: TestParsePassLsOutput/deeply_nested_entries (0.00s) 2026-10-22T08:24:03.836446546Z --- PASS: TestParsePassLsOutput/mixed_flat_and_nested (0.00s) 2026-10-22T08:24:03.836478259Z --- PASS: TestParsePassLsOutput/empty_output_(no_entries) (0.00s) 2026-10-22T08:24:03.836510815Z --- PASS: TestParsePassLsOutput/ascii_tree_decoration_variant (0.00s) 2026-10-22T08:24:03.836527191Z === RUN TestPassStore_GetToken_CacheHit 2026-10-22T08:24:03.836544411Z --- PASS: TestPassStore_GetToken_CacheHit (0.00s) 2026-10-22T08:24:03.836563907Z === RUN TestPassStore_GetToken_CacheMiss_ReturnsNotFound 2026-10-22T08:24:03.836582535Z --- PASS: TestPassStore_GetToken_CacheMiss_ReturnsNotFound (0.00s) 2026-10-22T08:24:03.836599628Z === RUN TestPassStore_IsRevoked_CacheHit_Revoked 2026-10-22T08:24:03.836617448Z --- PASS: TestPassStore_IsRevoked_CacheHit_Revoked (0.00s) 2026-10-22T08:24:03.836634566Z === RUN TestPassStore_IsRevoked_CacheHit_NotRevoked 2026-10-22T08:24:03.836652213Z --- PASS: TestPassStore_IsRevoked_CacheHit_NotRevoked (0.00s) 2026-10-22T08:24:03.836675816Z === RUN TestPassStore_CacheUpdate_OnSave 2026-10-22T08:24:03.836693784Z --- PASS: TestPassStore_CacheUpdate_OnSave (0.00s) 2026-10-22T08:24:03.836712375Z === RUN TestPassStore_CacheClear_OnDelete 2026-10-22T08:24:03.836729328Z --- PASS: TestPassStore_CacheClear_OnDelete (0.00s) 2026-10-22T08:24:03.836751946Z === RUN TestPassStore_GetToken_ConcurrentAccess 2026-10-22T08:24:03.836770349Z --- PASS: TestPassStore_GetToken_ConcurrentAccess (0.00s) 2026-10-22T08:24:03.836787301Z === RUN TestPassStore_IsRevoked_ConcurrentAccess 2026-10-22T08:24:03.836808494Z --- PASS: TestPassStore_IsRevoked_ConcurrentAccess (0.00s) 2026-10-22T08:24:03.836824456Z === RUN TestPassStore_RevokeUpdatesCache 2026-10-22T08:24:03.836841093Z --- PASS: TestPassStore_RevokeUpdatesCache (0.00s) 2026-10-22T08:24:03.836860604Z === RUN TestPassStore_SaveToken_RejectsInvalidSubject 2026-10-22T08:24:03.836879581Z === RUN TestPassStore_SaveToken_RejectsInvalidSubject/path_traversal_with_../ 2026-10-22T08:24:03.836898293Z === RUN TestPassStore_SaveToken_RejectsInvalidSubject/path_traversal_with_..\ 2026-10-22T08:24:03.836916957Z === RUN TestPassStore_SaveToken_RejectsInvalidSubject/shell_metacharacter_semicolon 2026-10-22T08:24:03.836925116Z === RUN TestPassStore_SaveToken_RejectsInvalidSubject/shell_metacharacter_pipe 2026-10-22T08:24:03.8369406Z === RUN TestPassStore_SaveToken_RejectsInvalidSubject/shell_metacharacter_ampersand 2026-10-22T08:24:03.836955957Z === RUN TestPassStore_SaveToken_RejectsInvalidSubject/shell_metacharacter_backtick 2026-10-22T08:24:03.836974338Z === RUN TestPassStore_SaveToken_RejectsInvalidSubject/shell_metacharacter_dollar_sign 2026-10-22T08:24:03.836993165Z === RUN TestPassStore_SaveToken_RejectsInvalidSubject/newline_character 2026-10-22T08:24:03.837012989Z === RUN TestPassStore_SaveToken_RejectsInvalidSubject/null_byte 2026-10-22T08:24:03.837030613Z --- PASS: TestPassStore_SaveToken_RejectsInvalidSubject (0.00s) 2026-10-22T08:24:03.837063912Z --- PASS: TestPassStore_SaveToken_RejectsInvalidSubject/path_traversal_with_../ (0.00s) 2026-10-22T08:24:03.837097294Z --- PASS: TestPassStore_SaveToken_RejectsInvalidSubject/path_traversal_with_..\ (0.00s) 2026-10-22T08:24:03.837131348Z --- PASS: TestPassStore_SaveToken_RejectsInvalidSubject/shell_metacharacter_semicolon (0.00s) 2026-10-22T08:24:03.837164698Z --- PASS: TestPassStore_SaveToken_RejectsInvalidSubject/shell_metacharacter_pipe (0.00s) 2026-10-22T08:24:03.837198245Z --- PASS: TestPassStore_SaveToken_RejectsInvalidSubject/shell_metacharacter_ampersand (0.00s) 2026-10-22T08:24:03.837231336Z --- PASS: TestPassStore_SaveToken_RejectsInvalidSubject/shell_metacharacter_backtick (0.00s) 2026-10-22T08:24:03.837274833Z --- PASS: TestPassStore_SaveToken_RejectsInvalidSubject/shell_metacharacter_dollar_sign (0.00s) 2026-10-22T08:24:03.837308294Z --- PASS: TestPassStore_SaveToken_RejectsInvalidSubject/newline_character (0.00s) 2026-10-22T08:24:03.837336569Z --- PASS: TestPassStore_SaveToken_RejectsInvalidSubject/null_byte (0.00s) 2026-10-22T08:24:03.837344495Z === RUN TestPassStore_SaveToken_AcceptsValidSubject 2026-10-22T08:24:03.837350551Z === RUN TestPassStore_SaveToken_AcceptsValidSubject/simple_username 2026-10-22T08:24:03.837360539Z === RUN TestPassStore_SaveToken_AcceptsValidSubject/username_with_dots 2026-10-22T08:24:03.83737061Z === RUN TestPassStore_SaveToken_AcceptsValidSubject/username_with_hyphens 2026-10-22T08:24:03.837377308Z === RUN TestPassStore_SaveToken_AcceptsValidSubject/username_with_underscores 2026-10-22T08:24:03.837386885Z === RUN TestPassStore_SaveToken_AcceptsValidSubject/email-like 2026-10-22T08:24:03.837393555Z === RUN TestPassStore_SaveToken_AcceptsValidSubject/path-like_but_safe 2026-10-22T08:24:03.837402105Z --- PASS: TestPassStore_SaveToken_AcceptsValidSubject (0.00s) 2026-10-22T08:24:03.837420454Z --- PASS: TestPassStore_SaveToken_AcceptsValidSubject/simple_username (0.00s) 2026-10-22T08:24:03.837439469Z --- PASS: TestPassStore_SaveToken_AcceptsValidSubject/username_with_dots (0.00s) 2026-10-22T08:24:03.837455857Z --- PASS: TestPassStore_SaveToken_AcceptsValidSubject/username_with_hyphens (0.00s) 2026-10-22T08:24:03.837476722Z --- PASS: TestPassStore_SaveToken_AcceptsValidSubject/username_with_underscores (0.00s) 2026-10-22T08:24:03.837496584Z --- PASS: TestPassStore_SaveToken_AcceptsValidSubject/email-like (0.00s) 2026-10-22T08:24:03.837516484Z --- PASS: TestPassStore_SaveToken_AcceptsValidSubject/path-like_but_safe (0.00s) 2026-10-22T08:24:03.837526211Z === RUN TestPassStore_GetToken_RejectsInvalidSubject 2026-10-22T08:24:03.837537397Z === RUN TestPassStore_GetToken_RejectsInvalidSubject/../../../etc/passwd 2026-10-22T08:24:03.837546967Z === RUN TestPassStore_GetToken_RejectsInvalidSubject/user;rm_-rf_/ 2026-10-22T08:24:03.837577382Z === RUN TestPassStore_GetToken_RejectsInvalidSubject/user|cat 2026-10-22T08:24:03.83759029Z === RUN TestPassStore_GetToken_RejectsInvalidSubject/user_newline 2026-10-22T08:24:03.837607341Z --- PASS: TestPassStore_GetToken_RejectsInvalidSubject (0.00s) 2026-10-22T08:24:03.837633052Z --- PASS: TestPassStore_GetToken_RejectsInvalidSubject/../../../etc/passwd (0.00s) 2026-10-22T08:24:03.837657837Z --- PASS: TestPassStore_GetToken_RejectsInvalidSubject/user;rm_-rf_/ (0.00s) 2026-10-22T08:24:03.837694677Z --- PASS: TestPassStore_GetToken_RejectsInvalidSubject/user|cat (0.00s) 2026-10-22T08:24:03.837744749Z --- PASS: TestPassStore_GetToken_RejectsInvalidSubject/user_newline (0.00s) 2026-10-22T08:24:03.837771139Z === RUN TestPassStore_DeleteToken_RejectsInvalidSubject 2026-10-22T08:24:03.837799376Z === RUN TestPassStore_DeleteToken_RejectsInvalidSubject/../../../etc/passwd 2026-10-22T08:24:03.837821004Z === RUN TestPassStore_DeleteToken_RejectsInvalidSubject/user;rm_-rf_/ 2026-10-22T08:24:03.837844918Z === RUN TestPassStore_DeleteToken_RejectsInvalidSubject/user|cat 2026-10-22T08:24:03.837869459Z --- PASS: TestPassStore_DeleteToken_RejectsInvalidSubject (0.00s) 2026-10-22T08:24:03.837902358Z --- PASS: TestPassStore_DeleteToken_RejectsInvalidSubject/../../../etc/passwd (0.00s) 2026-10-22T08:24:03.837943995Z --- PASS: TestPassStore_DeleteToken_RejectsInvalidSubject/user;rm_-rf_/ (0.00s) 2026-10-22T08:24:03.837982058Z --- PASS: TestPassStore_DeleteToken_RejectsInvalidSubject/user|cat (0.00s) 2026-10-22T08:24:03.83800734Z === RUN TestUnsafeStoreRevokeConcurrentNoLoss 2026-10-22T08:24:03.838024505Z --- PASS: TestUnsafeStoreRevokeConcurrentNoLoss (0.01s) 2026-10-22T08:24:03.838032914Z PASS 2026-10-22T08:24:03.838052278Z ok github.com/bnema/gordon/internal/adapters/out/tokenstore 1.031s 2026-10-22T08:24:08.494235877Z === RUN TestLoadConfig_ACMEDefaults 2026-10-22T08:24:08.494280276Z --- PASS: TestLoadConfig_ACMEDefaults (0.00s) 2026-10-22T08:24:08.494293551Z === RUN TestBuildAppCapabilityPolicies_ValidConfig 2026-10-22T08:24:08.494310146Z --- PASS: TestBuildAppCapabilityPolicies_ValidConfig (0.00s) 2026-10-22T08:24:08.494325984Z === RUN TestBuildAppCapabilityPolicies_Invalid 2026-10-22T08:24:08.494332891Z === RUN TestBuildAppCapabilityPolicies_Invalid/empty_add 2026-10-22T08:24:08.494345192Z === RUN TestBuildAppCapabilityPolicies_Invalid/ALL 2026-10-22T08:24:08.494356667Z === RUN TestBuildAppCapabilityPolicies_Invalid/SYS_ADMIN 2026-10-22T08:24:08.494374103Z === RUN TestBuildAppCapabilityPolicies_Invalid/duplicate 2026-10-22T08:24:08.494383258Z === RUN TestBuildAppCapabilityPolicies_Invalid/empty_apps 2026-10-22T08:24:08.494394284Z === RUN TestBuildAppCapabilityPolicies_Invalid/empty_services 2026-10-22T08:24:08.494406077Z --- PASS: TestBuildAppCapabilityPolicies_Invalid (0.00s) 2026-10-22T08:24:08.494429966Z --- PASS: TestBuildAppCapabilityPolicies_Invalid/empty_add (0.00s) 2026-10-22T08:24:08.494452498Z --- PASS: TestBuildAppCapabilityPolicies_Invalid/ALL (0.00s) 2026-10-22T08:24:08.494475908Z --- PASS: TestBuildAppCapabilityPolicies_Invalid/SYS_ADMIN (0.00s) 2026-10-22T08:24:08.494492636Z --- PASS: TestBuildAppCapabilityPolicies_Invalid/duplicate (0.00s) 2026-10-22T08:24:08.494515518Z --- PASS: TestBuildAppCapabilityPolicies_Invalid/empty_apps (0.00s) 2026-10-22T08:24:08.494538855Z --- PASS: TestBuildAppCapabilityPolicies_Invalid/empty_services (0.00s) 2026-10-22T08:24:08.494547926Z === RUN TestValidateAppCapabilityKeys_UnknownKey 2026-10-22T08:24:08.494562681Z --- PASS: TestValidateAppCapabilityKeys_UnknownKey (0.00s) 2026-10-22T08:24:08.494576649Z === RUN TestValidateAppPolicies_IncludesCapabilities 2026-10-22T08:24:08.494592551Z --- PASS: TestValidateAppPolicies_IncludesCapabilities (0.00s) 2026-10-22T08:24:08.494609461Z === RUN TestBuildAppCapabilityPolicies_CopiesSlicesAndDefaultsEmpty 2026-10-22T08:24:08.49462077Z --- PASS: TestBuildAppCapabilityPolicies_CopiesSlicesAndDefaultsEmpty (0.00s) 2026-10-22T08:24:08.49463509Z === RUN TestAppDeployHandler_RequestCancellationDoesNotAbortExecution 2026-10-22T08:24:08.494665812Z --- PASS: TestAppDeployHandler_RequestCancellationDoesNotAbortExecution (0.05s) 2026-10-22T08:24:08.494683968Z === RUN TestBuildAppDevicePolicies_ValidConfigUnmarshal 2026-10-22T08:24:08.494698565Z --- PASS: TestBuildAppDevicePolicies_ValidConfigUnmarshal (0.00s) 2026-10-22T08:24:08.494708785Z === RUN TestBuildAppDevicePolicies_Invalid 2026-10-22T08:24:08.494719622Z === RUN TestBuildAppDevicePolicies_Invalid/empty_cdi 2026-10-22T08:24:08.49472559Z === RUN TestBuildAppDevicePolicies_Invalid/raw_path 2026-10-22T08:24:08.494730936Z === RUN TestBuildAppDevicePolicies_Invalid/aggregate 2026-10-22T08:24:08.494746823Z === RUN TestBuildAppDevicePolicies_Invalid/empty_allowed_apps 2026-10-22T08:24:08.494756863Z === RUN TestBuildAppDevicePolicies_Invalid/empty_allowed_services 2026-10-22T08:24:08.494771962Z === RUN TestBuildAppDevicePolicies_Invalid/duplicate_cdi 2026-10-22T08:24:08.494786441Z --- PASS: TestBuildAppDevicePolicies_Invalid (0.00s) 2026-10-22T08:24:08.494810522Z --- PASS: TestBuildAppDevicePolicies_Invalid/empty_cdi (0.00s) 2026-10-22T08:24:08.494824371Z --- PASS: TestBuildAppDevicePolicies_Invalid/raw_path (0.00s) 2026-10-22T08:24:08.494843164Z --- PASS: TestBuildAppDevicePolicies_Invalid/aggregate (0.00s) 2026-10-22T08:24:08.494860452Z --- PASS: TestBuildAppDevicePolicies_Invalid/empty_allowed_apps (0.00s) 2026-10-22T08:24:08.494883898Z --- PASS: TestBuildAppDevicePolicies_Invalid/empty_allowed_services (0.00s) 2026-10-22T08:24:08.494907211Z --- PASS: TestBuildAppDevicePolicies_Invalid/duplicate_cdi (0.00s) 2026-10-22T08:24:08.494917654Z === RUN TestValidateAppDeviceKeys_UnknownKey 2026-10-22T08:24:08.494930742Z --- PASS: TestValidateAppDeviceKeys_UnknownKey (0.00s) 2026-10-22T08:24:08.494946002Z === RUN TestValidateAppDeviceKeys_Valid 2026-10-22T08:24:08.494959925Z --- PASS: TestValidateAppDeviceKeys_Valid (0.00s) 2026-10-22T08:24:08.494974373Z === RUN TestBuildAppDevicePolicies_CopiesSlices 2026-10-22T08:24:08.494980879Z --- PASS: TestBuildAppDevicePolicies_CopiesSlices (0.00s) 2026-10-22T08:24:08.494985984Z === RUN TestConfig_AppDevicesDefaultsEmpty 2026-10-22T08:24:08.494992459Z --- PASS: TestConfig_AppDevicesDefaultsEmpty (0.00s) 2026-10-22T08:24:08.494998443Z === RUN TestAppTrafficPublisher_WithdrawServiceIsFailClosedInStateAndIndex 2026-10-22T08:24:08.495017724Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495032322Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495048606Z --- PASS: TestAppTrafficPublisher_WithdrawServiceIsFailClosedInStateAndIndex (0.00s) 2026-10-22T08:24:08.49507443Z === RUN TestAppTrafficPublisher_WithdrawServiceSurfacesStateFailure 2026-10-22T08:24:08.495090833Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495104959Z --- PASS: TestAppTrafficPublisher_WithdrawServiceSurfacesStateFailure (0.00s) 2026-10-22T08:24:08.495119925Z === RUN TestAppTrafficPublisher_WithdrawUnknownServiceIsANoop 2026-10-22T08:24:08.495135254Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=0 2026-10-22T08:24:08.495150052Z --- PASS: TestAppTrafficPublisher_WithdrawUnknownServiceIsANoop (0.00s) 2026-10-22T08:24:08.495166409Z === RUN TestAppTrafficPublisher_RebuildTrafficReprojectsVerifiedState 2026-10-22T08:24:08.495181382Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495197459Z --- PASS: TestAppTrafficPublisher_RebuildTrafficReprojectsVerifiedState (0.00s) 2026-10-22T08:24:08.495213862Z === RUN TestAppTrafficPublisher_SerializesConcurrentPublication 2026-10-22T08:24:08.495228812Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495246978Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495262382Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495277522Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495294101Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495305434Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495334031Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495353893Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495364417Z --- PASS: TestAppTrafficPublisher_SerializesConcurrentPublication (0.01s) 2026-10-22T08:24:08.495373452Z === RUN TestAppTrafficPublisher_WithdrawalIsIdempotent 2026-10-22T08:24:08.495383813Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495393235Z --- PASS: TestAppTrafficPublisher_WithdrawalIsIdempotent (0.00s) 2026-10-22T08:24:08.495418111Z === RUN TestAppMonitor_RunsOnePassPerTick 2026-10-22T08:24:08.495433073Z --- PASS: TestAppMonitor_RunsOnePassPerTick (0.00s) 2026-10-22T08:24:08.495446986Z === RUN TestAppMonitor_DoesNotOverlapPasses 2026-10-22T08:24:08.49546195Z --- PASS: TestAppMonitor_DoesNotOverlapPasses (0.00s) 2026-10-22T08:24:08.495475572Z === RUN TestAppMonitor_ReconciliationErrorDoesNotStopTheLoop 2026-10-22T08:24:08.49549343Z 2026-10-22T08:24:06Z WRN app reconciliation pass failed error="assert.AnError general error for testing" 2026-10-22T08:24:08.49551351Z 2026-10-22T08:24:06Z WRN app reconciliation pass failed error="assert.AnError general error for testing" 2026-10-22T08:24:08.495530683Z --- PASS: TestAppMonitor_ReconciliationErrorDoesNotStopTheLoop (0.00s) 2026-10-22T08:24:08.495546547Z === RUN TestAppMonitor_StartIsIdempotent 2026-10-22T08:24:08.495555861Z --- PASS: TestAppMonitor_StartIsIdempotent (0.00s) 2026-10-22T08:24:08.495564246Z === RUN TestAppMonitor_StopCancelsAndJoins 2026-10-22T08:24:08.495577471Z --- PASS: TestAppMonitor_StopCancelsAndJoins (0.03s) 2026-10-22T08:24:08.495587127Z === RUN TestAppMonitor_NilReconcilerNeverStarts 2026-10-22T08:24:08.495619186Z --- PASS: TestAppMonitor_NilReconcilerNeverStarts (0.00s) 2026-10-22T08:24:08.49564147Z === RUN TestAppTrafficPublisher_RebuildSkipsStoppedApps 2026-10-22T08:24:08.495664331Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.495682929Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=0 2026-10-22T08:24:08.495697585Z --- PASS: TestAppTrafficPublisher_RebuildSkipsStoppedApps (0.00s) 2026-10-22T08:24:08.495712217Z === RUN TestAppTrafficPublisher_AdmissionHonorsContextCancellation 2026-10-22T08:24:08.49572889Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=0 2026-10-22T08:24:08.495743577Z --- PASS: TestAppTrafficPublisher_AdmissionHonorsContextCancellation (0.00s) 2026-10-22T08:24:08.495760009Z === RUN TestBuildAppMountPolicies_ValidConfigUnmarshal 2026-10-22T08:24:08.495776352Z --- PASS: TestBuildAppMountPolicies_ValidConfigUnmarshal (0.00s) 2026-10-22T08:24:08.495788228Z === RUN TestBuildAppMountPolicies_Invalid 2026-10-22T08:24:08.495802312Z === RUN TestBuildAppMountPolicies_Invalid/empty_source 2026-10-22T08:24:08.495817681Z === RUN TestBuildAppMountPolicies_Invalid/relative_source 2026-10-22T08:24:08.495837218Z === RUN TestBuildAppMountPolicies_Invalid/empty_allowed_apps 2026-10-22T08:24:08.495853989Z === RUN TestBuildAppMountPolicies_Invalid/empty_allowed_services 2026-10-22T08:24:08.495868033Z === RUN TestBuildAppMountPolicies_Invalid/unclean_root 2026-10-22T08:24:08.495877156Z --- PASS: TestBuildAppMountPolicies_Invalid (0.00s) 2026-10-22T08:24:08.495897285Z --- PASS: TestBuildAppMountPolicies_Invalid/empty_source (0.00s) 2026-10-22T08:24:08.49591517Z --- PASS: TestBuildAppMountPolicies_Invalid/relative_source (0.00s) 2026-10-22T08:24:08.495935879Z --- PASS: TestBuildAppMountPolicies_Invalid/empty_allowed_apps (0.00s) 2026-10-22T08:24:08.495959011Z --- PASS: TestBuildAppMountPolicies_Invalid/empty_allowed_services (0.00s) 2026-10-22T08:24:08.495980899Z --- PASS: TestBuildAppMountPolicies_Invalid/unclean_root (0.00s) 2026-10-22T08:24:08.495999378Z === RUN TestRedactedBindPolicyReason_RedactsConfiguredValues 2026-10-22T08:24:08.496013425Z --- PASS: TestRedactedBindPolicyReason_RedactsConfiguredValues (0.00s) 2026-10-22T08:24:08.496024931Z === RUN TestBuildAppMountPolicies_DefaultRootIsSourceParent 2026-10-22T08:24:08.496034352Z --- PASS: TestBuildAppMountPolicies_DefaultRootIsSourceParent (0.00s) 2026-10-22T08:24:08.496042957Z === RUN TestConfig_AppMountsDefaultsEmpty 2026-10-22T08:24:08.496064055Z --- PASS: TestConfig_AppMountsDefaultsEmpty (0.00s) 2026-10-22T08:24:08.496078792Z === RUN TestAppTrafficPublisher_PublishesIndexOnlyAfterGraphApply 2026-10-22T08:24:08.496095544Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.496111048Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.496125341Z --- PASS: TestAppTrafficPublisher_PublishesIndexOnlyAfterGraphApply (0.00s) 2026-10-22T08:24:08.496139752Z === RUN TestAppTrafficPublisher_GraphFailureKeepsPreviousGeneration 2026-10-22T08:24:08.496150733Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.496161049Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.496170579Z --- PASS: TestAppTrafficPublisher_GraphFailureKeepsPreviousGeneration (0.00s) 2026-10-22T08:24:08.496181862Z === RUN TestAppTrafficPublisher_WithdrawalStaysFailClosedWhenGraphApplyFails 2026-10-22T08:24:08.496199941Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.496217589Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.496234705Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.496251603Z --- PASS: TestAppTrafficPublisher_WithdrawalStaysFailClosedWhenGraphApplyFails (0.01s) 2026-10-22T08:24:08.496265966Z === RUN TestAppTrafficPublisher_ProjectionFailureAppliesNoGraph 2026-10-22T08:24:08.496278667Z 2026-10-22T08:24:06Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.496288889Z --- PASS: TestAppTrafficPublisher_ProjectionFailureAppliesNoGraph (0.00s) 2026-10-22T08:24:08.496297973Z === RUN TestObserveSchedulerNextRun_ReadsTheLiveEntry 2026-10-22T08:24:08.496307291Z --- PASS: TestObserveSchedulerNextRun_ReadsTheLiveEntry (0.00s) 2026-10-22T08:24:08.496315892Z === RUN TestObserveSchedulerNextRun_NilSafe 2026-10-22T08:24:08.496330538Z --- PASS: TestObserveSchedulerNextRun_NilSafe (0.00s) 2026-10-22T08:24:08.496339877Z === RUN TestBuildDNSConfigFromConfig 2026-10-22T08:24:08.496348923Z --- PASS: TestBuildDNSConfigFromConfig (0.00s) 2026-10-22T08:24:08.49635942Z === RUN TestBuildDNSConfigRejectsInvalidDuration 2026-10-22T08:24:08.496370509Z --- PASS: TestBuildDNSConfigRejectsInvalidDuration (0.00s) 2026-10-22T08:24:08.496379278Z === RUN TestDisableDumpable 2026-10-22T08:24:08.49638833Z --- PASS: TestDisableDumpable (0.00s) 2026-10-22T08:24:08.496397348Z === RUN TestGCBarrierExcludesExclusiveDuringShared 2026-10-22T08:24:08.496406636Z --- PASS: TestGCBarrierExcludesExclusiveDuringShared (0.05s) 2026-10-22T08:24:08.496416265Z === RUN TestGCBarrierExcludesSharedDuringExclusive 2026-10-22T08:24:08.496422471Z --- PASS: TestGCBarrierExcludesSharedDuringExclusive (0.05s) 2026-10-22T08:24:08.496427198Z === RUN TestGCBarrierCancellation 2026-10-22T08:24:08.496437447Z --- PASS: TestGCBarrierCancellation (0.00s) 2026-10-22T08:24:08.49644961Z === RUN TestGCBarrierDeterministicHandoff 2026-10-22T08:24:08.496460797Z --- PASS: TestGCBarrierDeterministicHandoff (0.10s) 2026-10-22T08:24:08.496471173Z === RUN TestGCBarrierConcurrentSharedHolders 2026-10-22T08:24:08.496480208Z --- PASS: TestGCBarrierConcurrentSharedHolders (0.00s) 2026-10-22T08:24:08.496501589Z === RUN TestGCBarrierLeaseReleaseIsIdempotent 2026-10-22T08:24:08.496538041Z --- PASS: TestGCBarrierLeaseReleaseIsIdempotent (0.00s) 2026-10-22T08:24:08.49655248Z === RUN TestInitConfigHTTPTimeoutDefaults 2026-10-22T08:24:08.496563048Z --- PASS: TestInitConfigHTTPTimeoutDefaults (0.00s) 2026-10-22T08:24:08.496579556Z === RUN TestInitConfigHTTPTimeoutFileOverride 2026-10-22T08:24:08.496598188Z --- PASS: TestInitConfigHTTPTimeoutFileOverride (0.00s) 2026-10-22T08:24:08.496608767Z === RUN TestInitConfigHTTPTimeoutEnvOverride 2026-10-22T08:24:08.496618405Z --- PASS: TestInitConfigHTTPTimeoutEnvOverride (0.00s) 2026-10-22T08:24:08.496629435Z === RUN TestInitConfigRejectsInvalidHTTPTimeouts 2026-10-22T08:24:08.496644554Z === RUN TestInitConfigRejectsInvalidHTTPTimeouts/malformed_registry 2026-10-22T08:24:08.496660584Z === RUN TestInitConfigRejectsInvalidHTTPTimeouts/negative_registry 2026-10-22T08:24:08.496675536Z === RUN TestInitConfigRejectsInvalidHTTPTimeouts/zero_registry 2026-10-22T08:24:08.496691514Z === RUN TestInitConfigRejectsInvalidHTTPTimeouts/malformed_traffic 2026-10-22T08:24:08.496705963Z === RUN TestInitConfigRejectsInvalidHTTPTimeouts/negative_traffic 2026-10-22T08:24:08.496721775Z === RUN TestInitConfigRejectsInvalidHTTPTimeouts/zero_traffic 2026-10-22T08:24:08.496736125Z --- PASS: TestInitConfigRejectsInvalidHTTPTimeouts (0.02s) 2026-10-22T08:24:08.496760017Z --- PASS: TestInitConfigRejectsInvalidHTTPTimeouts/malformed_registry (0.00s) 2026-10-22T08:24:08.496784963Z --- PASS: TestInitConfigRejectsInvalidHTTPTimeouts/negative_registry (0.00s) 2026-10-22T08:24:08.496806998Z --- PASS: TestInitConfigRejectsInvalidHTTPTimeouts/zero_registry (0.00s) 2026-10-22T08:24:08.49683044Z --- PASS: TestInitConfigRejectsInvalidHTTPTimeouts/malformed_traffic (0.00s) 2026-10-22T08:24:08.496854862Z --- PASS: TestInitConfigRejectsInvalidHTTPTimeouts/negative_traffic (0.00s) 2026-10-22T08:24:08.496877657Z --- PASS: TestInitConfigRejectsInvalidHTTPTimeouts/zero_traffic (0.01s) 2026-10-22T08:24:08.496891406Z === RUN TestInitConfigRejectsInvalidHTTPTimeoutFromEnv 2026-10-22T08:24:08.49690951Z --- PASS: TestInitConfigRejectsInvalidHTTPTimeoutFromEnv (0.01s) 2026-10-22T08:24:08.496919591Z === RUN TestStartServerAppliesConfiguredTimeouts 2026-10-22T08:24:08.496930325Z 2026-10-22T08:24:06Z INF test server starting address=127.0.0.1:0 2026-10-22T08:24:08.496953955Z --- PASS: TestStartServerAppliesConfiguredTimeouts (0.00s) 2026-10-22T08:24:08.496969166Z === RUN TestStartServerFallsBackToDefaultTimeouts 2026-10-22T08:24:08.49698453Z 2026-10-22T08:24:06Z INF test server starting address=127.0.0.1:0 2026-10-22T08:24:08.497000063Z --- PASS: TestStartServerFallsBackToDefaultTimeouts (0.00s) 2026-10-22T08:24:08.497013702Z === RUN TestStartRegistryServersRejectsInvalidTimeouts 2026-10-22T08:24:08.497028211Z --- PASS: TestStartRegistryServersRejectsInvalidTimeouts (0.00s) 2026-10-22T08:24:08.497040985Z === RUN TestNewKernel 2026-10-22T08:24:08.49705247Z === PAUSE TestNewKernel 2026-10-22T08:24:08.4970662Z === RUN TestKernelClose_QuiescenceTimeoutSkipsCleanup 2026-10-22T08:24:08.497090332Z === PAUSE TestKernelClose_QuiescenceTimeoutSkipsCleanup 2026-10-22T08:24:08.497105089Z === RUN TestKernelClose_CleansUpAfterQuiescence 2026-10-22T08:24:08.49711927Z === PAUSE TestKernelClose_CleansUpAfterQuiescence 2026-10-22T08:24:08.497129336Z === RUN TestKernelClose_WithoutAppAdministrationStillCleansUp 2026-10-22T08:24:08.497139264Z === PAUSE TestKernelClose_WithoutAppAdministrationStillCleansUp 2026-10-22T08:24:08.497148266Z === RUN TestLocalAdminSocketServesAppSurfaceOverUnix 2026-10-22T08:24:08.49716417Z 2026-10-22T08:24:06Z INF local admin socket listening path=/tmp/TestLocalAdminSocketServesAppSurfaceOverUnix3763806493/001/gordon/admin.sock 2026-10-22T08:24:08.497181514Z 2026-10-22T08:24:06Z INF local admin socket stopped 2026-10-22T08:24:08.497197294Z --- PASS: TestLocalAdminSocketServesAppSurfaceOverUnix (0.00s) 2026-10-22T08:24:08.497211034Z === RUN TestLocalAdminSocketTCPAdminStaysDisabled 2026-10-22T08:24:08.497228227Z 2026-10-22T08:24:06Z WRN auth disabled: admin API endpoints are not registered 2026-10-22T08:24:08.497245547Z 2026-10-22T08:24:06Z INF local admin socket listening path=/tmp/TestLocalAdminSocketTCPAdminStaysDisabled1535729673/001/gordon/admin.sock 2026-10-22T08:24:08.497261034Z 2026-10-22T08:24:06Z INF local admin socket stopped 2026-10-22T08:24:08.497276733Z --- PASS: TestLocalAdminSocketTCPAdminStaysDisabled (0.00s) 2026-10-22T08:24:08.497290687Z === RUN TestLocalAdminSocketCloseLeavesReplacementFile 2026-10-22T08:24:08.497308126Z 2026-10-22T08:24:06Z INF local admin socket listening path=/tmp/TestLocalAdminSocketCloseLeavesReplacementFile111065501/001/gordon/admin.sock 2026-10-22T08:24:08.497336653Z 2026-10-22T08:24:06Z WRN failed to remove local admin socket error="unsafe local admin path: local admin socket /tmp/TestLocalAdminSocketCloseLeavesReplacementFile111065501/001/gordon/admin.sock was replaced; not removing it" path=/tmp/TestLocalAdminSocketCloseLeavesReplacementFile111065501/001/gordon/admin.sock 2026-10-22T08:24:08.497355926Z --- PASS: TestLocalAdminSocketCloseLeavesReplacementFile (0.00s) 2026-10-22T08:24:08.497370092Z === RUN TestStartLocalAdminServerSkipsWithoutAdminHandler 2026-10-22T08:24:08.497383618Z --- PASS: TestStartLocalAdminServerSkipsWithoutAdminHandler (0.00s) 2026-10-22T08:24:08.49739792Z === RUN TestConfigureViper_ExplicitPathExtensionIsCaseInsensitive 2026-10-22T08:24:08.497420698Z === RUN TestConfigureViper_ExplicitPathExtensionIsCaseInsensitive/lowercase_yaml 2026-10-22T08:24:08.497436791Z === RUN TestConfigureViper_ExplicitPathExtensionIsCaseInsensitive/uppercase_yaml 2026-10-22T08:24:08.49745164Z === RUN TestConfigureViper_ExplicitPathExtensionIsCaseInsensitive/mixed_case_yml 2026-10-22T08:24:08.497468192Z === RUN TestConfigureViper_ExplicitPathExtensionIsCaseInsensitive/uppercase_json 2026-10-22T08:24:08.497483059Z === RUN TestConfigureViper_ExplicitPathExtensionIsCaseInsensitive/uppercase_toml 2026-10-22T08:24:08.497497959Z --- PASS: TestConfigureViper_ExplicitPathExtensionIsCaseInsensitive (0.00s) 2026-10-22T08:24:08.497521239Z --- PASS: TestConfigureViper_ExplicitPathExtensionIsCaseInsensitive/lowercase_yaml (0.00s) 2026-10-22T08:24:08.49754693Z --- PASS: TestConfigureViper_ExplicitPathExtensionIsCaseInsensitive/uppercase_yaml (0.00s) 2026-10-22T08:24:08.497585482Z --- PASS: TestConfigureViper_ExplicitPathExtensionIsCaseInsensitive/mixed_case_yml (0.00s) 2026-10-22T08:24:08.49761469Z --- PASS: TestConfigureViper_ExplicitPathExtensionIsCaseInsensitive/uppercase_json (0.00s) 2026-10-22T08:24:08.497638563Z --- PASS: TestConfigureViper_ExplicitPathExtensionIsCaseInsensitive/uppercase_toml (0.00s) 2026-10-22T08:24:08.497648755Z === RUN TestConfigureViper_UnknownExtensionFallsBackToTOML 2026-10-22T08:24:08.497655178Z --- PASS: TestConfigureViper_UnknownExtensionFallsBackToTOML (0.00s) 2026-10-22T08:24:08.497664775Z === RUN TestStartImagePruneSchedulerRegistersWhenAppsExist 2026-10-22T08:24:08.497679081Z 2026-10-22T08:24:06Z INF image prune scheduler enabled keep_last=3 schedule=daily 2026-10-22T08:24:08.497694095Z --- PASS: TestStartImagePruneSchedulerRegistersWhenAppsExist (0.00s) 2026-10-22T08:24:08.497710247Z === RUN TestStartImagePruneSchedulerDisabledWhenNotConfigured 2026-10-22T08:24:08.497724856Z --- PASS: TestStartImagePruneSchedulerDisabledWhenNotConfigured (0.00s) 2026-10-22T08:24:08.497740824Z === RUN TestStartImagePruneSchedulerRejectsNegativeKeepLast 2026-10-22T08:24:08.49776213Z --- PASS: TestStartImagePruneSchedulerRejectsNegativeKeepLast (0.00s) 2026-10-22T08:24:08.497776957Z === RUN TestPublicTLSReadinessAllowsDNS01WithoutEdgePort 2026-10-22T08:24:08.497792955Z --- PASS: TestPublicTLSReadinessAllowsDNS01WithoutEdgePort (0.00s) 2026-10-22T08:24:08.4978079Z === RUN TestPublicTLSReadinessRejectsAutoResolvedHTTP01WithoutBoundExternalPort80 2026-10-22T08:24:08.497825047Z --- PASS: TestPublicTLSReadinessRejectsAutoResolvedHTTP01WithoutBoundExternalPort80 (0.00s) 2026-10-22T08:24:08.497839883Z === RUN TestEffectivePublicTLSPortPrefersTLSCapableEntrypointOverLegacyTLSPort 2026-10-22T08:24:08.497861853Z --- PASS: TestEffectivePublicTLSPortPrefersTLSCapableEntrypointOverLegacyTLSPort (0.00s) 2026-10-22T08:24:08.497886302Z === RUN TestEffectivePublicTLSPortPrefersDefaultEdgeWithMultipleTLSCapableEntrypoints 2026-10-22T08:24:08.497898752Z --- PASS: TestEffectivePublicTLSPortPrefersDefaultEdgeWithMultipleTLSCapableEntrypoints (0.00s) 2026-10-22T08:24:08.497916442Z === RUN TestEffectivePublicTLSPortUsesSoleNonEdgeTLSCapableEntrypoint 2026-10-22T08:24:08.497925991Z --- PASS: TestEffectivePublicTLSPortUsesSoleNonEdgeTLSCapableEntrypoint (0.00s) 2026-10-22T08:24:08.497936736Z === RUN TestEffectiveProxyPortsIgnoreLegacyServerPortsWithoutEntrypoints 2026-10-22T08:24:08.497947198Z --- PASS: TestEffectiveProxyPortsIgnoreLegacyServerPortsWithoutEntrypoints (0.00s) 2026-10-22T08:24:08.497959331Z === RUN TestEffectivePublicTLSPortReturnsZeroWhenAmbiguousWithoutEdge 2026-10-22T08:24:08.497971925Z --- PASS: TestEffectivePublicTLSPortReturnsZeroWhenAmbiguousWithoutEdge (0.00s) 2026-10-22T08:24:08.497978331Z === RUN TestPublicTLSReadinessRequiresHTTP01ActuallyBoundExternalPort80 2026-10-22T08:24:08.497992661Z === RUN TestPublicTLSReadinessRequiresHTTP01ActuallyBoundExternalPort80/rejects_http_entrypoint_when_smart_tcp_suppresses_standalone_http 2026-10-22T08:24:08.498005675Z === RUN TestPublicTLSReadinessRequiresHTTP01ActuallyBoundExternalPort80/allows_smart_tcp_entrypoint_on_port_80 2026-10-22T08:24:08.498034756Z === RUN TestPublicTLSReadinessRequiresHTTP01ActuallyBoundExternalPort80/rejects_legacy_standalone_http_port_80_without_explicit_entrypoint 2026-10-22T08:24:08.498054631Z === RUN TestPublicTLSReadinessRequiresHTTP01ActuallyBoundExternalPort80/rejects_legacy_port_80_when_smart_tcp_suppresses_standalone_http 2026-10-22T08:24:08.498065282Z --- PASS: TestPublicTLSReadinessRequiresHTTP01ActuallyBoundExternalPort80 (0.00s) 2026-10-22T08:24:08.498091655Z --- PASS: TestPublicTLSReadinessRequiresHTTP01ActuallyBoundExternalPort80/rejects_http_entrypoint_when_smart_tcp_suppresses_standalone_http (0.00s) 2026-10-22T08:24:08.498127992Z --- PASS: TestPublicTLSReadinessRequiresHTTP01ActuallyBoundExternalPort80/allows_smart_tcp_entrypoint_on_port_80 (0.00s) 2026-10-22T08:24:08.498164953Z --- PASS: TestPublicTLSReadinessRequiresHTTP01ActuallyBoundExternalPort80/rejects_legacy_standalone_http_port_80_without_explicit_entrypoint (0.00s) 2026-10-22T08:24:08.498198563Z --- PASS: TestPublicTLSReadinessRequiresHTTP01ActuallyBoundExternalPort80/rejects_legacy_port_80_when_smart_tcp_suppresses_standalone_http (0.00s) 2026-10-22T08:24:08.498211069Z === RUN TestPKIInitializesForSmartTCPEvenWithoutLegacyTLSPort 2026-10-22T08:24:08.498239036Z 2026-10-22T08:24:06Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.498271135Z 2026-10-22T08:24:06Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:06Z 2026-10-22T08:24:08.498297212Z --- PASS: TestPKIInitializesForSmartTCPEvenWithoutLegacyTLSPort (0.00s) 2026-10-22T08:24:08.498315685Z === RUN TestCertificateSelector_StaticCertWins 2026-10-22T08:24:08.498330636Z --- PASS: TestCertificateSelector_StaticCertWins (0.08s) 2026-10-22T08:24:08.498345032Z === RUN TestCertificateSelector_PublicTLSErrorFallsThroughWithoutLocalPKI 2026-10-22T08:24:08.498359578Z --- PASS: TestCertificateSelector_PublicTLSErrorFallsThroughWithoutLocalPKI (0.00s) 2026-10-22T08:24:08.498371895Z === RUN TestCertificateSelector_PublicTLSErrorFallsThroughToLocalPKI 2026-10-22T08:24:08.498387578Z 2026-10-22T08:24:06Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.498402895Z 2026-10-22T08:24:06Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:06Z 2026-10-22T08:24:08.498413202Z --- PASS: TestCertificateSelector_PublicTLSErrorFallsThroughToLocalPKI (0.00s) 2026-10-22T08:24:08.498422035Z === RUN TestCertificateSelector_PublicTLSNilNil 2026-10-22T08:24:08.49843333Z --- PASS: TestCertificateSelector_PublicTLSNilNil (0.00s) 2026-10-22T08:24:08.498442063Z === RUN TestCertificateSelector_NoSource 2026-10-22T08:24:08.498456729Z --- PASS: TestCertificateSelector_NoSource (0.00s) 2026-10-22T08:24:08.498472012Z === RUN TestMatchingStaticCert 2026-10-22T08:24:08.498485355Z --- PASS: TestMatchingStaticCert (0.24s) 2026-10-22T08:24:08.498499324Z === RUN TestNewAppDaemonService_DaemonCancellationReachesInFlightDeploy 2026-10-22T08:24:08.498516902Z --- PASS: TestNewAppDaemonService_DaemonCancellationReachesInFlightDeploy (0.05s) 2026-10-22T08:24:08.498528597Z === RUN TestGracefulShutdown_FailsClosedWhenAppAdministrationDoesNotQuiesce 2026-10-22T08:24:08.498542969Z 2026-10-22T08:24:06Z INF shutting down Gordon... 2026-10-22T08:24:08.498563166Z 2026-10-22T08:24:06Z ERR app administration did not quiesce before the shutdown deadline error="in-flight execution did not unwind" 2026-10-22T08:24:08.498579301Z --- PASS: TestGracefulShutdown_FailsClosedWhenAppAdministrationDoesNotQuiesce (0.00s) 2026-10-22T08:24:08.498593683Z === RUN TestGracefulShutdown_QuiescesAppAdministrationBeforeClosingState 2026-10-22T08:24:08.498609389Z 2026-10-22T08:24:06Z INF shutting down Gordon... 2026-10-22T08:24:08.498619433Z 2026-10-22T08:24:06Z INF Gordon stopped 2026-10-22T08:24:08.498628792Z --- PASS: TestGracefulShutdown_QuiescesAppAdministrationBeforeClosingState (0.00s) 2026-10-22T08:24:08.498639962Z === RUN TestBuildAuthConfig_UsesConfigEnabledFlag 2026-10-22T08:24:08.498704445Z --- PASS: TestBuildAuthConfig_UsesConfigEnabledFlag (0.00s) 2026-10-22T08:24:08.498775974Z === RUN TestResolveSecretsBackend_RejectsMissingBackend 2026-10-22T08:24:08.498844914Z --- PASS: TestResolveSecretsBackend_RejectsMissingBackend (0.00s) 2026-10-22T08:24:08.498860815Z === RUN TestResolveSecretsBackend_RejectsUnknownBackend 2026-10-22T08:24:08.498875897Z --- PASS: TestResolveSecretsBackend_RejectsUnknownBackend (0.00s) 2026-10-22T08:24:08.498888266Z === RUN TestResolveAuthType_RejectsPassword 2026-10-22T08:24:08.49890027Z --- PASS: TestResolveAuthType_RejectsPassword (0.00s) 2026-10-22T08:24:08.498913404Z === RUN TestResolveAuthType_AcceptsToken 2026-10-22T08:24:08.498924874Z --- PASS: TestResolveAuthType_AcceptsToken (0.00s) 2026-10-22T08:24:08.498934022Z === RUN TestResolveAuthType_AcceptsEmpty 2026-10-22T08:24:08.498940022Z --- PASS: TestResolveAuthType_AcceptsEmpty (0.00s) 2026-10-22T08:24:08.498946244Z === RUN TestLoadConfig_DoesNotDefaultSecretsBackendToUnsafe 2026-10-22T08:24:08.498956098Z --- PASS: TestLoadConfig_DoesNotDefaultSecretsBackendToUnsafe (0.00s) 2026-10-22T08:24:08.498965565Z === RUN TestLoadSecretUnsafeRejectsTraversalAndAbsolutePaths 2026-10-22T08:24:08.498989082Z === RUN TestLoadSecretUnsafeRejectsTraversalAndAbsolutePaths/../outside 2026-10-22T08:24:08.499008894Z === RUN TestLoadSecretUnsafeRejectsTraversalAndAbsolutePaths//tmp/TestLoadSecretUnsafeRejectsTraversalAndAbsolutePaths3403825242/001/outside 2026-10-22T08:24:08.499023411Z --- PASS: TestLoadSecretUnsafeRejectsTraversalAndAbsolutePaths (0.00s) 2026-10-22T08:24:08.49904772Z --- PASS: TestLoadSecretUnsafeRejectsTraversalAndAbsolutePaths/../outside (0.00s) 2026-10-22T08:24:08.499083515Z --- PASS: TestLoadSecretUnsafeRejectsTraversalAndAbsolutePaths//tmp/TestLoadSecretUnsafeRejectsTraversalAndAbsolutePaths3403825242/001/outside (0.00s) 2026-10-22T08:24:08.499099553Z === RUN TestLoadSecretUnsafeAllowsRelativePathUnderSecretsDir 2026-10-22T08:24:08.499115837Z --- PASS: TestLoadSecretUnsafeAllowsRelativePathUnderSecretsDir (0.00s) 2026-10-22T08:24:08.499128795Z === RUN TestLoadSecretUnsafeRejectsMissingCandidate 2026-10-22T08:24:08.499141798Z --- PASS: TestLoadSecretUnsafeRejectsMissingCandidate (0.00s) 2026-10-22T08:24:08.499152598Z === RUN TestLoadSecretUnsafeRejectsIntermediateSymlinkEscape 2026-10-22T08:24:08.499162414Z --- PASS: TestLoadSecretUnsafeRejectsIntermediateSymlinkEscape (0.00s) 2026-10-22T08:24:08.499171032Z === RUN TestLoadSecretUnsafeRejectsNonRegularFile 2026-10-22T08:24:08.49917975Z --- PASS: TestLoadSecretUnsafeRejectsNonRegularFile (0.00s) 2026-10-22T08:24:08.499193456Z === RUN TestLoadSecretUnsafeRejectsSymlinkEscape 2026-10-22T08:24:08.499205629Z --- PASS: TestLoadSecretUnsafeRejectsSymlinkEscape (0.00s) 2026-10-22T08:24:08.499217334Z === RUN TestValidateBackupRetentionRejectsNegativeValues 2026-10-22T08:24:08.499229073Z === RUN TestValidateBackupRetentionRejectsNegativeValues/hourly 2026-10-22T08:24:08.49924285Z === RUN TestValidateBackupRetentionRejectsNegativeValues/daily 2026-10-22T08:24:08.499255534Z === RUN TestValidateBackupRetentionRejectsNegativeValues/weekly 2026-10-22T08:24:08.499267454Z === RUN TestValidateBackupRetentionRejectsNegativeValues/monthly 2026-10-22T08:24:08.499279376Z --- PASS: TestValidateBackupRetentionRejectsNegativeValues (0.00s) 2026-10-22T08:24:08.499304127Z --- PASS: TestValidateBackupRetentionRejectsNegativeValues/hourly (0.00s) 2026-10-22T08:24:08.499326949Z --- PASS: TestValidateBackupRetentionRejectsNegativeValues/daily (0.00s) 2026-10-22T08:24:08.499350094Z --- PASS: TestValidateBackupRetentionRejectsNegativeValues/weekly (0.00s) 2026-10-22T08:24:08.499374614Z --- PASS: TestValidateBackupRetentionRejectsNegativeValues/monthly (0.00s) 2026-10-22T08:24:08.499389001Z === RUN TestValidateBackupRetentionAcceptsZeroAndPositiveValues 2026-10-22T08:24:08.499403761Z === RUN TestValidateBackupRetentionAcceptsZeroAndPositiveValues/positive_values 2026-10-22T08:24:08.499420197Z === RUN TestValidateBackupRetentionAcceptsZeroAndPositiveValues/zero_values 2026-10-22T08:24:08.49943038Z --- PASS: TestValidateBackupRetentionAcceptsZeroAndPositiveValues (0.00s) 2026-10-22T08:24:08.499451139Z --- PASS: TestValidateBackupRetentionAcceptsZeroAndPositiveValues/positive_values (0.00s) 2026-10-22T08:24:08.499472316Z --- PASS: TestValidateBackupRetentionAcceptsZeroAndPositiveValues/zero_values (0.00s) 2026-10-22T08:24:08.499486146Z === RUN TestValidateBackupRetentionAcceptsLegacyBackupsConfig 2026-10-22T08:24:08.49949869Z --- PASS: TestValidateBackupRetentionAcceptsLegacyBackupsConfig (0.00s) 2026-10-22T08:24:08.499510631Z === RUN TestDatabaseBackupSettingsPreferEnabledLegacySchedule 2026-10-22T08:24:08.499522767Z --- PASS: TestDatabaseBackupSettingsPreferEnabledLegacySchedule (0.00s) 2026-10-22T08:24:08.4995361Z === RUN TestValidateVolumeBackupConfig 2026-10-22T08:24:08.499549355Z === RUN TestValidateVolumeBackupConfig/disabled_accepts_defaults 2026-10-22T08:24:08.49956212Z === RUN TestValidateVolumeBackupConfig/enabled_requires_bucket_and_region 2026-10-22T08:24:08.499574121Z === RUN TestValidateVolumeBackupConfig/enabled_accepts_s3_config 2026-10-22T08:24:08.49958967Z === RUN TestValidateVolumeBackupConfig/schedule_defaults_to_daily_at_the_preset_time 2026-10-22T08:24:08.499602825Z === RUN TestValidateVolumeBackupConfig/schedule_rejects_invalid_time 2026-10-22T08:24:08.499617401Z === RUN TestValidateVolumeBackupConfig/schedule_rejects_unknown_preset 2026-10-22T08:24:08.499632812Z === RUN TestValidateVolumeBackupConfig/storage_class_is_normalized_and_passed_through 2026-10-22T08:24:08.499649205Z === RUN TestValidateVolumeBackupConfig/empty_storage_class_keeps_the_bucket_default 2026-10-22T08:24:08.499660108Z === RUN TestValidateVolumeBackupConfig/storage_class_rejects_unsafe_values 2026-10-22T08:24:08.499670135Z === RUN TestValidateVolumeBackupConfig/zstd_requires_helper_image_with_zstd 2026-10-22T08:24:08.499679665Z === RUN TestValidateVolumeBackupConfig/enabled_rejects_zero_retention 2026-10-22T08:24:08.499690339Z --- PASS: TestValidateVolumeBackupConfig (0.00s) 2026-10-22T08:24:08.499711971Z --- PASS: TestValidateVolumeBackupConfig/disabled_accepts_defaults (0.00s) 2026-10-22T08:24:08.499736199Z --- PASS: TestValidateVolumeBackupConfig/enabled_requires_bucket_and_region (0.00s) 2026-10-22T08:24:08.499759423Z --- PASS: TestValidateVolumeBackupConfig/enabled_accepts_s3_config (0.00s) 2026-10-22T08:24:08.499787092Z --- PASS: TestValidateVolumeBackupConfig/schedule_defaults_to_daily_at_the_preset_time (0.00s) 2026-10-22T08:24:08.499812019Z --- PASS: TestValidateVolumeBackupConfig/schedule_rejects_invalid_time (0.00s) 2026-10-22T08:24:08.49983682Z --- PASS: TestValidateVolumeBackupConfig/schedule_rejects_unknown_preset (0.00s) 2026-10-22T08:24:08.499864891Z --- PASS: TestValidateVolumeBackupConfig/storage_class_is_normalized_and_passed_through (0.00s) 2026-10-22T08:24:08.499890448Z --- PASS: TestValidateVolumeBackupConfig/empty_storage_class_keeps_the_bucket_default (0.00s) 2026-10-22T08:24:08.4999176Z --- PASS: TestValidateVolumeBackupConfig/storage_class_rejects_unsafe_values (0.00s) 2026-10-22T08:24:08.499942472Z --- PASS: TestValidateVolumeBackupConfig/zstd_requires_helper_image_with_zstd (0.00s) 2026-10-22T08:24:08.49996659Z --- PASS: TestValidateVolumeBackupConfig/enabled_rejects_zero_retention (0.00s) 2026-10-22T08:24:08.499979879Z === RUN TestLoadConfigSetsBackupDefaults 2026-10-22T08:24:08.499992103Z --- PASS: TestLoadConfigSetsBackupDefaults (0.00s) 2026-10-22T08:24:08.500003225Z === RUN TestResolveBackupSchedule 2026-10-22T08:24:08.500015281Z === RUN TestResolveBackupSchedule/valid_values 2026-10-22T08:24:08.500031235Z === RUN TestResolveBackupSchedule/valid_values/hourly 2026-10-22T08:24:08.500045558Z === RUN TestResolveBackupSchedule/valid_values/daily 2026-10-22T08:24:08.500060215Z === RUN TestResolveBackupSchedule/valid_values/weekly 2026-10-22T08:24:08.500076035Z === RUN TestResolveBackupSchedule/valid_values/monthly 2026-10-22T08:24:08.500087643Z === RUN TestResolveBackupSchedule/valid_values/_DAILY_ 2026-10-22T08:24:08.500097725Z === RUN TestResolveBackupSchedule/invalid_value 2026-10-22T08:24:08.500109517Z === RUN TestResolveBackupSchedule/time_is_read_in_server_local_time 2026-10-22T08:24:08.500126914Z === RUN TestResolveBackupSchedule/invalid_time_names_the_database_key 2026-10-22T08:24:08.500143261Z --- PASS: TestResolveBackupSchedule (0.00s) 2026-10-22T08:24:08.500162363Z --- PASS: TestResolveBackupSchedule/valid_values (0.00s) 2026-10-22T08:24:08.500187052Z --- PASS: TestResolveBackupSchedule/valid_values/hourly (0.00s) 2026-10-22T08:24:08.500211368Z --- PASS: TestResolveBackupSchedule/valid_values/daily (0.00s) 2026-10-22T08:24:08.500237445Z --- PASS: TestResolveBackupSchedule/valid_values/weekly (0.00s) 2026-10-22T08:24:08.500265279Z --- PASS: TestResolveBackupSchedule/valid_values/monthly (0.00s) 2026-10-22T08:24:08.50029437Z --- PASS: TestResolveBackupSchedule/valid_values/_DAILY_ (0.00s) 2026-10-22T08:24:08.500317806Z --- PASS: TestResolveBackupSchedule/invalid_value (0.00s) 2026-10-22T08:24:08.500338646Z --- PASS: TestResolveBackupSchedule/time_is_read_in_server_local_time (0.00s) 2026-10-22T08:24:08.500357735Z --- PASS: TestResolveBackupSchedule/invalid_time_names_the_database_key (0.00s) 2026-10-22T08:24:08.50036962Z === RUN TestInitConfigRejectsLegacyPortsWithoutEntrypoints 2026-10-22T08:24:08.500386568Z --- PASS: TestInitConfigRejectsLegacyPortsWithoutEntrypoints (0.00s) 2026-10-22T08:24:08.50039989Z === RUN TestInitConfigAcceptsLegacyPortsWithEntrypoint 2026-10-22T08:24:08.500414025Z --- PASS: TestInitConfigAcceptsLegacyPortsWithEntrypoint (0.01s) 2026-10-22T08:24:08.500427093Z === RUN TestInitConfigRejectsRetiredAppKeys 2026-10-22T08:24:08.500439372Z --- PASS: TestInitConfigRejectsRetiredAppKeys (0.00s) 2026-10-22T08:24:08.500451969Z === RUN TestInitConfigRejectsRetiredVolumeBackupInterval 2026-10-22T08:24:08.500465319Z --- PASS: TestInitConfigRejectsRetiredVolumeBackupInterval (0.01s) 2026-10-22T08:24:08.500477096Z === RUN TestInitConfigRejectsRetiredEnvSection 2026-10-22T08:24:08.500488696Z --- PASS: TestInitConfigRejectsRetiredEnvSection (0.00s) 2026-10-22T08:24:08.500500606Z === RUN TestInitConfigAcceptsShippedExampleConfig 2026-10-22T08:24:08.500513927Z --- PASS: TestInitConfigAcceptsShippedExampleConfig (0.00s) 2026-10-22T08:24:08.500526101Z === RUN TestCreateAuthService_Disabled_ReturnsNilServices 2026-10-22T08:24:08.500538064Z === PAUSE TestCreateAuthService_Disabled_ReturnsNilServices 2026-10-22T08:24:08.500550506Z === RUN TestCreateHTTPHandlers_LocalMode_DisablesAdminRoutes 2026-10-22T08:24:08.500563997Z === PAUSE TestCreateHTTPHandlers_LocalMode_DisablesAdminRoutes 2026-10-22T08:24:08.500576258Z === RUN TestCreateHTTPHandlers_LocalMode_RestrictsRegistryToLoopback 2026-10-22T08:24:08.500588062Z === PAUSE TestCreateHTTPHandlers_LocalMode_RestrictsRegistryToLoopback 2026-10-22T08:24:08.500600164Z === RUN TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths 2026-10-22T08:24:08.500613535Z === PAUSE TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths 2026-10-22T08:24:08.500625972Z === RUN TestCreateHTTPHandlers_TrustedProxyHTTP_DoesNotServeOnboarding 2026-10-22T08:24:08.500637926Z === PAUSE TestCreateHTTPHandlers_TrustedProxyHTTP_DoesNotServeOnboarding 2026-10-22T08:24:08.500654171Z === RUN TestCreateHTTPHandlers_TrustedProxyWellKnownCACertPath_DoesNotServeOnboardingResource 2026-10-22T08:24:08.500670523Z === PAUSE TestCreateHTTPHandlers_TrustedProxyWellKnownCACertPath_DoesNotServeOnboardingResource 2026-10-22T08:24:08.50068527Z === RUN TestCreateHTTPHandlers_ForceHTTPSRedirect_DoesNotBypassDirectOnboarding 2026-10-22T08:24:08.500697823Z === PAUSE TestCreateHTTPHandlers_ForceHTTPSRedirect_DoesNotBypassDirectOnboarding 2026-10-22T08:24:08.500711874Z === RUN TestCreateHTTPHandlers_RedirectUsesSelectedEntrypointPorts 2026-10-22T08:24:08.500725456Z === PAUSE TestCreateHTTPHandlers_RedirectUsesSelectedEntrypointPorts 2026-10-22T08:24:08.500737866Z === RUN TestCreateHTTPHandlers_OnboardingUsesSelectedEntrypointPorts 2026-10-22T08:24:08.500747722Z === PAUSE TestCreateHTTPHandlers_OnboardingUsesSelectedEntrypointPorts 2026-10-22T08:24:08.500761639Z === RUN TestCreateHTTPHandlers_HTTPSOnboarding_RemainsAvailableOnGordonDomain 2026-10-22T08:24:08.500774596Z === PAUSE TestCreateHTTPHandlers_HTTPSOnboarding_RemainsAvailableOnGordonDomain 2026-10-22T08:24:08.50078448Z === RUN TestCreateHTTPHandlers_HTTPSOnboarding_DoesNotPreemptAppHostCAPath 2026-10-22T08:24:08.500801502Z === PAUSE TestCreateHTTPHandlers_HTTPSOnboarding_DoesNotPreemptAppHostCAPath 2026-10-22T08:24:08.500816633Z === RUN TestCreateHTTPHandlers_HTTPSOnboarding_HEADRoutesRemainAvailable 2026-10-22T08:24:08.500833264Z === PAUSE TestCreateHTTPHandlers_HTTPSOnboarding_HEADRoutesRemainAvailable 2026-10-22T08:24:08.500849879Z === RUN TestCreateHTTPHandlers_DirectHTTPOnboarding_HEADRoutesRemainAvailable 2026-10-22T08:24:08.500876953Z === PAUSE TestCreateHTTPHandlers_DirectHTTPOnboarding_HEADRoutesRemainAvailable 2026-10-22T08:24:08.500905946Z === RUN TestCreateHTTPHandlers_DirectHTTPForbiddenHEAD_ReturnsForbidden 2026-10-22T08:24:08.50092355Z === PAUSE TestCreateHTTPHandlers_DirectHTTPForbiddenHEAD_ReturnsForbidden 2026-10-22T08:24:08.500935731Z === RUN TestCreateHTTPHandlers_DirectHTTPACMEChallenge_Returns404 2026-10-22T08:24:08.50094782Z === PAUSE TestCreateHTTPHandlers_DirectHTTPACMEChallenge_Returns404 2026-10-22T08:24:08.500969688Z === RUN TestCreateHTTPHandlers_TLSDisabled_DoesNotServeHTTPOnboarding 2026-10-22T08:24:08.500982986Z === PAUSE TestCreateHTTPHandlers_TLSDisabled_DoesNotServeHTTPOnboarding 2026-10-22T08:24:08.500995278Z === RUN TestStartPublicTLSRuntime_ReconcilesAndStartsRenewalLoop 2026-10-22T08:24:08.501008689Z === PAUSE TestStartPublicTLSRuntime_ReconcilesAndStartsRenewalLoop 2026-10-22T08:24:08.501021273Z === RUN TestStartPublicTLSRuntime_NilSvc 2026-10-22T08:24:08.501033234Z === PAUSE TestStartPublicTLSRuntime_NilSvc 2026-10-22T08:24:08.501053009Z === RUN TestStartPublicTLSRuntime_StartsRenewalLoopWhenReconcileFails 2026-10-22T08:24:08.501071332Z === PAUSE TestStartPublicTLSRuntime_StartsRenewalLoopWhenReconcileFails 2026-10-22T08:24:08.501084481Z === RUN TestCreateHTTPHandlers_TLSConfiguredWithoutCA_FailsStartup 2026-10-22T08:24:08.501096709Z === PAUSE TestCreateHTTPHandlers_TLSConfiguredWithoutCA_FailsStartup 2026-10-22T08:24:08.501109014Z === RUN TestBuildRegistryCIDRAllowlistMiddleware_InvalidEntries_DenyAll 2026-10-22T08:24:08.50112518Z === PAUSE TestBuildRegistryCIDRAllowlistMiddleware_InvalidEntries_DenyAll 2026-10-22T08:24:08.501139198Z === RUN TestAccessLog_AdminRemoteRequest_ReachesAuth 2026-10-22T08:24:08.501157894Z === PAUSE TestAccessLog_AdminRemoteRequest_ReachesAuth 2026-10-22T08:24:08.501174399Z === RUN TestAccessLog_RegistryRejectedByLoopbackOnly_IsLogged 2026-10-22T08:24:08.501186753Z === PAUSE TestAccessLog_RegistryRejectedByLoopbackOnly_IsLogged 2026-10-22T08:24:08.501200217Z === RUN TestAccessLog_DenyAllProxy_IsLogged 2026-10-22T08:24:08.501215409Z === PAUSE TestAccessLog_DenyAllProxy_IsLogged 2026-10-22T08:24:08.501228891Z === RUN TestLoadConfigSetsImagePruneDefaults 2026-10-22T08:24:08.501240538Z --- PASS: TestLoadConfigSetsImagePruneDefaults (0.00s) 2026-10-22T08:24:08.501249214Z === RUN TestResolveImagePruneSchedule 2026-10-22T08:24:08.501261836Z === RUN TestResolveImagePruneSchedule/valid_values 2026-10-22T08:24:08.5012717Z === RUN TestResolveImagePruneSchedule/valid_values/hourly 2026-10-22T08:24:08.501280785Z === RUN TestResolveImagePruneSchedule/valid_values/daily 2026-10-22T08:24:08.501294385Z === RUN TestResolveImagePruneSchedule/valid_values/weekly 2026-10-22T08:24:08.501305844Z === RUN TestResolveImagePruneSchedule/valid_values/monthly 2026-10-22T08:24:08.501315487Z === RUN TestResolveImagePruneSchedule/valid_values/_DAILY_ 2026-10-22T08:24:08.501329735Z === RUN TestResolveImagePruneSchedule/invalid_value 2026-10-22T08:24:08.501339582Z --- PASS: TestResolveImagePruneSchedule (0.00s) 2026-10-22T08:24:08.501359332Z --- PASS: TestResolveImagePruneSchedule/valid_values (0.00s) 2026-10-22T08:24:08.501389869Z --- PASS: TestResolveImagePruneSchedule/valid_values/hourly (0.00s) 2026-10-22T08:24:08.501432348Z --- PASS: TestResolveImagePruneSchedule/valid_values/daily (0.00s) 2026-10-22T08:24:08.50146552Z --- PASS: TestResolveImagePruneSchedule/valid_values/weekly (0.00s) 2026-10-22T08:24:08.501496848Z --- PASS: TestResolveImagePruneSchedule/valid_values/monthly (0.00s) 2026-10-22T08:24:08.501529059Z --- PASS: TestResolveImagePruneSchedule/valid_values/_DAILY_ (0.00s) 2026-10-22T08:24:08.501550013Z --- PASS: TestResolveImagePruneSchedule/invalid_value (0.00s) 2026-10-22T08:24:08.501565654Z === RUN TestGetInternalCredentialsFindsRuntimeFile 2026-10-22T08:24:08.501581454Z --- PASS: TestGetInternalCredentialsFindsRuntimeFile (0.00s) 2026-10-22T08:24:08.501595691Z === RUN TestGetInternalCredentialsFallsBackToStale 2026-10-22T08:24:08.501611288Z --- PASS: TestGetInternalCredentialsFallsBackToStale (0.00s) 2026-10-22T08:24:08.501621257Z === RUN TestGetInternalCredentialsNoCandidatesReturnsError 2026-10-22T08:24:08.501630963Z --- PASS: TestGetInternalCredentialsNoCandidatesReturnsError (0.00s) 2026-10-22T08:24:08.501642712Z === RUN TestFindRunningPidFileInLocations_PrefersLiveProcessOverStale 2026-10-22T08:24:08.501655408Z --- PASS: TestFindRunningPidFileInLocations_PrefersLiveProcessOverStale (0.00s) 2026-10-22T08:24:08.501665699Z === RUN TestFindRunningPidFileInLocations_RemovesInvalidAndReturnsError 2026-10-22T08:24:08.501678632Z --- PASS: TestFindRunningPidFileInLocations_RemovesInvalidAndReturnsError (0.00s) 2026-10-22T08:24:08.501691074Z === RUN TestFindRunningPidFileInLocations_NoFiles 2026-10-22T08:24:08.501711629Z --- PASS: TestFindRunningPidFileInLocations_NoFiles (0.00s) 2026-10-22T08:24:08.501726798Z === RUN TestNeedsInternalRegistryListener 2026-10-22T08:24:08.501739214Z === RUN TestNeedsInternalRegistryListener/specific_IPv4 2026-10-22T08:24:08.50175178Z === RUN TestNeedsInternalRegistryListener/specific_IPv6 2026-10-22T08:24:08.501765571Z === RUN TestNeedsInternalRegistryListener/IPv4_wildcard_covers_loopback 2026-10-22T08:24:08.501777868Z === RUN TestNeedsInternalRegistryListener/IPv6_wildcard 2026-10-22T08:24:08.501796461Z === RUN TestNeedsInternalRegistryListener/IPv4_loopback 2026-10-22T08:24:08.501809208Z === RUN TestNeedsInternalRegistryListener/IPv6_loopback 2026-10-22T08:24:08.501822847Z === RUN TestNeedsInternalRegistryListener/empty_wildcard 2026-10-22T08:24:08.501834953Z --- PASS: TestNeedsInternalRegistryListener (0.00s) 2026-10-22T08:24:08.501857824Z --- PASS: TestNeedsInternalRegistryListener/specific_IPv4 (0.00s) 2026-10-22T08:24:08.501881901Z --- PASS: TestNeedsInternalRegistryListener/specific_IPv6 (0.00s) 2026-10-22T08:24:08.501905964Z --- PASS: TestNeedsInternalRegistryListener/IPv4_wildcard_covers_loopback (0.00s) 2026-10-22T08:24:08.501927958Z --- PASS: TestNeedsInternalRegistryListener/IPv6_wildcard (0.00s) 2026-10-22T08:24:08.501951383Z --- PASS: TestNeedsInternalRegistryListener/IPv4_loopback (0.00s) 2026-10-22T08:24:08.501973277Z --- PASS: TestNeedsInternalRegistryListener/IPv6_loopback (0.00s) 2026-10-22T08:24:08.502009303Z --- PASS: TestNeedsInternalRegistryListener/empty_wildcard (0.00s) 2026-10-22T08:24:08.502025451Z === RUN TestSetupConfigHotReload_WatchCallbackInvokesCoordinator 2026-10-22T08:24:08.502039891Z --- PASS: TestSetupConfigHotReload_WatchCallbackInvokesCoordinator (0.00s) 2026-10-22T08:24:08.502055931Z === RUN TestBuildProxyConfig_ParsesMaxBlobSizeWithoutChangingChunkDefault 2026-10-22T08:24:08.502066438Z --- PASS: TestBuildProxyConfig_ParsesMaxBlobSizeWithoutChangingChunkDefault (0.00s) 2026-10-22T08:24:08.502075628Z === RUN TestBuildProxyConfig_DefaultMaxBlobSize 2026-10-22T08:24:08.502085159Z --- PASS: TestBuildProxyConfig_DefaultMaxBlobSize (0.00s) 2026-10-22T08:24:08.502095309Z === RUN TestReloadCoordinator_ApplyLoadedConfig_RebuildsProxyConfigAndPublishesEvent 2026-10-22T08:24:08.50210752Z --- PASS: TestReloadCoordinator_ApplyLoadedConfig_RebuildsProxyConfigAndPublishesEvent (0.00s) 2026-10-22T08:24:08.502143122Z === RUN TestReloadRuntime_RegistersCustomTLSMuxHTTPSFallback 2026-10-22T08:24:08.502159944Z 2026-10-22T08:24:06Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.502180004Z 2026-10-22T08:24:06Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:06Z 2026-10-22T08:24:08.502193428Z --- PASS: TestReloadRuntime_RegistersCustomTLSMuxHTTPSFallback (0.01s) 2026-10-22T08:24:08.502206403Z === RUN TestReloadRuntime_UpdatesManagementHosts 2026-10-22T08:24:08.502217974Z --- PASS: TestReloadRuntime_UpdatesManagementHosts (0.00s) 2026-10-22T08:24:08.502227301Z === RUN TestReloadRuntime_AppliesContainerConfig 2026-10-22T08:24:08.502238564Z --- PASS: TestReloadRuntime_AppliesContainerConfig (0.00s) 2026-10-22T08:24:08.502247143Z === RUN TestReloadRuntime_AppliesTraffic 2026-10-22T08:24:08.502268444Z --- PASS: TestReloadRuntime_AppliesTraffic (0.00s) 2026-10-22T08:24:08.502285307Z === RUN TestReloadRuntime_InvalidPolicyAppliesNothing 2026-10-22T08:24:08.502298163Z --- PASS: TestReloadRuntime_InvalidPolicyAppliesNothing (0.00s) 2026-10-22T08:24:08.502309657Z === RUN TestReloadRuntime_TLSLoadFailureAppliesNothing 2026-10-22T08:24:08.502319164Z --- PASS: TestReloadRuntime_TLSLoadFailureAppliesNothing (0.00s) 2026-10-22T08:24:08.502336213Z === RUN TestWaitForCoreProxyReady_WaitsWithoutPublishingEmptyTraffic 2026-10-22T08:24:08.502347626Z --- PASS: TestWaitForCoreProxyReady_WaitsWithoutPublishingEmptyTraffic (0.00s) 2026-10-22T08:24:08.502359548Z === RUN TestWaitForCoreProxyReady_ObservesContextCancellation 2026-10-22T08:24:08.502371645Z --- PASS: TestWaitForCoreProxyReady_ObservesContextCancellation (0.00s) 2026-10-22T08:24:08.502383404Z === RUN TestReloadCoordinator_StopCancelsOwnedTrailingReloadLifecycle 2026-10-22T08:24:08.502397285Z --- PASS: TestReloadCoordinator_StopCancelsOwnedTrailingReloadLifecycle (0.00s) 2026-10-22T08:24:08.502409452Z === RUN TestReloadCoordinator_DebouncesRepeatedWatchCallbacks 2026-10-22T08:24:08.502422211Z --- PASS: TestReloadCoordinator_DebouncesRepeatedWatchCallbacks (0.08s) 2026-10-22T08:24:08.502434015Z === RUN TestSetupConfigHotReload_CoalescesRepeatedWatcherCallbacks 2026-10-22T08:24:08.502450335Z --- PASS: TestSetupConfigHotReload_CoalescesRepeatedWatcherCallbacks (0.08s) 2026-10-22T08:24:08.502464193Z === RUN TestReloadCoordinator_TrailingReloadAppliesFinalState 2026-10-22T08:24:08.502478369Z --- PASS: TestReloadCoordinator_TrailingReloadAppliesFinalState (0.03s) 2026-10-22T08:24:08.502490565Z === RUN TestReloadCoordinator_InvalidReloadKeepsActiveConfigThenAcceptsValidChange 2026-10-22T08:24:08.502505622Z 2026-10-22T08:24:07Z ERR invalid server.max_proxy_body_size configuration error="invalid size \"INVALID\": missing unit (supported: B, KB, MB, GB, TB)" value=invalid 2026-10-22T08:24:08.502524185Z 2026-10-22T08:24:07Z ERR failed to parse proxy config on reload error="invalid server.max_proxy_body_size configuration: invalid size \"INVALID\": missing unit (supported: B, KB, MB, GB, TB)" 2026-10-22T08:24:08.502539961Z --- PASS: TestReloadCoordinator_InvalidReloadKeepsActiveConfigThenAcceptsValidChange (0.01s) 2026-10-22T08:24:08.502552975Z === RUN TestReloadCoordinator_RetriesImmediatelyAfterFailedReload 2026-10-22T08:24:08.502570998Z 2026-10-22T08:24:07Z ERR failed to reload config error="reload failed" 2026-10-22T08:24:08.502584234Z --- PASS: TestReloadCoordinator_RetriesImmediatelyAfterFailedReload (0.00s) 2026-10-22T08:24:08.502595522Z === RUN TestReloadCoordinator_PublishErrorDoesNotAdvanceDebounceState 2026-10-22T08:24:08.50260908Z 2026-10-22T08:24:07Z ERR failed to publish config reload event error="publish failed" 2026-10-22T08:24:08.502621591Z 2026-10-22T08:24:07Z ERR failed to publish config reload event error="publish failed" 2026-10-22T08:24:08.502633843Z --- PASS: TestReloadCoordinator_PublishErrorDoesNotAdvanceDebounceState (0.00s) 2026-10-22T08:24:08.502643643Z === RUN TestReloadCoordinator_SerializesOverlappingReloadRequests 2026-10-22T08:24:08.502666998Z --- PASS: TestReloadCoordinator_SerializesOverlappingReloadRequests (0.13s) 2026-10-22T08:24:08.502683957Z === RUN TestResolveRuntimeConfig_ExplicitPathPassedThrough 2026-10-22T08:24:08.502700135Z --- PASS: TestResolveRuntimeConfig_ExplicitPathPassedThrough (0.00s) 2026-10-22T08:24:08.502710592Z === RUN TestResolveRuntimeConfig_AutoReturnsEmpty 2026-10-22T08:24:08.502716865Z --- PASS: TestResolveRuntimeConfig_AutoReturnsEmpty (0.00s) 2026-10-22T08:24:08.502727001Z === RUN TestResolveRuntimeConfig_EmptyReturnsEmpty 2026-10-22T08:24:08.502736297Z --- PASS: TestResolveRuntimeConfig_EmptyReturnsEmpty (0.00s) 2026-10-22T08:24:08.502747115Z === RUN TestResolveRuntimeConfig_StripsUnixScheme 2026-10-22T08:24:08.5027588Z --- PASS: TestResolveRuntimeConfig_StripsUnixScheme (0.00s) 2026-10-22T08:24:08.502767459Z === RUN TestInitConfigAcceptsStandaloneServices 2026-10-22T08:24:08.50278096Z --- PASS: TestInitConfigAcceptsStandaloneServices (0.00s) 2026-10-22T08:24:08.502793924Z === RUN TestResolveRuntimeConfig 2026-10-22T08:24:08.502809547Z === RUN TestResolveRuntimeConfig/empty_string_returns_empty 2026-10-22T08:24:08.502823472Z === RUN TestResolveRuntimeConfig/auto_returns_empty 2026-10-22T08:24:08.502837883Z === RUN TestResolveRuntimeConfig/podman_with_XDG_RUNTIME_DIR_and_socket_present 2026-10-22T08:24:08.502854969Z === RUN TestResolveRuntimeConfig/podman_with_XDG_RUNTIME_DIR_but_socket_absent_falls_back_to_system_socket 2026-10-22T08:24:08.502869955Z === RUN TestResolveRuntimeConfig/podman_without_XDG_RUNTIME_DIR_falls_back_to_system_socket 2026-10-22T08:24:08.502880686Z === RUN TestResolveRuntimeConfig/docker_returns_well-known_path 2026-10-22T08:24:08.502891513Z === RUN TestResolveRuntimeConfig/unix://_prefix_is_stripped 2026-10-22T08:24:08.502907017Z === RUN TestResolveRuntimeConfig/bare_path_returned_as-is 2026-10-22T08:24:08.502920242Z --- PASS: TestResolveRuntimeConfig (0.00s) 2026-10-22T08:24:08.502941602Z --- PASS: TestResolveRuntimeConfig/empty_string_returns_empty (0.00s) 2026-10-22T08:24:08.502960653Z --- PASS: TestResolveRuntimeConfig/auto_returns_empty (0.00s) 2026-10-22T08:24:08.502983889Z --- PASS: TestResolveRuntimeConfig/podman_with_XDG_RUNTIME_DIR_and_socket_present (0.00s) 2026-10-22T08:24:08.5030138Z --- PASS: TestResolveRuntimeConfig/podman_with_XDG_RUNTIME_DIR_but_socket_absent_falls_back_to_system_socket (0.00s) 2026-10-22T08:24:08.503043855Z --- PASS: TestResolveRuntimeConfig/podman_without_XDG_RUNTIME_DIR_falls_back_to_system_socket (0.00s) 2026-10-22T08:24:08.503067708Z --- PASS: TestResolveRuntimeConfig/docker_returns_well-known_path (0.00s) 2026-10-22T08:24:08.503090162Z --- PASS: TestResolveRuntimeConfig/unix://_prefix_is_stripped (0.00s) 2026-10-22T08:24:08.503112993Z --- PASS: TestResolveRuntimeConfig/bare_path_returned_as-is (0.00s) 2026-10-22T08:24:08.50312217Z === RUN TestProtectedRuntimePaths_AllSources 2026-10-22T08:24:08.503130858Z --- PASS: TestProtectedRuntimePaths_AllSources (0.00s) 2026-10-22T08:24:08.503145661Z === RUN TestProtectedRuntimePaths_SkipsEmptyAndTCP 2026-10-22T08:24:08.50316096Z --- PASS: TestProtectedRuntimePaths_SkipsEmptyAndTCP (0.00s) 2026-10-22T08:24:08.503175273Z === RUN TestProtectedRuntimePaths_SymlinkAddsBothForms 2026-10-22T08:24:08.503190173Z --- PASS: TestProtectedRuntimePaths_SymlinkAddsBothForms (0.00s) 2026-10-22T08:24:08.503203331Z === RUN TestConfiguredGordonPaths 2026-10-22T08:24:08.503216962Z --- PASS: TestConfiguredGordonPaths (0.00s) 2026-10-22T08:24:08.503226047Z === RUN TestGordonLogLocations 2026-10-22T08:24:08.503234969Z --- PASS: TestGordonLogLocations (0.00s) 2026-10-22T08:24:08.503243207Z === RUN TestReadableLogDirs 2026-10-22T08:24:08.503254447Z --- PASS: TestReadableLogDirs (0.00s) 2026-10-22T08:24:08.503264467Z === RUN TestBuildAppRuntimeSafety_DroppedLogStaysProtected 2026-10-22T08:24:08.503274068Z --- PASS: TestBuildAppRuntimeSafety_DroppedLogStaysProtected (0.00s) 2026-10-22T08:24:08.50328767Z === RUN TestBuildAppRuntimeSafety 2026-10-22T08:24:08.503301284Z --- PASS: TestBuildAppRuntimeSafety (0.00s) 2026-10-22T08:24:08.503317095Z === RUN TestBackupServicePortsReturnUntypedNilWhenDisabled 2026-10-22T08:24:08.503336885Z --- PASS: TestBackupServicePortsReturnUntypedNilWhenDisabled (0.00s) 2026-10-22T08:24:08.503362037Z === RUN TestAdminBackupRoutesWhenBackupsDisabled 2026-10-22T08:24:08.50338142Z === RUN TestAdminBackupRoutesWhenBackupsDisabled//admin/backups/status 2026-10-22T08:24:08.503397316Z === RUN TestAdminBackupRoutesWhenBackupsDisabled//admin/backups/volumes/status 2026-10-22T08:24:08.503411934Z --- PASS: TestAdminBackupRoutesWhenBackupsDisabled (0.00s) 2026-10-22T08:24:08.503437611Z --- PASS: TestAdminBackupRoutesWhenBackupsDisabled//admin/backups/status (0.00s) 2026-10-22T08:24:08.503462726Z --- PASS: TestAdminBackupRoutesWhenBackupsDisabled//admin/backups/volumes/status (0.00s) 2026-10-22T08:24:08.503477385Z === RUN TestCAInfoProvider_DisabledReturnsUntypedNil 2026-10-22T08:24:08.503489106Z --- PASS: TestCAInfoProvider_DisabledReturnsUntypedNil (0.00s) 2026-10-22T08:24:08.503498621Z === RUN TestCAInfoProvider_EnabledReturnsCA 2026-10-22T08:24:08.503510224Z --- PASS: TestCAInfoProvider_EnabledReturnsCA (0.00s) 2026-10-22T08:24:08.503519914Z === RUN TestWaitForServerReady_NilReadyReturnsImmediately 2026-10-22T08:24:08.503529446Z --- PASS: TestWaitForServerReady_NilReadyReturnsImmediately (0.00s) 2026-10-22T08:24:08.503554661Z === RUN TestWaitForServerReady_NonNilReadyPreservesErrorBehavior 2026-10-22T08:24:08.503570477Z --- PASS: TestWaitForServerReady_NonNilReadyPreservesErrorBehavior (0.00s) 2026-10-22T08:24:08.503590594Z === RUN TestWaitForServerReady_ReturnsOnContextCancellation 2026-10-22T08:24:08.503620578Z --- PASS: TestWaitForServerReady_ReturnsOnContextCancellation (0.00s) 2026-10-22T08:24:08.503639774Z === RUN TestCleanupStartupResources_ClosesAdminSocketsServersAndTrafficManager 2026-10-22T08:24:08.503669422Z 2026-10-22T08:24:07Z INF local admin socket listening path=/tmp/TestCleanupStartupResources_ClosesAdminSocketsServersAndTrafficM3794325824/001/gordon/admin.sock 2026-10-22T08:24:08.503694241Z 2026-10-22T08:24:07Z INF local admin socket stopped 2026-10-22T08:24:08.50371195Z --- PASS: TestCleanupStartupResources_ClosesAdminSocketsServersAndTrafficManager (0.00s) 2026-10-22T08:24:08.50372933Z === RUN TestStartProxyServers_DoesNotStartLegacyHTTPListenerFromServerPort 2026-10-22T08:24:08.503741551Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.503755142Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.503767001Z --- PASS: TestStartProxyServers_DoesNotStartLegacyHTTPListenerFromServerPort (0.00s) 2026-10-22T08:24:08.503777542Z === RUN TestStartProxyServers_DoesNotTreatLegacyTLSPortAsTLSCapable 2026-10-22T08:24:08.503791695Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.503811049Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.50382651Z --- PASS: TestStartProxyServers_DoesNotTreatLegacyTLSPortAsTLSCapable (0.00s) 2026-10-22T08:24:08.503836503Z === RUN TestStartProxyServers_ConfiguresSmartTCPHTTPAndHTTPSRoutesWithoutPublicHTTPListener 2026-10-22T08:24:08.503851979Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.503865528Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.503876694Z --- PASS: TestStartProxyServers_ConfiguresSmartTCPHTTPAndHTTPSRoutesWithoutPublicHTTPListener (0.01s) 2026-10-22T08:24:08.503886271Z === RUN TestStartProxyServers_ConfiguresTrafficManagerHTTPSRoute 2026-10-22T08:24:08.503901991Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.503919687Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.503936275Z --- PASS: TestStartProxyServers_ConfiguresTrafficManagerHTTPSRoute (0.01s) 2026-10-22T08:24:08.503951548Z === RUN TestStartProxyServers_ConfiguresCustomTLSMuxHTTPSRoute 2026-10-22T08:24:08.503980081Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.504031326Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.50406547Z --- PASS: TestStartProxyServers_ConfiguresCustomTLSMuxHTTPSRoute (0.01s) 2026-10-22T08:24:08.504083348Z === RUN TestStartProxyServers_TLSSetupFailureStopsHTTPServer 2026-10-22T08:24:08.504099813Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.504118961Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.504133991Z --- PASS: TestStartProxyServers_TLSSetupFailureStopsHTTPServer (0.00s) 2026-10-22T08:24:08.504150077Z === RUN TestStartProxyServers_TLSRequiresTrafficManager 2026-10-22T08:24:08.504165569Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.504183331Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.504201173Z --- PASS: TestStartProxyServers_TLSRequiresTrafficManager (0.00s) 2026-10-22T08:24:08.504215284Z === RUN TestTrafficRuntimeGraphKeepsSmartTCPHTTPAndTLSPassthroughRouters 2026-10-22T08:24:08.504230073Z --- PASS: TestTrafficRuntimeGraphKeepsSmartTCPHTTPAndTLSPassthroughRouters (0.00s) 2026-10-22T08:24:08.504246493Z === RUN TestTrafficRuntimeGraphHTTPEntrypointIsInvalidRatherThanSilentlyFiltered 2026-10-22T08:24:08.504269777Z --- PASS: TestTrafficRuntimeGraphHTTPEntrypointIsInvalidRatherThanSilentlyFiltered (0.00s) 2026-10-22T08:24:08.504286572Z === RUN TestTrafficRuntimeGraphKeepsDefaultTLSEntrypoint 2026-10-22T08:24:08.504306446Z --- PASS: TestTrafficRuntimeGraphKeepsDefaultTLSEntrypoint (0.00s) 2026-10-22T08:24:08.504323223Z === RUN TestTrafficRuntimeGraphAllowsTLSPassthroughOnDefaultTLS 2026-10-22T08:24:08.504343802Z --- PASS: TestTrafficRuntimeGraphAllowsTLSPassthroughOnDefaultTLS (0.00s) 2026-10-22T08:24:08.504359288Z === RUN TestApplyTrafficRuntimeConfigAppliesSmartTCPEntrypointWithRawFallbackPolicy 2026-10-22T08:24:08.504369853Z --- PASS: TestApplyTrafficRuntimeConfigAppliesSmartTCPEntrypointWithRawFallbackPolicy (0.00s) 2026-10-22T08:24:08.504382189Z === RUN TestApplyTrafficRuntimeConfigPassesStandaloneServicesToBuilder 2026-10-22T08:24:08.50439247Z --- PASS: TestApplyTrafficRuntimeConfigPassesStandaloneServicesToBuilder (0.00s) 2026-10-22T08:24:08.504406951Z === RUN TestApplyTrafficRuntimeConfigAppliesCustomL4Entrypoint 2026-10-22T08:24:08.504417565Z --- PASS: TestApplyTrafficRuntimeConfigAppliesCustomL4Entrypoint (0.00s) 2026-10-22T08:24:08.504433279Z === RUN TestApplyTrafficRuntimeConfigFusesAppL4Routes 2026-10-22T08:24:08.504447995Z --- PASS: TestApplyTrafficRuntimeConfigFusesAppL4Routes (0.00s) 2026-10-22T08:24:08.504462544Z === RUN TestApplyTrafficRuntimeConfigRejectsMismatchedAppL4Bind 2026-10-22T08:24:08.504480547Z --- PASS: TestApplyTrafficRuntimeConfigRejectsMismatchedAppL4Bind (0.00s) 2026-10-22T08:24:08.504494691Z === RUN TestTLSHandshake_OnDemandCert 2026-10-22T08:24:08.504510709Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.504530019Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.504540553Z --- PASS: TestTLSHandshake_OnDemandCert (0.01s) 2026-10-22T08:24:08.504549839Z === RUN TestTLSHandshake_UnknownDomain_Rejected 2026-10-22T08:24:08.504571196Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.504593472Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.504609741Z 2026/10/22 08:24:07 http: TLS handshake error from 127.0.0.1:50220: tls: no certificates configured 2026-10-22T08:24:08.504624843Z --- PASS: TestTLSHandshake_UnknownDomain_Rejected (0.01s) 2026-10-22T08:24:08.504639998Z === CONT TestNewKernel 2026-10-22T08:24:08.504667845Z === CONT TestCreateHTTPHandlers_HTTPSOnboarding_RemainsAvailableOnGordonDomain 2026-10-22T08:24:08.504681216Z === CONT TestCreateHTTPHandlers_HTTPSOnboarding_DoesNotPreemptAppHostCAPath 2026-10-22T08:24:08.504701748Z === CONT TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths 2026-10-22T08:24:08.504719598Z === RUN TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/.well-known/gordon/_serves_onboarding 2026-10-22T08:24:08.504739833Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.504761657Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.5047852Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.50480294Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.504822724Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.50483659Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.504857051Z 2026-10-22T08:24:07Z WRN no route found for domain error="no target available for route" adapter=http client_ip=203.0.113.10 host=app.example.com layer=adapter method=GET path=/.well-known/gordon/ca 2026-10-22T08:24:08.504880858Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=19 client_ip=203.0.113.10 duration_ms=0.56344 host=app.example.com layer=adapter method=GET path=/.well-known/gordon/ca proto=HTTP/1.1 query= referer= request_id=2db662b75754af729fbbf8bfec9be61f status=404 user_agent= 2026-10-22T08:24:08.504909472Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=3333 client_ip=203.0.113.10 duration_ms=0.104128 host=app.example.com layer=adapter method=GET path=/.well-known/gordon/ proto=HTTP/1.1 query= referer= request_id=5b7d89af5730a68944a77bbe1ab76939 status=200 user_agent= 2026-10-22T08:24:08.504938362Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=3342 client_ip=203.0.113.10 duration_ms=0.080222 host=Gordon.Example.Com.:8443 layer=adapter method=GET path=/.well-known/gordon/ca proto=HTTP/1.1 query= referer= request_id=73db51ef314b5c2ebaa707d369cf31ec status=200 user_agent= 2026-10-22T08:24:08.504956176Z === RUN TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/.well-known/gordon/ca_serves_onboarding 2026-10-22T08:24:08.504970173Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.504982178Z --- PASS: TestCreateHTTPHandlers_HTTPSOnboarding_DoesNotPreemptAppHostCAPath (0.01s) 2026-10-22T08:24:08.504992599Z === CONT TestStartPublicTLSRuntime_NilSvc 2026-10-22T08:24:08.505002413Z --- PASS: TestStartPublicTLSRuntime_NilSvc (0.00s) 2026-10-22T08:24:08.505014291Z === CONT TestAccessLog_DenyAllProxy_IsLogged 2026-10-22T08:24:08.505029892Z 2026-10-22T08:24:07Z WRN ignoring invalid proxy_allowed_ips entry entry=not-a-valid-ip 2026-10-22T08:24:08.505048934Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.505068138Z 2026-10-22T08:24:07Z ERR proxy_allowed_ips is set but no valid entries were parsed; will deny all traffic (fail-closed) proxy_allowed_ips=["not-a-valid-ip"] 2026-10-22T08:24:08.505091604Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.505111082Z 2026-10-22T08:24:07Z WRN access denied due to invalid proxy_allowed_ips configuration client_ip=203.0.113.5 2026-10-22T08:24:08.505127576Z --- PASS: TestAccessLog_DenyAllProxy_IsLogged (0.00s) 2026-10-22T08:24:08.50514393Z === CONT TestAccessLog_RegistryRejectedByLoopbackOnly_IsLogged 2026-10-22T08:24:08.505159944Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.505178487Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.505198192Z 2026-10-22T08:24:07Z WRN blocked non-loopback access on internal admin route path=/v2/ remote_addr=192.0.2.20:12345 2026-10-22T08:24:08.505213394Z --- PASS: TestAccessLog_RegistryRejectedByLoopbackOnly_IsLogged (0.00s) 2026-10-22T08:24:08.505228045Z === CONT TestBuildRegistryCIDRAllowlistMiddleware_InvalidEntries_DenyAll 2026-10-22T08:24:08.505245684Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.505261597Z 2026-10-22T08:24:07Z WRN ignoring invalid registry_allowed_ips entry entry=not-a-cidr 2026-10-22T08:24:08.50528141Z 2026-10-22T08:24:07Z ERR registry_allowed_ips is set but no valid entries were parsed; will deny all traffic (fail-closed) registry_allowed_ips=["not-a-cidr"] 2026-10-22T08:24:08.50529473Z 2026-10-22T08:24:07Z WRN access denied due to invalid registry_allowed_ips configuration client_ip=127.0.0.1 2026-10-22T08:24:08.505304996Z --- PASS: TestBuildRegistryCIDRAllowlistMiddleware_InvalidEntries_DenyAll (0.00s) 2026-10-22T08:24:08.505326706Z === CONT TestCreateHTTPHandlers_TLSConfiguredWithoutCA_FailsStartup 2026-10-22T08:24:08.505354809Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=3333 client_ip=203.0.113.10 duration_ms=0.073442 host=app.example.com layer=adapter method=GET path=/.well-known/gordon/ca proto=HTTP/1.1 query= referer= request_id=9738a5cdadadd96ea6da5dae6d0744ac status=200 user_agent= 2026-10-22T08:24:08.505385187Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=3336 client_ip=203.0.113.10 duration_ms=0.089212 host=gordon.example.com layer=adapter method=GET path=/.well-known/gordon/ca proto=HTTP/1.1 query= referer= request_id=6ad142025f6ad88bf3be6fa053d3717a status=200 user_agent= 2026-10-22T08:24:08.505412227Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=3342 client_ip=203.0.113.10 duration_ms=0.113577 host=Gordon.Example.Com.:8443 layer=adapter method=GET path=/.well-known/gordon/ca proto=HTTP/1.1 query= referer= request_id=5a1f9492267ac125283f08808a598dc8 status=200 user_agent= 2026-10-22T08:24:08.505430582Z --- PASS: TestCreateHTTPHandlers_HTTPSOnboarding_RemainsAvailableOnGordonDomain (0.01s) 2026-10-22T08:24:08.505450707Z 2026-10-22T08:24:07Z ERR failed to initialize internal CA error="create pki dir: mkdir /tmp/TestCreateHTTPHandlers_TLSConfiguredWithoutCA_FailsStartup3424751892/001/not-a-directory: not a directory" 2026-10-22T08:24:08.505468049Z --- PASS: TestCreateHTTPHandlers_TLSConfiguredWithoutCA_FailsStartup (0.00s) 2026-10-22T08:24:08.505485996Z === RUN TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/.well-known/gordon/ca.crt_serves_CA_cert 2026-10-22T08:24:08.505501101Z === CONT TestAccessLog_AdminRemoteRequest_ReachesAuth 2026-10-22T08:24:08.505515829Z 2026-10-22T08:24:07Z ERR authentication service unavailable; registry requests will be denied 2026-10-22T08:24:08.505541759Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=47 client_ip=192.0.2.10 duration_ms=0.033431 host=example.com layer=adapter method=GET path=/admin/status proto=HTTP/1.1 query= referer= request_id=79a71ac51a91199ca74c5d2eafafc1fa status=503 user_agent= 2026-10-22T08:24:08.505554105Z --- PASS: TestAccessLog_AdminRemoteRequest_ReachesAuth (0.00s) 2026-10-22T08:24:08.505564321Z === CONT TestCreateHTTPHandlers_TLSDisabled_DoesNotServeHTTPOnboarding 2026-10-22T08:24:08.505578985Z === CONT TestStartPublicTLSRuntime_ReconcilesAndStartsRenewalLoop 2026-10-22T08:24:08.505594934Z 2026-10-22T08:24:07Z INF public ACME TLS runtime started 2026-10-22T08:24:08.50561071Z --- PASS: TestStartPublicTLSRuntime_ReconcilesAndStartsRenewalLoop (0.00s) 2026-10-22T08:24:08.505625482Z === CONT TestCreateHTTPHandlers_DirectHTTPACMEChallenge_Returns404 2026-10-22T08:24:08.505639155Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.50565215Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.505665753Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.505680729Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.505704843Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.505733199Z 2026-10-22T08:24:07Z WRN proxy origin access denied by CIDR allowlist adapter=http client_ip=203.0.113.10 layer=adapter method=GET 2026-10-22T08:24:08.505763689Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=22 client_ip=203.0.113.10 duration_ms=0.231366 host=app.example.com layer=adapter method=GET path=/ proto=HTTP/1.1 query= referer= request_id=40735e60863985a960c931b37d7c1ea2 status=403 user_agent= 2026-10-22T08:24:08.505782358Z === CONT TestCreateHTTPHandlers_DirectHTTPForbiddenHEAD_ReturnsForbidden 2026-10-22T08:24:08.50580659Z --- PASS: TestCreateHTTPHandlers_TLSDisabled_DoesNotServeHTTPOnboarding (0.00s) 2026-10-22T08:24:08.505834459Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.505872156Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.505894192Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.505916867Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.505947422Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.50597533Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=668 client_ip=203.0.113.10 duration_ms=0.06819 host=app.example.com layer=adapter method=GET path=/.well-known/gordon/ca.crt proto=HTTP/1.1 query= referer= request_id=399bb840bcb25317ad7b5f34ed8deda5 status=200 user_agent= 2026-10-22T08:24:08.506002716Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.50602257Z 2026-10-22T08:24:07Z INF container runtime initialized runtime=docker source=probed version=29.9.1 2026-10-22T08:24:08.506040463Z 2026-10-22T08:24:07Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestNewKernel2857818640/001/data/registry 2026-10-22T08:24:08.506061106Z 2026-10-22T08:24:07Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestNewKernel2857818640/001/data/registry 2026-10-22T08:24:08.506095201Z 2026-10-22T08:24:07Z INF container log collection enabled dir=/tmp/TestNewKernel2857818640/001/data/logs/containers 2026-10-22T08:24:08.506117325Z 2026-10-22T08:24:07Z WRN auth.enabled=false detected: running in local-only mode (registry loopback-only, admin API disabled) 2026-10-22T08:24:08.506134757Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.506163974Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=0 client_ip=203.0.113.10 duration_ms=0.036987 host=app.example.com layer=adapter method=HEAD path=/web proto=HTTP/1.1 query= referer= request_id=5b06ddb8a0d817e93029de604eec6853 status=403 user_agent=Go-http-client/1.1 2026-10-22T08:24:08.50618291Z 2026-10-22T08:24:07Z INF configuration loaded layer=usecase registry_port=5000 server_port=0 usecase=Load 2026-10-22T08:24:08.506204399Z 2026-10-22T08:24:07Z INF internal CA disabled (no TLS-capable entrypoint configured) 2026-10-22T08:24:08.506237634Z --- PASS: TestCreateHTTPHandlers_DirectHTTPForbiddenHEAD_ReturnsForbidden (0.01s) 2026-10-22T08:24:08.506256836Z === CONT TestCreateHTTPHandlers_DirectHTTPOnboarding_HEADRoutesRemainAvailable 2026-10-22T08:24:08.506296763Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=10 client_ip=203.0.113.10 duration_ms=0.059462 host=app.example.com layer=adapter method=GET path=/.well-known/acme-challenge/test-token proto=HTTP/1.1 query= referer= request_id=77f22206c5811cc9f01b71b0f420c596 status=404 user_agent= 2026-10-22T08:24:08.506328974Z --- PASS: TestCreateHTTPHandlers_DirectHTTPACMEChallenge_Returns404 (0.01s) 2026-10-22T08:24:08.506344291Z === CONT TestCreateHTTPHandlers_HTTPSOnboarding_HEADRoutesRemainAvailable 2026-10-22T08:24:08.50635774Z === RUN TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/.well-known/gordon/ca.mobileconfig_serves_mobileconfig 2026-10-22T08:24:08.506386109Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.506409602Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.50643441Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.506465315Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.506486879Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.506518313Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.506535235Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.506558383Z --- PASS: TestNewKernel (0.03s) 2026-10-22T08:24:08.506581277Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=1904 client_ip=203.0.113.10 duration_ms=0.037459 host=app.example.com layer=adapter method=GET path=/.well-known/gordon/ca.mobileconfig proto=HTTP/1.1 query= referer= request_id=0865ece2436b49f6cb3c3d8398099ddd status=200 user_agent= 2026-10-22T08:24:08.506605376Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=3333 client_ip=203.0.113.10 duration_ms=0.105315 host=app.example.com layer=adapter method=HEAD path=/.well-known/gordon/ca proto=HTTP/1.1 query= referer= request_id=a0366da931c069ad6146afc39b14e390 status=200 user_agent=Go-http-client/1.1 2026-10-22T08:24:08.506622043Z === CONT TestStartPublicTLSRuntime_StartsRenewalLoopWhenReconcileFails 2026-10-22T08:24:08.506641524Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.506701432Z 2026-10-22T08:24:07Z INF public ACME TLS runtime started 2026-10-22T08:24:08.506722005Z --- PASS: TestStartPublicTLSRuntime_StartsRenewalLoopWhenReconcileFails (0.00s) 2026-10-22T08:24:08.506736809Z === RUN TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/root_returns_forbidden 2026-10-22T08:24:08.506758475Z === CONT TestCreateHTTPHandlers_LocalMode_DisablesAdminRoutes 2026-10-22T08:24:08.50678604Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=668 client_ip=203.0.113.10 duration_ms=0.031285 host=app.example.com layer=adapter method=HEAD path=/.well-known/gordon/ca.crt proto=HTTP/1.1 query= referer= request_id=171273b7ac628e63b0e3624be20e1001 status=200 user_agent=Go-http-client/1.1 2026-10-22T08:24:08.50680505Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.506821747Z --- PASS: TestCreateHTTPHandlers_DirectHTTPOnboarding_HEADRoutesRemainAvailable (0.01s) 2026-10-22T08:24:08.506834134Z === CONT TestCreateHTTPHandlers_LocalMode_RestrictsRegistryToLoopback 2026-10-22T08:24:08.506851579Z 2026-10-22T08:24:07Z WRN blocked non-loopback access on internal admin route path=/v2/test/manifests/latest remote_addr=192.0.2.20:12345 2026-10-22T08:24:08.506871428Z --- PASS: TestCreateHTTPHandlers_LocalMode_RestrictsRegistryToLoopback (0.00s) 2026-10-22T08:24:08.506901628Z === CONT TestCreateAuthService_Disabled_ReturnsNilServices 2026-10-22T08:24:08.506924699Z 2026-10-22T08:24:07Z WRN auth.enabled=false detected: running in local-only mode (registry loopback-only, admin API disabled) 2026-10-22T08:24:08.50694381Z --- PASS: TestCreateAuthService_Disabled_ReturnsNilServices (0.00s) 2026-10-22T08:24:08.506964906Z === CONT TestKernelClose_WithoutAppAdministrationStillCleansUp 2026-10-22T08:24:08.50698204Z --- PASS: TestKernelClose_WithoutAppAdministrationStillCleansUp (0.00s) 2026-10-22T08:24:08.506997485Z === CONT TestCreateHTTPHandlers_TrustedProxyWellKnownCACertPath_DoesNotServeOnboardingResource 2026-10-22T08:24:08.507011301Z 2026-10-22T08:24:07Z WRN auth disabled: admin API endpoints are not registered 2026-10-22T08:24:08.50702604Z --- PASS: TestCreateHTTPHandlers_LocalMode_DisablesAdminRoutes (0.00s) 2026-10-22T08:24:08.507037559Z === CONT TestCreateHTTPHandlers_OnboardingUsesSelectedEntrypointPorts 2026-10-22T08:24:08.507048758Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.507060365Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.5070732Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.507087124Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.507107607Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.507123915Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.507140272Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.507167826Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=3342 client_ip=127.0.0.1 duration_ms=0.156486 host=Gordon.Example.Com.:8443 layer=adapter method=HEAD path=/.well-known/gordon/ca proto=HTTP/1.1 query= referer= request_id=44c69e8e1db821e74ddfb2ed993e3fe8 status=200 user_agent=Go-http-client/1.1 2026-10-22T08:24:08.507189018Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.507210737Z 2026-10-22T08:24:07Z ERR panic recovered adapter=http host=app.example.com layer=adapter method=GET panic="invalid memory address or nil pointer dereference" path=/.well-known/gordon/ca.crt 2026-10-22T08:24:08.507231071Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.507246607Z --- PASS: TestCreateHTTPHandlers_TrustedProxyWellKnownCACertPath_DoesNotServeOnboardingResource (0.00s) 2026-10-22T08:24:08.507273175Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=52 client_ip=203.0.113.10 duration_ms=0.043997 host=app.example.com layer=adapter method=GET path=/ proto=HTTP/1.1 query= referer= request_id=8a9fa4b2ef0f52f2cad84b865e761710 status=403 user_agent= 2026-10-22T08:24:08.507290807Z === CONT TestCreateHTTPHandlers_ForceHTTPSRedirect_DoesNotBypassDirectOnboarding 2026-10-22T08:24:08.507322185Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=668 client_ip=127.0.0.1 duration_ms=0.050323 host=Gordon.Example.Com.:8443 layer=adapter method=HEAD path=/.well-known/gordon/ca.crt proto=HTTP/1.1 query= referer= request_id=c3356fe20f706011bc8bfdb3cbce194b status=200 user_agent=Go-http-client/1.1 2026-10-22T08:24:08.507341982Z === RUN TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/former_/ca_alias_returns_forbidden 2026-10-22T08:24:08.507363328Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=3338 client_ip=203.0.113.10 duration_ms=0.051289 host=app.example.com:9443 layer=adapter method=GET path=/.well-known/gordon/ proto=HTTP/1.1 query= referer= request_id=9f029b60966ad6c0dcc54e8b8606106e status=200 user_agent= 2026-10-22T08:24:08.507387075Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=1904 client_ip=127.0.0.1 duration_ms=0.079286 host=Gordon.Example.Com.:8443 layer=adapter method=HEAD path=/.well-known/gordon/ca.mobileconfig proto=HTTP/1.1 query= referer= request_id=72b1df9cb4b8be97e401998bce9adc40 status=200 user_agent=Go-http-client/1.1 2026-10-22T08:24:08.50740404Z --- PASS: TestCreateHTTPHandlers_OnboardingUsesSelectedEntrypointPorts (0.01s) 2026-10-22T08:24:08.507440469Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.507463761Z === CONT TestKernelClose_QuiescenceTimeoutSkipsCleanup 2026-10-22T08:24:08.507481214Z 2026-10-22T08:24:07Z ERR app administration did not quiesce before the shutdown deadline error="in-flight deploy did not unwind" 2026-10-22T08:24:08.507493156Z --- PASS: TestKernelClose_QuiescenceTimeoutSkipsCleanup (0.00s) 2026-10-22T08:24:08.507506051Z === CONT TestKernelClose_CleansUpAfterQuiescence 2026-10-22T08:24:08.507517982Z --- PASS: TestKernelClose_CleansUpAfterQuiescence (0.00s) 2026-10-22T08:24:08.507528048Z === CONT TestCreateHTTPHandlers_TrustedProxyHTTP_DoesNotServeOnboarding 2026-10-22T08:24:08.507538281Z --- PASS: TestCreateHTTPHandlers_HTTPSOnboarding_HEADRoutesRemainAvailable (0.01s) 2026-10-22T08:24:08.507548228Z === CONT TestCreateHTTPHandlers_RedirectUsesSelectedEntrypointPorts 2026-10-22T08:24:08.507560223Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.507574706Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.50758845Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.507610436Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=69 client_ip=203.0.113.10 duration_ms=0.221986 host=app.example.com:9443 layer=adapter method=GET path=/path proto=HTTP/1.1 query= referer= request_id=746a24ed5724ce608e45c7afc930227e status=308 user_agent= 2026-10-22T08:24:08.507628541Z --- PASS: TestCreateHTTPHandlers_RedirectUsesSelectedEntrypointPorts (0.00s) 2026-10-22T08:24:08.50765256Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.507666881Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.507692722Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=52 client_ip=203.0.113.10 duration_ms=0.027738 host=app.example.com layer=adapter method=GET path=/ca proto=HTTP/1.1 query= referer= request_id=f922df586f5d6fb10d921b3a1c48f761 status=403 user_agent= 2026-10-22T08:24:08.507709734Z === RUN TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/former_/ca.crt_alias_returns_forbidden 2026-10-22T08:24:08.507723902Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.507740101Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.507761989Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=3333 client_ip=203.0.113.10 duration_ms=0.047128 host=app.example.com layer=adapter method=GET path=/.well-known/gordon/ proto=HTTP/1.1 query= referer= request_id=8cb58780b2d2ee3fb41247b2b1a0b85f status=200 user_agent= 2026-10-22T08:24:08.50777447Z --- PASS: TestCreateHTTPHandlers_ForceHTTPSRedirect_DoesNotBypassDirectOnboarding (0.01s) 2026-10-22T08:24:08.507785612Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.507797027Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.507814533Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.507836392Z 2026-10-22T08:24:07Z ERR panic recovered adapter=http host=app.example.com layer=adapter method=GET panic="invalid memory address or nil pointer dereference" path=/ 2026-10-22T08:24:08.50785346Z --- PASS: TestCreateHTTPHandlers_TrustedProxyHTTP_DoesNotServeOnboarding (0.00s) 2026-10-22T08:24:08.507872053Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.507897979Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=52 client_ip=203.0.113.10 duration_ms=0.03802 host=app.example.com layer=adapter method=GET path=/ca.crt proto=HTTP/1.1 query= referer= request_id=1199545e13d3854ae38531280876767b status=403 user_agent= 2026-10-22T08:24:08.507915994Z === RUN TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/former_/ca.mobileconfig_alias_returns_forbidden 2026-10-22T08:24:08.507932571Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.507949991Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.507967039Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.50799184Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=52 client_ip=203.0.113.10 duration_ms=0.029968 host=app.example.com layer=adapter method=GET path=/ca.mobileconfig proto=HTTP/1.1 query= referer= request_id=1baa0bdef1d05cb81c1e44a73b250e21 status=403 user_agent= 2026-10-22T08:24:08.508010716Z === RUN TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/unknown_path_returns_forbidden 2026-10-22T08:24:08.508026366Z 2026-10-22T08:24:07Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:08.508053697Z 2026-10-22T08:24:07Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:07Z 2026-10-22T08:24:08.50807005Z 2026-10-22T08:24:07Z INF proxy origin IP allowlist enabled proxy_allowed_ips=["173.245.48.0/20"] 2026-10-22T08:24:08.508094134Z 2026-10-22T08:24:07Z INF HTTP request adapter=http bytes=52 client_ip=203.0.113.10 duration_ms=0.031938 host=app.example.com layer=adapter method=GET path=/web proto=HTTP/1.1 query= referer= request_id=dbd1d0a02269b750476e466c4c1e2345 status=403 user_agent= 2026-10-22T08:24:08.508118322Z --- PASS: TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths (0.05s) 2026-10-22T08:24:08.508148169Z --- PASS: TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/.well-known/gordon/_serves_onboarding (0.00s) 2026-10-22T08:24:08.508177257Z --- PASS: TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/.well-known/gordon/ca_serves_onboarding (0.00s) 2026-10-22T08:24:08.508209321Z --- PASS: TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/.well-known/gordon/ca.crt_serves_CA_cert (0.01s) 2026-10-22T08:24:08.508241239Z --- PASS: TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/.well-known/gordon/ca.mobileconfig_serves_mobileconfig (0.00s) 2026-10-22T08:24:08.508268212Z --- PASS: TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/root_returns_forbidden (0.01s) 2026-10-22T08:24:08.508297855Z --- PASS: TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/former_/ca_alias_returns_forbidden (0.00s) 2026-10-22T08:24:08.508326269Z --- PASS: TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/former_/ca.crt_alias_returns_forbidden (0.00s) 2026-10-22T08:24:08.508356114Z --- PASS: TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/former_/ca.mobileconfig_alias_returns_forbidden (0.00s) 2026-10-22T08:24:08.50838483Z --- PASS: TestCreateHTTPHandlers_DirectHTTPOnboarding_AllPaths/unknown_path_returns_forbidden (0.00s) 2026-10-22T08:24:08.508395645Z PASS 2026-10-22T08:24:08.508405141Z ok github.com/bnema/gordon/internal/app 2.310s 2026-10-22T08:24:08.508416559Z ? github.com/bnema/gordon/internal/boundaries/in [no test files] 2026-10-22T08:24:08.508427144Z ? github.com/bnema/gordon/internal/boundaries/in/mocks [no test files] 2026-10-22T08:24:08.508436854Z === RUN TestGCBarrierContractExcludesExclusiveDuringShared 2026-10-22T08:24:08.508446145Z --- PASS: TestGCBarrierContractExcludesExclusiveDuringShared (0.05s) 2026-10-22T08:24:08.508460248Z === RUN TestGCBarrierContractExcludesSharedDuringExclusive 2026-10-22T08:24:08.508474513Z --- PASS: TestGCBarrierContractExcludesSharedDuringExclusive (0.05s) 2026-10-22T08:24:08.508489881Z === RUN TestGCBarrierContractPreCanceledContext 2026-10-22T08:24:08.508503783Z --- PASS: TestGCBarrierContractPreCanceledContext (0.00s) 2026-10-22T08:24:08.50851593Z PASS 2026-10-22T08:24:08.508529727Z ok github.com/bnema/gordon/internal/boundaries/out 1.113s 2026-10-22T08:24:08.50854402Z ? github.com/bnema/gordon/internal/boundaries/out/mocks [no test files] 2026-10-22T08:24:08.508559262Z === RUN TestAppBindPolicy_Validate 2026-10-22T08:24:08.508572817Z === RUN TestAppBindPolicy_Validate/empty_name 2026-10-22T08:24:08.508586539Z === RUN TestAppBindPolicy_Validate/bad_name 2026-10-22T08:24:08.508601684Z === RUN TestAppBindPolicy_Validate/reserved_name 2026-10-22T08:24:08.508615408Z === RUN TestAppBindPolicy_Validate/relative_source 2026-10-22T08:24:08.508630285Z === RUN TestAppBindPolicy_Validate/unclean_source 2026-10-22T08:24:08.508655101Z === RUN TestAppBindPolicy_Validate/empty_source 2026-10-22T08:24:08.508672538Z === RUN TestAppBindPolicy_Validate/relative_root 2026-10-22T08:24:08.508688814Z === RUN TestAppBindPolicy_Validate/unclean_root 2026-10-22T08:24:08.508702565Z === RUN TestAppBindPolicy_Validate/empty_allowed_apps 2026-10-22T08:24:08.508716176Z === RUN TestAppBindPolicy_Validate/empty_allowed_services 2026-10-22T08:24:08.508731383Z === RUN TestAppBindPolicy_Validate/bad_allowed_app 2026-10-22T08:24:08.50874514Z === RUN TestAppBindPolicy_Validate/bad_allowed_service 2026-10-22T08:24:08.508758923Z === RUN TestAppBindPolicy_Validate/duplicate_allowed_app 2026-10-22T08:24:08.508774115Z === RUN TestAppBindPolicy_Validate/duplicate_allowed_service 2026-10-22T08:24:08.508788204Z --- PASS: TestAppBindPolicy_Validate (0.00s) 2026-10-22T08:24:08.50881017Z --- PASS: TestAppBindPolicy_Validate/empty_name (0.00s) 2026-10-22T08:24:08.508831451Z --- PASS: TestAppBindPolicy_Validate/bad_name (0.00s) 2026-10-22T08:24:08.50885231Z --- PASS: TestAppBindPolicy_Validate/reserved_name (0.00s) 2026-10-22T08:24:08.508875089Z --- PASS: TestAppBindPolicy_Validate/relative_source (0.00s) 2026-10-22T08:24:08.508896072Z --- PASS: TestAppBindPolicy_Validate/unclean_source (0.00s) 2026-10-22T08:24:08.508916366Z --- PASS: TestAppBindPolicy_Validate/empty_source (0.00s) 2026-10-22T08:24:08.508938403Z --- PASS: TestAppBindPolicy_Validate/relative_root (0.00s) 2026-10-22T08:24:08.508958816Z --- PASS: TestAppBindPolicy_Validate/unclean_root (0.00s) 2026-10-22T08:24:08.508983191Z --- PASS: TestAppBindPolicy_Validate/empty_allowed_apps (0.00s) 2026-10-22T08:24:08.509005854Z --- PASS: TestAppBindPolicy_Validate/empty_allowed_services (0.00s) 2026-10-22T08:24:08.50902732Z --- PASS: TestAppBindPolicy_Validate/bad_allowed_app (0.00s) 2026-10-22T08:24:08.509051003Z --- PASS: TestAppBindPolicy_Validate/bad_allowed_service (0.00s) 2026-10-22T08:24:08.509073255Z --- PASS: TestAppBindPolicy_Validate/duplicate_allowed_app (0.00s) 2026-10-22T08:24:08.509095894Z --- PASS: TestAppBindPolicy_Validate/duplicate_allowed_service (0.00s) 2026-10-22T08:24:08.509111133Z === RUN TestAppBindPolicy_ResolveAppBind 2026-10-22T08:24:08.509124794Z --- PASS: TestAppBindPolicy_ResolveAppBind (0.00s) 2026-10-22T08:24:08.509140719Z === RUN TestAppBindPolicy_ResolveAppBindReadOnlyNonWeakening 2026-10-22T08:24:08.509155958Z === RUN TestAppBindPolicy_ResolveAppBindReadOnlyNonWeakening/policy_enforces_read-only 2026-10-22T08:24:08.509171013Z === RUN TestAppBindPolicy_ResolveAppBindReadOnlyNonWeakening/bind_requests_read-only 2026-10-22T08:24:08.509186931Z === RUN TestAppBindPolicy_ResolveAppBindReadOnlyNonWeakening/both_read-only 2026-10-22T08:24:08.509201593Z === RUN TestAppBindPolicy_ResolveAppBindReadOnlyNonWeakening/writable_by_default 2026-10-22T08:24:08.509216044Z --- PASS: TestAppBindPolicy_ResolveAppBindReadOnlyNonWeakening (0.00s) 2026-10-22T08:24:08.509244241Z --- PASS: TestAppBindPolicy_ResolveAppBindReadOnlyNonWeakening/policy_enforces_read-only (0.00s) 2026-10-22T08:24:08.509270173Z --- PASS: TestAppBindPolicy_ResolveAppBindReadOnlyNonWeakening/bind_requests_read-only (0.00s) 2026-10-22T08:24:08.509297314Z --- PASS: TestAppBindPolicy_ResolveAppBindReadOnlyNonWeakening/both_read-only (0.00s) 2026-10-22T08:24:08.509322828Z --- PASS: TestAppBindPolicy_ResolveAppBindReadOnlyNonWeakening/writable_by_default (0.00s) 2026-10-22T08:24:08.509336629Z === RUN TestAppBindPolicy_ResolveAppBindAllowlists 2026-10-22T08:24:08.50935556Z --- PASS: TestAppBindPolicy_ResolveAppBindAllowlists (0.00s) 2026-10-22T08:24:08.50937931Z === RUN TestAppBindPolicy_ResolveAppBindBindShape 2026-10-22T08:24:08.50940099Z --- PASS: TestAppBindPolicy_ResolveAppBindBindShape (0.00s) 2026-10-22T08:24:08.509417987Z === RUN TestAppBindPolicy_ResolveAppBindRootBoundary 2026-10-22T08:24:08.509434086Z === RUN TestAppBindPolicy_ResolveAppBindRootBoundary/source_outside_root 2026-10-22T08:24:08.509451084Z === RUN TestAppBindPolicy_ResolveAppBindRootBoundary/sibling_prefix_is_not_inside 2026-10-22T08:24:08.509466385Z === RUN TestAppBindPolicy_ResolveAppBindRootBoundary/symlink_escaping_root_is_refused 2026-10-22T08:24:08.509481428Z === RUN TestAppBindPolicy_ResolveAppBindRootBoundary/symlink_inside_root_resolves 2026-10-22T08:24:08.509497457Z === RUN TestAppBindPolicy_ResolveAppBindRootBoundary/root_itself_is_inside 2026-10-22T08:24:08.509513338Z === RUN TestAppBindPolicy_ResolveAppBindRootBoundary/optional_root_is_not_required 2026-10-22T08:24:08.509527512Z --- PASS: TestAppBindPolicy_ResolveAppBindRootBoundary (0.00s) 2026-10-22T08:24:08.509553486Z --- PASS: TestAppBindPolicy_ResolveAppBindRootBoundary/source_outside_root (0.00s) 2026-10-22T08:24:08.50957859Z --- PASS: TestAppBindPolicy_ResolveAppBindRootBoundary/sibling_prefix_is_not_inside (0.00s) 2026-10-22T08:24:08.509606587Z --- PASS: TestAppBindPolicy_ResolveAppBindRootBoundary/symlink_escaping_root_is_refused (0.00s) 2026-10-22T08:24:08.509639409Z --- PASS: TestAppBindPolicy_ResolveAppBindRootBoundary/symlink_inside_root_resolves (0.00s) 2026-10-22T08:24:08.509682838Z --- PASS: TestAppBindPolicy_ResolveAppBindRootBoundary/root_itself_is_inside (0.00s) 2026-10-22T08:24:08.509714258Z --- PASS: TestAppBindPolicy_ResolveAppBindRootBoundary/optional_root_is_not_required (0.00s) 2026-10-22T08:24:08.509728909Z === RUN TestAppBindPolicy_ResolveAppBindSourceTypes 2026-10-22T08:24:08.509743324Z === RUN TestAppBindPolicy_ResolveAppBindSourceTypes/missing_source 2026-10-22T08:24:08.509759882Z === RUN TestAppBindPolicy_ResolveAppBindSourceTypes/fifo_refused 2026-10-22T08:24:08.509774132Z === RUN TestAppBindPolicy_ResolveAppBindSourceTypes/socket_refused 2026-10-22T08:24:08.509790819Z === RUN TestAppBindPolicy_ResolveAppBindSourceTypes/regular_file_accepted 2026-10-22T08:24:08.50980499Z --- PASS: TestAppBindPolicy_ResolveAppBindSourceTypes (0.00s) 2026-10-22T08:24:08.509828567Z --- PASS: TestAppBindPolicy_ResolveAppBindSourceTypes/missing_source (0.00s) 2026-10-22T08:24:08.509853154Z --- PASS: TestAppBindPolicy_ResolveAppBindSourceTypes/fifo_refused (0.00s) 2026-10-22T08:24:08.509876639Z --- PASS: TestAppBindPolicy_ResolveAppBindSourceTypes/socket_refused (0.00s) 2026-10-22T08:24:08.509900998Z --- PASS: TestAppBindPolicy_ResolveAppBindSourceTypes/regular_file_accepted (0.00s) 2026-10-22T08:24:08.509916938Z === RUN TestBindSourceTypeAllowed 2026-10-22T08:24:08.509929669Z --- PASS: TestBindSourceTypeAllowed (0.00s) 2026-10-22T08:24:08.509941533Z === RUN TestResolvedUnderRoot 2026-10-22T08:24:08.509956892Z --- PASS: TestResolvedUnderRoot (0.00s) 2026-10-22T08:24:08.509972871Z === RUN TestCapabilityPolicyValid 2026-10-22T08:24:08.509998595Z --- PASS: TestCapabilityPolicyValid (0.00s) 2026-10-22T08:24:08.51001834Z === RUN TestCapabilityPolicyNameRejected 2026-10-22T08:24:08.510030265Z --- PASS: TestCapabilityPolicyNameRejected (0.00s) 2026-10-22T08:24:08.510041111Z === RUN TestCapabilityPolicyAddRejected 2026-10-22T08:24:08.510054213Z --- PASS: TestCapabilityPolicyAddRejected (0.00s) 2026-10-22T08:24:08.51006616Z === RUN TestCapabilityPolicyAllowlistRejected 2026-10-22T08:24:08.510078574Z --- PASS: TestCapabilityPolicyAllowlistRejected (0.00s) 2026-10-22T08:24:08.510089775Z === RUN TestAllowedAppCapabilitiesExcludesDangerous 2026-10-22T08:24:08.510103516Z --- PASS: TestAllowedAppCapabilitiesExcludesDangerous (0.00s) 2026-10-22T08:24:08.510115124Z === RUN TestResolveAppCapabilitiesDenyByDefault 2026-10-22T08:24:08.510129825Z --- PASS: TestResolveAppCapabilitiesDenyByDefault (0.00s) 2026-10-22T08:24:08.510149055Z === RUN TestResolveAppCapabilitiesExactGrantIsCopy 2026-10-22T08:24:08.510168091Z --- PASS: TestResolveAppCapabilitiesExactGrantIsCopy (0.00s) 2026-10-22T08:24:08.510184762Z === RUN TestResolveAppCapabilitiesUnionSortedDeduped 2026-10-22T08:24:08.51020187Z --- PASS: TestResolveAppCapabilitiesUnionSortedDeduped (0.00s) 2026-10-22T08:24:08.510219818Z === RUN TestResolveAppCapabilitiesUnknownAndEmpty 2026-10-22T08:24:08.510236229Z --- PASS: TestResolveAppCapabilitiesUnknownAndEmpty (0.00s) 2026-10-22T08:24:08.510255178Z === RUN TestResolveAppCapabilitiesRefusedDoesNotEchoCaps 2026-10-22T08:24:08.510272304Z --- PASS: TestResolveAppCapabilitiesRefusedDoesNotEchoCaps (0.00s) 2026-10-22T08:24:08.510289054Z === RUN TestRuntimeGuardRefusesDisallowedAddedCapabilities 2026-10-22T08:24:08.510307344Z --- PASS: TestRuntimeGuardRefusesDisallowedAddedCapabilities (0.00s) 2026-10-22T08:24:08.510323846Z === RUN TestAppServiceCapabilitiesValidation 2026-10-22T08:24:08.510340494Z --- PASS: TestAppServiceCapabilitiesValidation (0.00s) 2026-10-22T08:24:08.510358221Z === RUN TestDiffAppSpecCapabilities 2026-10-22T08:24:08.510374509Z --- PASS: TestDiffAppSpecCapabilities (0.00s) 2026-10-22T08:24:08.510390181Z === RUN TestExcessCapabilities 2026-10-22T08:24:08.510402342Z --- PASS: TestExcessCapabilities (0.00s) 2026-10-22T08:24:08.510413802Z === RUN TestDefaultAppCapAddIsCopy 2026-10-22T08:24:08.510425535Z --- PASS: TestDefaultAppCapAddIsCopy (0.00s) 2026-10-22T08:24:08.510436555Z === RUN TestDevicePolicyValid 2026-10-22T08:24:08.510450084Z --- PASS: TestDevicePolicyValid (0.00s) 2026-10-22T08:24:08.510480553Z === RUN TestDevicePolicyNameRejected 2026-10-22T08:24:08.510511941Z --- PASS: TestDevicePolicyNameRejected (0.00s) 2026-10-22T08:24:08.510534348Z === RUN TestDevicePolicyCDIRejected 2026-10-22T08:24:08.510552843Z --- PASS: TestDevicePolicyCDIRejected (0.00s) 2026-10-22T08:24:08.510568891Z === RUN TestDevicePolicyAllowlistRejected 2026-10-22T08:24:08.51058503Z --- PASS: TestDevicePolicyAllowlistRejected (0.00s) 2026-10-22T08:24:08.510602633Z === RUN TestResolveAppDeviceDenyByDefault 2026-10-22T08:24:08.510618853Z --- PASS: TestResolveAppDeviceDenyByDefault (0.00s) 2026-10-22T08:24:08.51063696Z === RUN TestResolveAppDeviceExactGrant 2026-10-22T08:24:08.510660514Z --- PASS: TestResolveAppDeviceExactGrant (0.00s) 2026-10-22T08:24:08.510711523Z === RUN TestResolveAppDevicesUnknownDenied 2026-10-22T08:24:08.510721233Z --- PASS: TestResolveAppDevicesUnknownDenied (0.00s) 2026-10-22T08:24:08.510729223Z === RUN TestResolveAppDevicesDeterministicUnion 2026-10-22T08:24:08.510737134Z --- PASS: TestResolveAppDevicesDeterministicUnion (0.00s) 2026-10-22T08:24:08.510744994Z === RUN TestResolveAppDevicesDuplicateIDRejected 2026-10-22T08:24:08.510758772Z --- PASS: TestResolveAppDevicesDuplicateIDRejected (0.00s) 2026-10-22T08:24:08.510769771Z === RUN TestResolveAppDevicesEmptyIsNil 2026-10-22T08:24:08.510780513Z --- PASS: TestResolveAppDevicesEmptyIsNil (0.00s) 2026-10-22T08:24:08.510801177Z === RUN TestValidateDeviceName 2026-10-22T08:24:08.510810806Z --- PASS: TestValidateDeviceName (0.00s) 2026-10-22T08:24:08.51081628Z === RUN TestAppServiceDevicesValidation 2026-10-22T08:24:08.510827447Z --- PASS: TestAppServiceDevicesValidation (0.00s) 2026-10-22T08:24:08.510841305Z === RUN TestDiffAppSpecDevices 2026-10-22T08:24:08.510853372Z --- PASS: TestDiffAppSpecDevices (0.00s) 2026-10-22T08:24:08.510866881Z === RUN TestParseScope 2026-10-22T08:24:08.510873191Z === RUN TestParseScope/simple_repository_scope 2026-10-22T08:24:08.510878229Z === RUN TestParseScope/multiple_actions 2026-10-22T08:24:08.510887689Z === RUN TestParseScope/wildcard_repository 2026-10-22T08:24:08.51089636Z === RUN TestParseScope/org_wildcard 2026-10-22T08:24:08.510905023Z === RUN TestParseScope/wildcard_action 2026-10-22T08:24:08.510919428Z === RUN TestParseScope/nested_repository_name 2026-10-22T08:24:08.510932059Z === RUN TestParseScope/actions_with_whitespace_trimmed 2026-10-22T08:24:08.510945669Z === RUN TestParseScope/registry_scope_type 2026-10-22T08:24:08.510958852Z === RUN TestParseScope/empty_string 2026-10-22T08:24:08.510969963Z === RUN TestParseScope/missing_actions 2026-10-22T08:24:08.510982595Z === RUN TestParseScope/missing_name_and_actions 2026-10-22T08:24:08.511000008Z === RUN TestParseScope/only_type_and_name 2026-10-22T08:24:08.511011951Z --- PASS: TestParseScope (0.00s) 2026-10-22T08:24:08.511032523Z --- PASS: TestParseScope/simple_repository_scope (0.00s) 2026-10-22T08:24:08.511054347Z --- PASS: TestParseScope/multiple_actions (0.00s) 2026-10-22T08:24:08.511075477Z --- PASS: TestParseScope/wildcard_repository (0.00s) 2026-10-22T08:24:08.511094983Z --- PASS: TestParseScope/org_wildcard (0.00s) 2026-10-22T08:24:08.511115121Z --- PASS: TestParseScope/wildcard_action (0.00s) 2026-10-22T08:24:08.511137185Z --- PASS: TestParseScope/nested_repository_name (0.00s) 2026-10-22T08:24:08.511158623Z --- PASS: TestParseScope/actions_with_whitespace_trimmed (0.00s) 2026-10-22T08:24:08.511180622Z --- PASS: TestParseScope/registry_scope_type (0.00s) 2026-10-22T08:24:08.511198662Z --- PASS: TestParseScope/empty_string (0.00s) 2026-10-22T08:24:08.511217436Z --- PASS: TestParseScope/missing_actions (0.00s) 2026-10-22T08:24:08.511240056Z --- PASS: TestParseScope/missing_name_and_actions (0.00s) 2026-10-22T08:24:08.511259842Z --- PASS: TestParseScope/only_type_and_name (0.00s) 2026-10-22T08:24:08.511268981Z === RUN TestScope_CanAccess 2026-10-22T08:24:08.511278214Z === RUN TestScope_CanAccess/exact_repo_match_with_pull 2026-10-22T08:24:08.511290229Z === RUN TestScope_CanAccess/exact_repo_match_with_push 2026-10-22T08:24:08.511301476Z === RUN TestScope_CanAccess/exact_repo_match_wrong_action 2026-10-22T08:24:08.511310237Z === RUN TestScope_CanAccess/wrong_repo_name 2026-10-22T08:24:08.511322034Z === RUN TestScope_CanAccess/wildcard_repo_matches_any 2026-10-22T08:24:08.511338635Z === RUN TestScope_CanAccess/wildcard_repo_matches_nested 2026-10-22T08:24:08.51135178Z === RUN TestScope_CanAccess/org_wildcard_matches_repo_in_org 2026-10-22T08:24:08.511365061Z === RUN TestScope_CanAccess/org_wildcard_matches_nested_repo_in_org 2026-10-22T08:24:08.51137778Z === RUN TestScope_CanAccess/org_wildcard_does_not_match_other_org 2026-10-22T08:24:08.511390772Z === RUN TestScope_CanAccess/org_wildcard_does_not_match_repo_without_slash 2026-10-22T08:24:08.511402941Z === RUN TestScope_CanAccess/wildcard_action_grants_pull 2026-10-22T08:24:08.511413678Z === RUN TestScope_CanAccess/wildcard_action_grants_push 2026-10-22T08:24:08.51142966Z === RUN TestScope_CanAccess/multiple_actions_includes_requested 2026-10-22T08:24:08.511441777Z === RUN TestScope_CanAccess/multiple_actions_includes_push 2026-10-22T08:24:08.511453376Z === RUN TestScope_CanAccess/registry_type_does_not_grant_repo_access 2026-10-22T08:24:08.511465485Z === RUN TestScope_CanAccess/empty_actions 2026-10-22T08:24:08.511479331Z === RUN TestScope_CanAccess/empty_repo_name_in_scope 2026-10-22T08:24:08.511492477Z --- PASS: TestScope_CanAccess (0.00s) 2026-10-22T08:24:08.511519393Z --- PASS: TestScope_CanAccess/exact_repo_match_with_pull (0.00s) 2026-10-22T08:24:08.51155425Z --- PASS: TestScope_CanAccess/exact_repo_match_with_push (0.00s) 2026-10-22T08:24:08.511594725Z --- PASS: TestScope_CanAccess/exact_repo_match_wrong_action (0.00s) 2026-10-22T08:24:08.511636347Z --- PASS: TestScope_CanAccess/wrong_repo_name (0.00s) 2026-10-22T08:24:08.511676134Z --- PASS: TestScope_CanAccess/wildcard_repo_matches_any (0.00s) 2026-10-22T08:24:08.511714479Z --- PASS: TestScope_CanAccess/wildcard_repo_matches_nested (0.00s) 2026-10-22T08:24:08.511756504Z --- PASS: TestScope_CanAccess/org_wildcard_matches_repo_in_org (0.00s) 2026-10-22T08:24:08.511795795Z --- PASS: TestScope_CanAccess/org_wildcard_matches_nested_repo_in_org (0.00s) 2026-10-22T08:24:08.511831303Z --- PASS: TestScope_CanAccess/org_wildcard_does_not_match_other_org (0.00s) 2026-10-22T08:24:08.51186802Z --- PASS: TestScope_CanAccess/org_wildcard_does_not_match_repo_without_slash (0.00s) 2026-10-22T08:24:08.511906758Z --- PASS: TestScope_CanAccess/wildcard_action_grants_pull (0.00s) 2026-10-22T08:24:08.51194088Z --- PASS: TestScope_CanAccess/wildcard_action_grants_push (0.00s) 2026-10-22T08:24:08.51198932Z --- PASS: TestScope_CanAccess/multiple_actions_includes_requested (0.00s) 2026-10-22T08:24:08.512025139Z --- PASS: TestScope_CanAccess/multiple_actions_includes_push (0.00s) 2026-10-22T08:24:08.512058774Z --- PASS: TestScope_CanAccess/registry_type_does_not_grant_repo_access (0.00s) 2026-10-22T08:24:08.51209483Z --- PASS: TestScope_CanAccess/empty_actions (0.00s) 2026-10-22T08:24:08.512129871Z --- PASS: TestScope_CanAccess/empty_repo_name_in_scope (0.00s) 2026-10-22T08:24:08.512152309Z === RUN TestScope_String 2026-10-22T08:24:08.51217546Z === RUN TestScope_String/simple_scope 2026-10-22T08:24:08.512197585Z === RUN TestScope_String/multiple_actions 2026-10-22T08:24:08.512223154Z === RUN TestScope_String/wildcard 2026-10-22T08:24:08.512244147Z === RUN TestScope_String/org_wildcard 2026-10-22T08:24:08.512267412Z --- PASS: TestScope_String (0.00s) 2026-10-22T08:24:08.512299945Z --- PASS: TestScope_String/simple_scope (0.00s) 2026-10-22T08:24:08.512331702Z --- PASS: TestScope_String/multiple_actions (0.00s) 2026-10-22T08:24:08.512364598Z --- PASS: TestScope_String/wildcard (0.00s) 2026-10-22T08:24:08.512396928Z --- PASS: TestScope_String/org_wildcard (0.00s) 2026-10-22T08:24:08.512539522Z === RUN TestScopesGrantRegistryAccess 2026-10-22T08:24:08.512560637Z === RUN TestScopesGrantRegistryAccess/wildcard_shorthand_grants_any_action 2026-10-22T08:24:08.512581923Z === RUN TestScopesGrantRegistryAccess/pull_shorthand_grants_pull 2026-10-22T08:24:08.5125971Z === RUN TestScopesGrantRegistryAccess/pull_shorthand_does_not_grant_push 2026-10-22T08:24:08.512622154Z === RUN TestScopesGrantRegistryAccess/push_shorthand_grants_push 2026-10-22T08:24:08.512641254Z === RUN TestScopesGrantRegistryAccess/full_scope_grants_matching_repo_and_action 2026-10-22T08:24:08.512662948Z === RUN TestScopesGrantRegistryAccess/full_scope_does_not_grant_different_repo 2026-10-22T08:24:08.512687079Z === RUN TestScopesGrantRegistryAccess/wildcard_repo_scope_grants_any_repo 2026-10-22T08:24:08.512713032Z === RUN TestScopesGrantRegistryAccess/org_wildcard_scope_grants_repo_in_org 2026-10-22T08:24:08.512739309Z === RUN TestScopesGrantRegistryAccess/org_wildcard_scope_rejects_repo_outside_org 2026-10-22T08:24:08.512760788Z === RUN TestScopesGrantRegistryAccess/admin_scope_is_ignored_for_registry_access 2026-10-22T08:24:08.512779584Z === RUN TestScopesGrantRegistryAccess/no_granted_scopes 2026-10-22T08:24:08.512804106Z === RUN TestScopesGrantRegistryAccess/whitespace_around_scope_is_trimmed 2026-10-22T08:24:08.512828689Z === RUN TestScopesGrantRegistryAccess/invalid_scope_string_is_skipped 2026-10-22T08:24:08.512945136Z --- PASS: TestScopesGrantRegistryAccess (0.00s) 2026-10-22T08:24:08.512989192Z --- PASS: TestScopesGrantRegistryAccess/wildcard_shorthand_grants_any_action (0.00s) 2026-10-22T08:24:08.51302373Z --- PASS: TestScopesGrantRegistryAccess/pull_shorthand_grants_pull (0.00s) 2026-10-22T08:24:08.513058134Z --- PASS: TestScopesGrantRegistryAccess/pull_shorthand_does_not_grant_push (0.00s) 2026-10-22T08:24:08.513095127Z --- PASS: TestScopesGrantRegistryAccess/push_shorthand_grants_push (0.00s) 2026-10-22T08:24:08.513136934Z --- PASS: TestScopesGrantRegistryAccess/full_scope_grants_matching_repo_and_action (0.00s) 2026-10-22T08:24:08.513179841Z --- PASS: TestScopesGrantRegistryAccess/full_scope_does_not_grant_different_repo (0.00s) 2026-10-22T08:24:08.513277354Z --- PASS: TestScopesGrantRegistryAccess/wildcard_repo_scope_grants_any_repo (0.00s) 2026-10-22T08:24:08.513322568Z --- PASS: TestScopesGrantRegistryAccess/org_wildcard_scope_grants_repo_in_org (0.00s) 2026-10-22T08:24:08.513353871Z --- PASS: TestScopesGrantRegistryAccess/org_wildcard_scope_rejects_repo_outside_org (0.00s) 2026-10-22T08:24:08.513381532Z --- PASS: TestScopesGrantRegistryAccess/admin_scope_is_ignored_for_registry_access (0.00s) 2026-10-22T08:24:08.513414248Z --- PASS: TestScopesGrantRegistryAccess/no_granted_scopes (0.00s) 2026-10-22T08:24:08.513448977Z --- PASS: TestScopesGrantRegistryAccess/whitespace_around_scope_is_trimmed (0.00s) 2026-10-22T08:24:08.513479949Z --- PASS: TestScopesGrantRegistryAccess/invalid_scope_string_is_skipped (0.00s) 2026-10-22T08:24:08.513498637Z === RUN TestScopesGrantAdminAccess 2026-10-22T08:24:08.513510762Z === RUN TestScopesGrantAdminAccess/wildcard_shorthand_does_not_grant_admin_access 2026-10-22T08:24:08.513521423Z === RUN TestScopesGrantAdminAccess/exact_admin_scope_grants_matching_resource_and_action 2026-10-22T08:24:08.513540914Z === RUN TestScopesGrantAdminAccess/exact_admin_scope_denies_wrong_action 2026-10-22T08:24:08.51355199Z === RUN TestScopesGrantAdminAccess/exact_admin_scope_denies_wrong_resource 2026-10-22T08:24:08.513563156Z === RUN TestScopesGrantAdminAccess/admin_wildcard_resource_grants_any_resource 2026-10-22T08:24:08.51357357Z === RUN TestScopesGrantAdminAccess/admin_wildcard_action_grants_any_action 2026-10-22T08:24:08.513583558Z === RUN TestScopesGrantAdminAccess/full_admin_wildcard_grants_everything 2026-10-22T08:24:08.513589703Z === RUN TestScopesGrantAdminAccess/logs_read_grants_logs_resource 2026-10-22T08:24:08.513595443Z === RUN TestScopesGrantAdminAccess/status_read_does_not_grant_logs_resource 2026-10-22T08:24:08.513601003Z === RUN TestScopesGrantAdminAccess/full_admin_wildcard_grants_logs_resource 2026-10-22T08:24:08.51360646Z === RUN TestScopesGrantAdminAccess/volumes_read_grants_volumes_resource 2026-10-22T08:24:08.513617408Z === RUN TestScopesGrantAdminAccess/repository_scope_is_ignored_for_admin_access 2026-10-22T08:24:08.513628082Z === RUN TestScopesGrantAdminAccess/no_granted_scopes 2026-10-22T08:24:08.513638996Z === RUN TestScopesGrantAdminAccess/whitespace_around_scope_is_trimmed 2026-10-22T08:24:08.513649303Z --- PASS: TestScopesGrantAdminAccess (0.00s) 2026-10-22T08:24:08.513672005Z --- PASS: TestScopesGrantAdminAccess/wildcard_shorthand_does_not_grant_admin_access (0.00s) 2026-10-22T08:24:08.513695214Z --- PASS: TestScopesGrantAdminAccess/exact_admin_scope_grants_matching_resource_and_action (0.00s) 2026-10-22T08:24:08.513715988Z --- PASS: TestScopesGrantAdminAccess/exact_admin_scope_denies_wrong_action (0.00s) 2026-10-22T08:24:08.51373679Z --- PASS: TestScopesGrantAdminAccess/exact_admin_scope_denies_wrong_resource (0.00s) 2026-10-22T08:24:08.513757747Z --- PASS: TestScopesGrantAdminAccess/admin_wildcard_resource_grants_any_resource (0.00s) 2026-10-22T08:24:08.513785186Z --- PASS: TestScopesGrantAdminAccess/admin_wildcard_action_grants_any_action (0.00s) 2026-10-22T08:24:08.513806453Z --- PASS: TestScopesGrantAdminAccess/full_admin_wildcard_grants_everything (0.00s) 2026-10-22T08:24:08.513825876Z --- PASS: TestScopesGrantAdminAccess/logs_read_grants_logs_resource (0.00s) 2026-10-22T08:24:08.513846555Z --- PASS: TestScopesGrantAdminAccess/status_read_does_not_grant_logs_resource (0.00s) 2026-10-22T08:24:08.513867022Z --- PASS: TestScopesGrantAdminAccess/full_admin_wildcard_grants_logs_resource (0.00s) 2026-10-22T08:24:08.513887238Z --- PASS: TestScopesGrantAdminAccess/volumes_read_grants_volumes_resource (0.00s) 2026-10-22T08:24:08.513909095Z --- PASS: TestScopesGrantAdminAccess/repository_scope_is_ignored_for_admin_access (0.00s) 2026-10-22T08:24:08.51392683Z --- PASS: TestScopesGrantAdminAccess/no_granted_scopes (0.00s) 2026-10-22T08:24:08.513946644Z --- PASS: TestScopesGrantAdminAccess/whitespace_around_scope_is_trimmed (0.00s) 2026-10-22T08:24:08.513956423Z === RUN TestParseScope_RoundTrip 2026-10-22T08:24:08.513967139Z === RUN TestParseScope_RoundTrip/repository:myrepo:pull 2026-10-22T08:24:08.513977842Z === RUN TestParseScope_RoundTrip/repository:myrepo:push,pull 2026-10-22T08:24:08.513987947Z === RUN TestParseScope_RoundTrip/repository:*:* 2026-10-22T08:24:08.513998503Z === RUN TestParseScope_RoundTrip/repository:myorg/*:push,pull 2026-10-22T08:24:08.514009003Z === RUN TestParseScope_RoundTrip/repository:myorg/team/app:pull 2026-10-22T08:24:08.514018889Z --- PASS: TestParseScope_RoundTrip (0.00s) 2026-10-22T08:24:08.514037093Z --- PASS: TestParseScope_RoundTrip/repository:myrepo:pull (0.00s) 2026-10-22T08:24:08.514057566Z --- PASS: TestParseScope_RoundTrip/repository:myrepo:push,pull (0.00s) 2026-10-22T08:24:08.514075754Z --- PASS: TestParseScope_RoundTrip/repository:*:* (0.00s) 2026-10-22T08:24:08.514094779Z --- PASS: TestParseScope_RoundTrip/repository:myorg/*:push,pull (0.00s) 2026-10-22T08:24:08.514113637Z --- PASS: TestParseScope_RoundTrip/repository:myorg/team/app:pull (0.00s) 2026-10-22T08:24:08.514118983Z === RUN TestValidateEnvKey 2026-10-22T08:24:08.514124111Z === RUN TestValidateEnvKey/simple 2026-10-22T08:24:08.514128828Z === RUN TestValidateEnvKey/with_underscore 2026-10-22T08:24:08.514135743Z === RUN TestValidateEnvKey/starts_with_underscore 2026-10-22T08:24:08.514146297Z === RUN TestValidateEnvKey/lowercase 2026-10-22T08:24:08.514153764Z === RUN TestValidateEnvKey/mixed 2026-10-22T08:24:08.514161157Z === RUN TestValidateEnvKey/empty 2026-10-22T08:24:08.514171645Z === RUN TestValidateEnvKey/starts_with_number 2026-10-22T08:24:08.514181129Z === RUN TestValidateEnvKey/contains_dot 2026-10-22T08:24:08.514187962Z === RUN TestValidateEnvKey/contains_slash 2026-10-22T08:24:08.514197928Z === RUN TestValidateEnvKey/contains_backslash 2026-10-22T08:24:08.51420556Z === RUN TestValidateEnvKey/path_traversal 2026-10-22T08:24:08.514210945Z === RUN TestValidateEnvKey/contains_hyphen 2026-10-22T08:24:08.514218084Z === RUN TestValidateEnvKey/contains_space 2026-10-22T08:24:08.514225209Z --- PASS: TestValidateEnvKey (0.00s) 2026-10-22T08:24:08.514239505Z --- PASS: TestValidateEnvKey/simple (0.00s) 2026-10-22T08:24:08.514255397Z --- PASS: TestValidateEnvKey/with_underscore (0.00s) 2026-10-22T08:24:08.514273157Z --- PASS: TestValidateEnvKey/starts_with_underscore (0.00s) 2026-10-22T08:24:08.514289553Z --- PASS: TestValidateEnvKey/lowercase (0.00s) 2026-10-22T08:24:08.514304233Z --- PASS: TestValidateEnvKey/mixed (0.00s) 2026-10-22T08:24:08.514318786Z --- PASS: TestValidateEnvKey/empty (0.00s) 2026-10-22T08:24:08.514335173Z --- PASS: TestValidateEnvKey/starts_with_number (0.00s) 2026-10-22T08:24:08.514350669Z --- PASS: TestValidateEnvKey/contains_dot (0.00s) 2026-10-22T08:24:08.51436637Z --- PASS: TestValidateEnvKey/contains_slash (0.00s) 2026-10-22T08:24:08.514382444Z --- PASS: TestValidateEnvKey/contains_backslash (0.00s) 2026-10-22T08:24:08.514398409Z --- PASS: TestValidateEnvKey/path_traversal (0.00s) 2026-10-22T08:24:08.514414456Z --- PASS: TestValidateEnvKey/contains_hyphen (0.00s) 2026-10-22T08:24:08.514430347Z --- PASS: TestValidateEnvKey/contains_space (0.00s) 2026-10-22T08:24:08.514439861Z === RUN TestContainsSecretReference 2026-10-22T08:24:08.51445062Z === RUN TestContainsSecretReference/simple_pass_reference 2026-10-22T08:24:08.514460658Z === RUN TestContainsSecretReference/simple_sops_reference 2026-10-22T08:24:08.514470772Z === RUN TestContainsSecretReference/pass_reference_in_text 2026-10-22T08:24:08.514480564Z === RUN TestContainsSecretReference/sops_reference_in_text 2026-10-22T08:24:08.514490852Z === RUN TestContainsSecretReference/no_reference_-_plain_text 2026-10-22T08:24:08.514501137Z === RUN TestContainsSecretReference/no_reference_-_dollar_sign_only 2026-10-22T08:24:08.514511297Z === RUN TestContainsSecretReference/no_reference_-_empty_braces 2026-10-22T08:24:08.514521432Z === RUN TestContainsSecretReference/no_reference_-_missing_colon 2026-10-22T08:24:08.514531704Z === RUN TestContainsSecretReference/no_reference_-_extra_braces 2026-10-22T08:24:08.514541489Z === RUN TestContainsSecretReference/normal_env_var 2026-10-22T08:24:08.514551928Z === RUN TestContainsSecretReference/value_with_equals_and_reference 2026-10-22T08:24:08.514562183Z === RUN TestContainsSecretReference/quoted_reference 2026-10-22T08:24:08.514572424Z === RUN TestContainsSecretReference/multiple_references 2026-10-22T08:24:08.514582788Z === RUN TestContainsSecretReference/case_sensitive_-_uppercase 2026-10-22T08:24:08.514593011Z === RUN TestContainsSecretReference/case_sensitive_-_mixed 2026-10-22T08:24:08.514602638Z --- PASS: TestContainsSecretReference (0.00s) 2026-10-22T08:24:08.514620896Z --- PASS: TestContainsSecretReference/simple_pass_reference (0.00s) 2026-10-22T08:24:08.514639028Z --- PASS: TestContainsSecretReference/simple_sops_reference (0.00s) 2026-10-22T08:24:08.514666176Z --- PASS: TestContainsSecretReference/pass_reference_in_text (0.00s) 2026-10-22T08:24:08.514686091Z --- PASS: TestContainsSecretReference/sops_reference_in_text (0.00s) 2026-10-22T08:24:08.514705039Z --- PASS: TestContainsSecretReference/no_reference_-_plain_text (0.00s) 2026-10-22T08:24:08.514724707Z --- PASS: TestContainsSecretReference/no_reference_-_dollar_sign_only (0.00s) 2026-10-22T08:24:08.514744Z --- PASS: TestContainsSecretReference/no_reference_-_empty_braces (0.00s) 2026-10-22T08:24:08.514763542Z --- PASS: TestContainsSecretReference/no_reference_-_missing_colon (0.00s) 2026-10-22T08:24:08.514782503Z --- PASS: TestContainsSecretReference/no_reference_-_extra_braces (0.00s) 2026-10-22T08:24:08.514799415Z --- PASS: TestContainsSecretReference/normal_env_var (0.00s) 2026-10-22T08:24:08.514819626Z --- PASS: TestContainsSecretReference/value_with_equals_and_reference (0.00s) 2026-10-22T08:24:08.514837598Z --- PASS: TestContainsSecretReference/quoted_reference (0.00s) 2026-10-22T08:24:08.51485546Z --- PASS: TestContainsSecretReference/multiple_references (0.00s) 2026-10-22T08:24:08.514874239Z --- PASS: TestContainsSecretReference/case_sensitive_-_uppercase (0.00s) 2026-10-22T08:24:08.5148933Z --- PASS: TestContainsSecretReference/case_sensitive_-_mixed (0.00s) 2026-10-22T08:24:08.514903417Z === RUN TestDefaultHTTPOptions 2026-10-22T08:24:08.514913242Z --- PASS: TestDefaultHTTPOptions (0.00s) 2026-10-22T08:24:08.514922936Z === RUN TestHTTPOptionsWithDefaults 2026-10-22T08:24:08.514932569Z --- PASS: TestHTTPOptionsWithDefaults (0.00s) 2026-10-22T08:24:08.514943123Z === RUN TestHTTPOptionsValidateRejectsNegative 2026-10-22T08:24:08.514953168Z --- PASS: TestHTTPOptionsValidateRejectsNegative (0.00s) 2026-10-22T08:24:08.514962813Z === RUN TestTrafficGraphRejectsNegativeHTTPOptions 2026-10-22T08:24:08.514972801Z --- PASS: TestTrafficGraphRejectsNegativeHTTPOptions (0.00s) 2026-10-22T08:24:08.514982836Z === RUN TestDefaultRegistryHTTPTimeouts 2026-10-22T08:24:08.514992774Z --- PASS: TestDefaultRegistryHTTPTimeouts (0.00s) 2026-10-22T08:24:08.515001051Z === RUN TestRegistryHTTPTimeoutsValidate 2026-10-22T08:24:08.515006803Z --- PASS: TestRegistryHTTPTimeoutsValidate (0.00s) 2026-10-22T08:24:08.515011534Z === RUN TestValidOCIDigest 2026-10-22T08:24:08.515016379Z === RUN TestValidOCIDigest/sha256 2026-10-22T08:24:08.515020757Z === RUN TestValidOCIDigest/sha512 2026-10-22T08:24:08.515025081Z === RUN TestValidOCIDigest/empty 2026-10-22T08:24:08.515029781Z === RUN TestValidOCIDigest/no_algorithm 2026-10-22T08:24:08.515034899Z === RUN TestValidOCIDigest/empty_encoded 2026-10-22T08:24:08.515039366Z === RUN TestValidOCIDigest/short_encoded 2026-10-22T08:24:08.515044056Z === RUN TestValidOCIDigest/uppercase_algorithm 2026-10-22T08:24:08.51504853Z === RUN TestValidOCIDigest/non_hex 2026-10-22T08:24:08.515052963Z === RUN TestValidOCIDigest/space_inside 2026-10-22T08:24:08.515057341Z --- PASS: TestValidOCIDigest (0.00s) 2026-10-22T08:24:08.515067227Z --- PASS: TestValidOCIDigest/sha256 (0.00s) 2026-10-22T08:24:08.51507757Z --- PASS: TestValidOCIDigest/sha512 (0.00s) 2026-10-22T08:24:08.515087167Z --- PASS: TestValidOCIDigest/empty (0.00s) 2026-10-22T08:24:08.515097962Z --- PASS: TestValidOCIDigest/no_algorithm (0.00s) 2026-10-22T08:24:08.515108694Z --- PASS: TestValidOCIDigest/empty_encoded (0.00s) 2026-10-22T08:24:08.515119501Z --- PASS: TestValidOCIDigest/short_encoded (0.00s) 2026-10-22T08:24:08.515131227Z --- PASS: TestValidOCIDigest/uppercase_algorithm (0.00s) 2026-10-22T08:24:08.515140972Z --- PASS: TestValidOCIDigest/non_hex (0.00s) 2026-10-22T08:24:08.515151514Z --- PASS: TestValidOCIDigest/space_inside (0.00s) 2026-10-22T08:24:08.515156129Z === RUN TestRegistryTagRefValidation 2026-10-22T08:24:08.515160802Z --- PASS: TestRegistryTagRefValidation (0.00s) 2026-10-22T08:24:08.515166651Z === RUN TestIdentityKeysAreUnambiguous 2026-10-22T08:24:08.515176657Z --- PASS: TestIdentityKeysAreUnambiguous (0.00s) 2026-10-22T08:24:08.515185639Z === RUN TestRuntimeImageRefRejectsPlaceholders 2026-10-22T08:24:08.515193485Z --- PASS: TestRuntimeImageRefRejectsPlaceholders (0.00s) 2026-10-22T08:24:08.51520189Z === RUN TestRuntimeVolumeRefValidation 2026-10-22T08:24:08.515209305Z --- PASS: TestRuntimeVolumeRefValidation (0.00s) 2026-10-22T08:24:08.515214126Z === RUN TestPruneReasonCoverage 2026-10-22T08:24:08.515218709Z --- PASS: TestPruneReasonCoverage (0.00s) 2026-10-22T08:24:08.515223304Z === RUN TestPruneReasonWireValuesAreStable 2026-10-22T08:24:08.515228114Z --- PASS: TestPruneReasonWireValuesAreStable (0.00s) 2026-10-22T08:24:08.515232764Z === RUN TestCanonicalReasonsIsDeterministic 2026-10-22T08:24:08.515237585Z --- PASS: TestCanonicalReasonsIsDeterministic (0.00s) 2026-10-22T08:24:08.515242508Z === RUN TestValidateVerdictReasons 2026-10-22T08:24:08.515247462Z === RUN TestValidateVerdictReasons/undefined_verdict 2026-10-22T08:24:08.515252176Z === RUN TestValidateVerdictReasons/no_reasons 2026-10-22T08:24:08.515256909Z === RUN TestValidateVerdictReasons/undefined_reason 2026-10-22T08:24:08.515262743Z === RUN TestValidateVerdictReasons/reason_contradicts_verdict 2026-10-22T08:24:08.515268113Z === RUN TestValidateVerdictReasons/unknown_reason_under_protected 2026-10-22T08:24:08.515272876Z --- PASS: TestValidateVerdictReasons (0.00s) 2026-10-22T08:24:08.515285222Z --- PASS: TestValidateVerdictReasons/undefined_verdict (0.00s) 2026-10-22T08:24:08.515296935Z --- PASS: TestValidateVerdictReasons/no_reasons (0.00s) 2026-10-22T08:24:08.515319956Z --- PASS: TestValidateVerdictReasons/undefined_reason (0.00s) 2026-10-22T08:24:08.515337881Z --- PASS: TestValidateVerdictReasons/reason_contradicts_verdict (0.00s) 2026-10-22T08:24:08.515353257Z --- PASS: TestValidateVerdictReasons/unknown_reason_under_protected (0.00s) 2026-10-22T08:24:08.515358521Z === RUN TestPrunePlanValidateRejectsMalformedEntries 2026-10-22T08:24:08.515363816Z --- PASS: TestPrunePlanValidateRejectsMalformedEntries (0.00s) 2026-10-22T08:24:08.515368437Z === RUN TestPrunePlanEligibleAccessors 2026-10-22T08:24:08.515373205Z --- PASS: TestPrunePlanEligibleAccessors (0.00s) 2026-10-22T08:24:08.515377733Z === RUN TestPruneProtectionSnapshotLookups 2026-10-22T08:24:08.515382496Z --- PASS: TestPruneProtectionSnapshotLookups (0.00s) 2026-10-22T08:24:08.515386821Z === RUN TestVolumeClaimValidation 2026-10-22T08:24:08.515391361Z --- PASS: TestVolumeClaimValidation (0.00s) 2026-10-22T08:24:08.515395795Z === RUN TestRuntimeInventoryCompleteness 2026-10-22T08:24:08.515400698Z --- PASS: TestRuntimeInventoryCompleteness (0.00s) 2026-10-22T08:24:08.515405491Z === RUN TestIsValidHTTP01Token 2026-10-22T08:24:08.515410041Z === RUN TestIsValidHTTP01Token/valid 2026-10-22T08:24:08.515414502Z === RUN TestIsValidHTTP01Token/empty 2026-10-22T08:24:08.515418877Z === RUN TestIsValidHTTP01Token/slash 2026-10-22T08:24:08.515423413Z === RUN TestIsValidHTTP01Token/backslash 2026-10-22T08:24:08.515427735Z === RUN TestIsValidHTTP01Token/dot_dot 2026-10-22T08:24:08.515432192Z === RUN TestIsValidHTTP01Token/nul 2026-10-22T08:24:08.515436804Z === RUN TestIsValidHTTP01Token/too_long 2026-10-22T08:24:08.515441063Z --- PASS: TestIsValidHTTP01Token (0.00s) 2026-10-22T08:24:08.515451147Z --- PASS: TestIsValidHTTP01Token/valid (0.00s) 2026-10-22T08:24:08.515461376Z --- PASS: TestIsValidHTTP01Token/empty (0.00s) 2026-10-22T08:24:08.515477755Z --- PASS: TestIsValidHTTP01Token/slash (0.00s) 2026-10-22T08:24:08.515497811Z --- PASS: TestIsValidHTTP01Token/backslash (0.00s) 2026-10-22T08:24:08.515513401Z --- PASS: TestIsValidHTTP01Token/dot_dot (0.00s) 2026-10-22T08:24:08.515525065Z --- PASS: TestIsValidHTTP01Token/nul (0.00s) 2026-10-22T08:24:08.51553616Z --- PASS: TestIsValidHTTP01Token/too_long (0.00s) 2026-10-22T08:24:08.515540401Z === RUN TestACMEChallengeModeParse 2026-10-22T08:24:08.51554493Z --- PASS: TestACMEChallengeModeParse (0.00s) 2026-10-22T08:24:08.515549298Z === RUN TestManagedCertificateCovers 2026-10-22T08:24:08.515553929Z --- PASS: TestManagedCertificateCovers (0.00s) 2026-10-22T08:24:08.515558552Z === RUN TestManagedCertificateHealth 2026-10-22T08:24:08.515563839Z === RUN TestManagedCertificateHealth/valid_certificate_far_from_expiry 2026-10-22T08:24:08.515576841Z === RUN TestManagedCertificateHealth/expired_certificate 2026-10-22T08:24:08.51558302Z === RUN TestManagedCertificateHealth/warning_when_less_than_30_days_remain 2026-10-22T08:24:08.515588543Z === RUN TestManagedCertificateHealth/warning_exactly_at_30_day_boundary 2026-10-22T08:24:08.515593815Z === RUN TestManagedCertificateHealth/missing_when_NotAfter_is_zero 2026-10-22T08:24:08.515599354Z === RUN TestManagedCertificateHealth/error_when_LastError_is_set 2026-10-22T08:24:08.515604845Z === RUN TestManagedCertificateHealth/error_takes_priority_over_expired 2026-10-22T08:24:08.515610657Z === RUN TestManagedCertificateHealth/error_takes_priority_over_zero_NotAfter 2026-10-22T08:24:08.515615498Z --- PASS: TestManagedCertificateHealth (0.00s) 2026-10-22T08:24:08.515630405Z --- PASS: TestManagedCertificateHealth/valid_certificate_far_from_expiry (0.00s) 2026-10-22T08:24:08.515644216Z --- PASS: TestManagedCertificateHealth/expired_certificate (0.00s) 2026-10-22T08:24:08.51565961Z --- PASS: TestManagedCertificateHealth/warning_when_less_than_30_days_remain (0.00s) 2026-10-22T08:24:08.515678119Z --- PASS: TestManagedCertificateHealth/warning_exactly_at_30_day_boundary (0.00s) 2026-10-22T08:24:08.515692897Z --- PASS: TestManagedCertificateHealth/missing_when_NotAfter_is_zero (0.00s) 2026-10-22T08:24:08.515707029Z --- PASS: TestManagedCertificateHealth/error_when_LastError_is_set (0.00s) 2026-10-22T08:24:08.51572203Z --- PASS: TestManagedCertificateHealth/error_takes_priority_over_expired (0.00s) 2026-10-22T08:24:08.515737913Z --- PASS: TestManagedCertificateHealth/error_takes_priority_over_zero_NotAfter (0.00s) 2026-10-22T08:24:08.515742227Z === RUN TestRedactSecrets 2026-10-22T08:24:08.515746842Z === RUN TestRedactSecrets/password_env 2026-10-22T08:24:08.51575141Z === RUN TestRedactSecrets/token_env 2026-10-22T08:24:08.515755828Z === RUN TestRedactSecrets/secret_env 2026-10-22T08:24:08.515760291Z === RUN TestRedactSecrets/api_key_env 2026-10-22T08:24:08.515764948Z === RUN TestRedactSecrets/database_url_env 2026-10-22T08:24:08.515770443Z === RUN TestRedactSecrets/quoted_password_env_with_spaces 2026-10-22T08:24:08.515775757Z === RUN TestRedactSecrets/single_quoted_token_env_with_spaces 2026-10-22T08:24:08.515781637Z === RUN TestRedactSecrets/json_password_field 2026-10-22T08:24:08.515786735Z === RUN TestRedactSecrets/json_token_field_with_spaces 2026-10-22T08:24:08.515791447Z === RUN TestRedactSecrets/case_insensitive 2026-10-22T08:24:08.515796156Z === RUN TestRedactSecrets/prefixed_password_env 2026-10-22T08:24:08.51580079Z === RUN TestRedactSecrets/prefixed_token_env 2026-10-22T08:24:08.515805349Z === RUN TestRedactSecrets/secret_key_env 2026-10-22T08:24:08.515809881Z === RUN TestRedactSecrets/api_token_env 2026-10-22T08:24:08.515816282Z === RUN TestRedactSecrets/authorization_bearer 2026-10-22T08:24:08.51582496Z === RUN TestRedactSecrets/json_prefixed_password_field 2026-10-22T08:24:08.515833756Z === RUN TestRedactSecrets/json_secret_key_field 2026-10-22T08:24:08.515840667Z --- PASS: TestRedactSecrets (0.00s) 2026-10-22T08:24:08.515857024Z --- PASS: TestRedactSecrets/password_env (0.00s) 2026-10-22T08:24:08.515868565Z --- PASS: TestRedactSecrets/token_env (0.00s) 2026-10-22T08:24:08.515878632Z --- PASS: TestRedactSecrets/secret_env (0.00s) 2026-10-22T08:24:08.515889009Z --- PASS: TestRedactSecrets/api_key_env (0.00s) 2026-10-22T08:24:08.515899961Z --- PASS: TestRedactSecrets/database_url_env (0.00s) 2026-10-22T08:24:08.515913129Z --- PASS: TestRedactSecrets/quoted_password_env_with_spaces (0.00s) 2026-10-22T08:24:08.515926977Z --- PASS: TestRedactSecrets/single_quoted_token_env_with_spaces (0.00s) 2026-10-22T08:24:08.515939048Z --- PASS: TestRedactSecrets/json_password_field (0.00s) 2026-10-22T08:24:08.515951761Z --- PASS: TestRedactSecrets/json_token_field_with_spaces (0.00s) 2026-10-22T08:24:08.515968997Z --- PASS: TestRedactSecrets/case_insensitive (0.00s) 2026-10-22T08:24:08.515981077Z --- PASS: TestRedactSecrets/prefixed_password_env (0.00s) 2026-10-22T08:24:08.515992619Z --- PASS: TestRedactSecrets/prefixed_token_env (0.00s) 2026-10-22T08:24:08.516003304Z --- PASS: TestRedactSecrets/secret_key_env (0.00s) 2026-10-22T08:24:08.516013818Z --- PASS: TestRedactSecrets/api_token_env (0.00s) 2026-10-22T08:24:08.516025315Z --- PASS: TestRedactSecrets/authorization_bearer (0.00s) 2026-10-22T08:24:08.516038051Z --- PASS: TestRedactSecrets/json_prefixed_password_field (0.00s) 2026-10-22T08:24:08.516049864Z --- PASS: TestRedactSecrets/json_secret_key_field (0.00s) 2026-10-22T08:24:08.516054552Z === RUN TestRedactSecretLinesPreservesEmptySlice 2026-10-22T08:24:08.51605943Z --- PASS: TestRedactSecretLinesPreservesEmptySlice (0.00s) 2026-10-22T08:24:08.516064824Z === RUN TestStandaloneServiceValidateRequiresNameAndImageWhenEnabled 2026-10-22T08:24:08.516077987Z --- PASS: TestStandaloneServiceValidateRequiresNameAndImageWhenEnabled (0.00s) 2026-10-22T08:24:08.516083614Z === RUN TestStandaloneServiceValidateRejectsPaddedNames 2026-10-22T08:24:08.516088899Z --- PASS: TestStandaloneServiceValidateRejectsPaddedNames (0.00s) 2026-10-22T08:24:08.516094468Z === RUN TestStandaloneServiceValidateAllowsDisabledServiceWithoutImage 2026-10-22T08:24:08.516100336Z --- PASS: TestStandaloneServiceValidateAllowsDisabledServiceWithoutImage (0.00s) 2026-10-22T08:24:08.516105305Z === RUN TestStandaloneServiceValidatePorts 2026-10-22T08:24:08.516110736Z --- PASS: TestStandaloneServiceValidatePorts (0.00s) 2026-10-22T08:24:08.516116443Z === RUN TestStandaloneServiceValidateVolumesAndEnvFile 2026-10-22T08:24:08.516121776Z --- PASS: TestStandaloneServiceValidateVolumesAndEnvFile (0.00s) 2026-10-22T08:24:08.516126579Z === RUN TestStandaloneServiceValidateReadiness 2026-10-22T08:24:08.516131989Z === RUN TestStandaloneServiceValidateReadiness/#00 2026-10-22T08:24:08.516137263Z === RUN TestStandaloneServiceValidateReadiness/none 2026-10-22T08:24:08.516142111Z === RUN TestStandaloneServiceValidateReadiness/tcp 2026-10-22T08:24:08.516146779Z === RUN TestStandaloneServiceValidateReadiness/log 2026-10-22T08:24:08.516151595Z --- PASS: TestStandaloneServiceValidateReadiness (0.00s) 2026-10-22T08:24:08.51616367Z --- PASS: TestStandaloneServiceValidateReadiness/#00 (0.00s) 2026-10-22T08:24:08.516175842Z --- PASS: TestStandaloneServiceValidateReadiness/none (0.00s) 2026-10-22T08:24:08.516187985Z --- PASS: TestStandaloneServiceValidateReadiness/tcp (0.00s) 2026-10-22T08:24:08.516200702Z --- PASS: TestStandaloneServiceValidateReadiness/log (0.00s) 2026-10-22T08:24:08.516205509Z === RUN TestStandaloneServiceWithDefaultsCleanup 2026-10-22T08:24:08.516210476Z --- PASS: TestStandaloneServiceWithDefaultsCleanup (0.00s) 2026-10-22T08:24:08.516218049Z === RUN TestStandaloneServiceValidateRejectsDuplicateVolumeTargets 2026-10-22T08:24:08.516229096Z --- PASS: TestStandaloneServiceValidateRejectsDuplicateVolumeTargets (0.00s) 2026-10-22T08:24:08.516239022Z === RUN TestTrafficGraphSmartTCPAllowsHTTPTLSPassthroughAndExplicitRawFallback 2026-10-22T08:24:08.516248605Z --- PASS: TestTrafficGraphSmartTCPAllowsHTTPTLSPassthroughAndExplicitRawFallback (0.00s) 2026-10-22T08:24:08.516256571Z === RUN TestTrafficGraphSmartTCPRawFallbackValidation 2026-10-22T08:24:08.5162671Z === RUN TestTrafficGraphSmartTCPRawFallbackValidation/public_raw_fallback_rejected_by_default 2026-10-22T08:24:08.516278709Z === RUN TestTrafficGraphSmartTCPRawFallbackValidation/raw_fallback_cidrs_require_raw_fallback_on_smart_tcp 2026-10-22T08:24:08.51629051Z === RUN TestTrafficGraphSmartTCPRawFallbackValidation/public_raw_fallback_flag_requires_raw_fallback_on_smart_tcp 2026-10-22T08:24:08.516301133Z === RUN TestTrafficGraphSmartTCPRawFallbackValidation/missing_raw_fallback_router_rejected 2026-10-22T08:24:08.516310216Z === RUN TestTrafficGraphSmartTCPRawFallbackValidation/raw_fallback_must_reference_tcp_router 2026-10-22T08:24:08.516325286Z === RUN TestTrafficGraphSmartTCPRawFallbackValidation/invalid_raw_fallback_trusted_cidr_rejected 2026-10-22T08:24:08.516337281Z === RUN TestTrafficGraphSmartTCPRawFallbackValidation/raw_fallback_rejected_on_tcp_entrypoint 2026-10-22T08:24:08.516350351Z === RUN TestTrafficGraphSmartTCPRawFallbackValidation/raw_fallback_cidrs_rejected_on_tls_mux_entrypoint 2026-10-22T08:24:08.516358133Z === RUN TestTrafficGraphSmartTCPRawFallbackValidation/public_raw_fallback_flag_rejected_on_udp_entrypoint 2026-10-22T08:24:08.516363727Z --- PASS: TestTrafficGraphSmartTCPRawFallbackValidation (0.00s) 2026-10-22T08:24:08.516381862Z --- PASS: TestTrafficGraphSmartTCPRawFallbackValidation/public_raw_fallback_rejected_by_default (0.00s) 2026-10-22T08:24:08.51640171Z --- PASS: TestTrafficGraphSmartTCPRawFallbackValidation/raw_fallback_cidrs_require_raw_fallback_on_smart_tcp (0.00s) 2026-10-22T08:24:08.516424013Z --- PASS: TestTrafficGraphSmartTCPRawFallbackValidation/public_raw_fallback_flag_requires_raw_fallback_on_smart_tcp (0.00s) 2026-10-22T08:24:08.516456147Z --- PASS: TestTrafficGraphSmartTCPRawFallbackValidation/missing_raw_fallback_router_rejected (0.00s) 2026-10-22T08:24:08.516486354Z --- PASS: TestTrafficGraphSmartTCPRawFallbackValidation/raw_fallback_must_reference_tcp_router (0.00s) 2026-10-22T08:24:08.516510461Z --- PASS: TestTrafficGraphSmartTCPRawFallbackValidation/invalid_raw_fallback_trusted_cidr_rejected (0.00s) 2026-10-22T08:24:08.516529181Z --- PASS: TestTrafficGraphSmartTCPRawFallbackValidation/raw_fallback_rejected_on_tcp_entrypoint (0.00s) 2026-10-22T08:24:08.516548851Z --- PASS: TestTrafficGraphSmartTCPRawFallbackValidation/raw_fallback_cidrs_rejected_on_tls_mux_entrypoint (0.00s) 2026-10-22T08:24:08.516569485Z --- PASS: TestTrafficGraphSmartTCPRawFallbackValidation/public_raw_fallback_flag_rejected_on_udp_entrypoint (0.00s) 2026-10-22T08:24:08.516575163Z === RUN TestTrafficGraphSmartTCPRejectsHTTPHostAndTLSSNIConflict 2026-10-22T08:24:08.5165812Z --- PASS: TestTrafficGraphSmartTCPRejectsHTTPHostAndTLSSNIConflict (0.00s) 2026-10-22T08:24:08.516586096Z === RUN TestTrafficGraphValidateEntryPoints 2026-10-22T08:24:08.516591925Z === RUN TestTrafficGraphValidateEntryPoints/duplicate_entrypoint_names 2026-10-22T08:24:08.516597401Z === RUN TestTrafficGraphValidateEntryPoints/invalid_entrypoint_address 2026-10-22T08:24:08.51660347Z === RUN TestTrafficGraphValidateEntryPoints/http_entrypoint_protocol_is_unsupported 2026-10-22T08:24:08.51660905Z === RUN TestTrafficGraphValidateEntryPoints/invalid_entrypoint_protocol 2026-10-22T08:24:08.516614606Z === RUN TestTrafficGraphValidateEntryPoints/duplicate_tcp_address_rejected 2026-10-22T08:24:08.516619957Z === RUN TestTrafficGraphValidateEntryPoints/duplicate_udp_address_rejected 2026-10-22T08:24:08.516626354Z === RUN TestTrafficGraphValidateEntryPoints/tcp_wildcard_address_conflicts_with_ipv4_specific_bind 2026-10-22T08:24:08.516634243Z === RUN TestTrafficGraphValidateEntryPoints/tcp_wildcard_address_conflicts_with_ipv6_wildcard_bind 2026-10-22T08:24:08.516640248Z === RUN TestTrafficGraphValidateEntryPoints/tcp_and_udp_same_numeric_port_allowed 2026-10-22T08:24:08.516645647Z === RUN TestTrafficGraphValidateEntryPoints/invalid_trusted_cidr_rejected 2026-10-22T08:24:08.516651337Z --- PASS: TestTrafficGraphValidateEntryPoints (0.00s) 2026-10-22T08:24:08.516666262Z --- PASS: TestTrafficGraphValidateEntryPoints/duplicate_entrypoint_names (0.00s) 2026-10-22T08:24:08.516681088Z --- PASS: TestTrafficGraphValidateEntryPoints/invalid_entrypoint_address (0.00s) 2026-10-22T08:24:08.516698381Z --- PASS: TestTrafficGraphValidateEntryPoints/http_entrypoint_protocol_is_unsupported (0.00s) 2026-10-22T08:24:08.516713701Z --- PASS: TestTrafficGraphValidateEntryPoints/invalid_entrypoint_protocol (0.00s) 2026-10-22T08:24:08.516729169Z --- PASS: TestTrafficGraphValidateEntryPoints/duplicate_tcp_address_rejected (0.00s) 2026-10-22T08:24:08.516744927Z --- PASS: TestTrafficGraphValidateEntryPoints/duplicate_udp_address_rejected (0.00s) 2026-10-22T08:24:08.516763506Z --- PASS: TestTrafficGraphValidateEntryPoints/tcp_wildcard_address_conflicts_with_ipv4_specific_bind (0.00s) 2026-10-22T08:24:08.516784182Z --- PASS: TestTrafficGraphValidateEntryPoints/tcp_wildcard_address_conflicts_with_ipv6_wildcard_bind (0.00s) 2026-10-22T08:24:08.516800628Z --- PASS: TestTrafficGraphValidateEntryPoints/tcp_and_udp_same_numeric_port_allowed (0.00s) 2026-10-22T08:24:08.516815894Z --- PASS: TestTrafficGraphValidateEntryPoints/invalid_trusted_cidr_rejected (0.00s) 2026-10-22T08:24:08.516821361Z === RUN TestTrafficGraphValidateRouterEntryPointProtocolCompatibility 2026-10-22T08:24:08.516828271Z === RUN TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/http_router_accepts_tls_mux_entrypoint 2026-10-22T08:24:08.516835583Z === RUN TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/tls_passthrough_router_accepts_tls_mux_entrypoint 2026-10-22T08:24:08.516842445Z === RUN TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/tcp_router_accepts_tcp_entrypoint 2026-10-22T08:24:08.516848993Z === RUN TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/udp_router_accepts_udp_entrypoint 2026-10-22T08:24:08.516855362Z === RUN TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/http_router_rejects_udp_entrypoint 2026-10-22T08:24:08.516862151Z === RUN TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/http_router_rejects_tcp_entrypoint 2026-10-22T08:24:08.516868489Z === RUN TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/udp_router_rejects_tcp_entrypoint 2026-10-22T08:24:08.516875939Z === RUN TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/udp_router_rejects_tls_mux_entrypoint 2026-10-22T08:24:08.516882678Z === RUN TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/tcp_router_rejects_udp_entrypoint 2026-10-22T08:24:08.516889213Z === RUN TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/tcp_router_rejects_tls_mux_entrypoint 2026-10-22T08:24:08.516895884Z === RUN TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/tls_passthrough_router_rejects_udp_entrypoint 2026-10-22T08:24:08.516903624Z === RUN TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/tls_passthrough_router_rejects_tcp_entrypoint_per_tls_mux_spec 2026-10-22T08:24:08.516910194Z --- PASS: TestTrafficGraphValidateRouterEntryPointProtocolCompatibility (0.00s) 2026-10-22T08:24:08.516930627Z --- PASS: TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/http_router_accepts_tls_mux_entrypoint (0.00s) 2026-10-22T08:24:08.516952919Z --- PASS: TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/tls_passthrough_router_accepts_tls_mux_entrypoint (0.00s) 2026-10-22T08:24:08.516973047Z --- PASS: TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/tcp_router_accepts_tcp_entrypoint (0.00s) 2026-10-22T08:24:08.516993057Z --- PASS: TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/udp_router_accepts_udp_entrypoint (0.00s) 2026-10-22T08:24:08.517013306Z --- PASS: TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/http_router_rejects_udp_entrypoint (0.00s) 2026-10-22T08:24:08.517033413Z --- PASS: TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/http_router_rejects_tcp_entrypoint (0.00s) 2026-10-22T08:24:08.517052997Z --- PASS: TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/udp_router_rejects_tcp_entrypoint (0.00s) 2026-10-22T08:24:08.517073137Z --- PASS: TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/udp_router_rejects_tls_mux_entrypoint (0.00s) 2026-10-22T08:24:08.517092732Z --- PASS: TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/tcp_router_rejects_udp_entrypoint (0.00s) 2026-10-22T08:24:08.517112902Z --- PASS: TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/tcp_router_rejects_tls_mux_entrypoint (0.00s) 2026-10-22T08:24:08.517134219Z --- PASS: TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/tls_passthrough_router_rejects_udp_entrypoint (0.00s) 2026-10-22T08:24:08.517158967Z --- PASS: TestTrafficGraphValidateRouterEntryPointProtocolCompatibility/tls_passthrough_router_rejects_tcp_entrypoint_per_tls_mux_spec (0.00s) 2026-10-22T08:24:08.517164392Z === RUN TestTrafficGraphValidateRouterNames 2026-10-22T08:24:08.517169811Z === RUN TestTrafficGraphValidateRouterNames/router_name_is_required 2026-10-22T08:24:08.51717539Z === RUN TestTrafficGraphValidateRouterNames/duplicate_router_names_rejected 2026-10-22T08:24:08.517180343Z --- PASS: TestTrafficGraphValidateRouterNames (0.00s) 2026-10-22T08:24:08.517195358Z --- PASS: TestTrafficGraphValidateRouterNames/router_name_is_required (0.00s) 2026-10-22T08:24:08.517211608Z --- PASS: TestTrafficGraphValidateRouterNames/duplicate_router_names_rejected (0.00s) 2026-10-22T08:24:08.51726622Z === RUN TestTrafficGraphValidateDuplicateHTTPHosts 2026-10-22T08:24:08.517284656Z === RUN TestTrafficGraphValidateDuplicateHTTPHosts/tls_mux_entrypoint 2026-10-22T08:24:08.517302888Z --- PASS: TestTrafficGraphValidateDuplicateHTTPHosts (0.00s) 2026-10-22T08:24:08.517329668Z --- PASS: TestTrafficGraphValidateDuplicateHTTPHosts/tls_mux_entrypoint (0.00s) 2026-10-22T08:24:08.517345061Z === RUN TestTrafficGraphValidateAmbiguousL4Routers 2026-10-22T08:24:08.517362197Z === RUN TestTrafficGraphValidateAmbiguousL4Routers/multiple_tcp_routers_on_same_entrypoint_rejected 2026-10-22T08:24:08.517380024Z === RUN TestTrafficGraphValidateAmbiguousL4Routers/multiple_udp_routers_on_same_entrypoint_rejected 2026-10-22T08:24:08.517395914Z --- PASS: TestTrafficGraphValidateAmbiguousL4Routers (0.00s) 2026-10-22T08:24:08.517425782Z --- PASS: TestTrafficGraphValidateAmbiguousL4Routers/multiple_tcp_routers_on_same_entrypoint_rejected (0.00s) 2026-10-22T08:24:08.517463367Z --- PASS: TestTrafficGraphValidateAmbiguousL4Routers/multiple_udp_routers_on_same_entrypoint_rejected (0.00s) 2026-10-22T08:24:08.517517611Z === RUN TestTrafficGraphValidateTLSRules 2026-10-22T08:24:08.517535849Z === RUN TestTrafficGraphValidateTLSRules/duplicate_exact_tls_sni_on_same_entrypoint_rejected 2026-10-22T08:24:08.517554429Z === RUN TestTrafficGraphValidateTLSRules/exact_sni_plus_wildcard_deterministic_allowed 2026-10-22T08:24:08.517569363Z === RUN TestTrafficGraphValidateTLSRules/duplicate_wildcard_sni_rejected 2026-10-22T08:24:08.517583624Z === RUN TestTrafficGraphValidateTLSRules/nested_wildcard_sni_overlap_rejected 2026-10-22T08:24:08.517595266Z === RUN TestTrafficGraphValidateTLSRules/tls_passthrough_requires_sni 2026-10-22T08:24:08.517607506Z === RUN TestTrafficGraphValidateTLSRules/http_host_and_tls_passthrough_sni_conflict_rejected 2026-10-22T08:24:08.517619705Z === RUN TestTrafficGraphValidateTLSRules/http_host_conflicts_with_later_wildcard_tls_passthrough_sni 2026-10-22T08:24:08.517632216Z === RUN TestTrafficGraphValidateTLSRules/http_host_conflicts_with_earlier_wildcard_tls_passthrough_sni 2026-10-22T08:24:08.517643151Z --- PASS: TestTrafficGraphValidateTLSRules (0.00s) 2026-10-22T08:24:08.517666982Z --- PASS: TestTrafficGraphValidateTLSRules/duplicate_exact_tls_sni_on_same_entrypoint_rejected (0.00s) 2026-10-22T08:24:08.517693148Z --- PASS: TestTrafficGraphValidateTLSRules/exact_sni_plus_wildcard_deterministic_allowed (0.00s) 2026-10-22T08:24:08.517721792Z --- PASS: TestTrafficGraphValidateTLSRules/duplicate_wildcard_sni_rejected (0.00s) 2026-10-22T08:24:08.517766976Z --- PASS: TestTrafficGraphValidateTLSRules/nested_wildcard_sni_overlap_rejected (0.00s) 2026-10-22T08:24:08.517786997Z --- PASS: TestTrafficGraphValidateTLSRules/tls_passthrough_requires_sni (0.00s) 2026-10-22T08:24:08.51781068Z --- PASS: TestTrafficGraphValidateTLSRules/http_host_and_tls_passthrough_sni_conflict_rejected (0.00s) 2026-10-22T08:24:08.517835305Z --- PASS: TestTrafficGraphValidateTLSRules/http_host_conflicts_with_later_wildcard_tls_passthrough_sni (0.00s) 2026-10-22T08:24:08.517860194Z --- PASS: TestTrafficGraphValidateTLSRules/http_host_conflicts_with_earlier_wildcard_tls_passthrough_sni (0.00s) 2026-10-22T08:24:08.517868572Z === RUN TestTrafficGraphValidateBackendsAndL4Routers 2026-10-22T08:24:08.51787855Z === RUN TestTrafficGraphValidateBackendsAndL4Routers/backend_host_required 2026-10-22T08:24:08.51789125Z === RUN TestTrafficGraphValidateBackendsAndL4Routers/backend_ports_outside_range_rejected_low 2026-10-22T08:24:08.517901735Z === RUN TestTrafficGraphValidateBackendsAndL4Routers/backend_ports_outside_range_rejected_high 2026-10-22T08:24:08.517919909Z === RUN TestTrafficGraphValidateBackendsAndL4Routers/l4_routers_reject_services_with_more_than_one_backend 2026-10-22T08:24:08.517936327Z === RUN TestTrafficGraphValidateBackendsAndL4Routers/tcp_router_requires_tcp_network_backend 2026-10-22T08:24:08.517969026Z === RUN TestTrafficGraphValidateBackendsAndL4Routers/udp_router_requires_udp_network_backend 2026-10-22T08:24:08.517984732Z === RUN TestTrafficGraphValidateBackendsAndL4Routers/tls_passthrough_requires_tcp_network_backend 2026-10-22T08:24:08.517999594Z === RUN TestTrafficGraphValidateBackendsAndL4Routers/l4_router_rejects_route_ref 2026-10-22T08:24:08.518015359Z === RUN TestTrafficGraphValidateBackendsAndL4Routers/static_ref_parses_but_graph_validation_rejects_unsupported 2026-10-22T08:24:08.518028347Z --- PASS: TestTrafficGraphValidateBackendsAndL4Routers (0.00s) 2026-10-22T08:24:08.51804825Z --- PASS: TestTrafficGraphValidateBackendsAndL4Routers/backend_host_required (0.00s) 2026-10-22T08:24:08.518071012Z --- PASS: TestTrafficGraphValidateBackendsAndL4Routers/backend_ports_outside_range_rejected_low (0.00s) 2026-10-22T08:24:08.518095921Z --- PASS: TestTrafficGraphValidateBackendsAndL4Routers/backend_ports_outside_range_rejected_high (0.00s) 2026-10-22T08:24:08.518124143Z --- PASS: TestTrafficGraphValidateBackendsAndL4Routers/l4_routers_reject_services_with_more_than_one_backend (0.00s) 2026-10-22T08:24:08.518159778Z --- PASS: TestTrafficGraphValidateBackendsAndL4Routers/tcp_router_requires_tcp_network_backend (0.00s) 2026-10-22T08:24:08.518195806Z --- PASS: TestTrafficGraphValidateBackendsAndL4Routers/udp_router_requires_udp_network_backend (0.00s) 2026-10-22T08:24:08.518226501Z --- PASS: TestTrafficGraphValidateBackendsAndL4Routers/tls_passthrough_requires_tcp_network_backend (0.00s) 2026-10-22T08:24:08.518252433Z --- PASS: TestTrafficGraphValidateBackendsAndL4Routers/l4_router_rejects_route_ref (0.00s) 2026-10-22T08:24:08.518282119Z --- PASS: TestTrafficGraphValidateBackendsAndL4Routers/static_ref_parses_but_graph_validation_rejects_unsupported (0.00s) 2026-10-22T08:24:08.518295987Z === RUN TestTrafficGraphValidateL4ServiceRefs 2026-10-22T08:24:08.518308273Z === RUN TestTrafficGraphValidateL4ServiceRefs/tcp_allows_service_ref_with_tcp_backend 2026-10-22T08:24:08.5183185Z === RUN TestTrafficGraphValidateL4ServiceRefs/udp_allows_service_ref_with_udp_backend 2026-10-22T08:24:08.51833317Z === RUN TestTrafficGraphValidateL4ServiceRefs/tls_passthrough_allows_service_ref_with_tcp_backend 2026-10-22T08:24:08.518343281Z --- PASS: TestTrafficGraphValidateL4ServiceRefs (0.00s) 2026-10-22T08:24:08.518369811Z --- PASS: TestTrafficGraphValidateL4ServiceRefs/tcp_allows_service_ref_with_tcp_backend (0.00s) 2026-10-22T08:24:08.518396086Z --- PASS: TestTrafficGraphValidateL4ServiceRefs/udp_allows_service_ref_with_udp_backend (0.00s) 2026-10-22T08:24:08.518423242Z --- PASS: TestTrafficGraphValidateL4ServiceRefs/tls_passthrough_allows_service_ref_with_tcp_backend (0.00s) 2026-10-22T08:24:08.518439759Z === RUN TestTrafficGraphValidateHTTPServiceRefs 2026-10-22T08:24:08.518454438Z === RUN TestTrafficGraphValidateHTTPServiceRefs/http_allows_route 2026-10-22T08:24:08.518469689Z === RUN TestTrafficGraphValidateHTTPServiceRefs/http_allows_external_route 2026-10-22T08:24:08.518501246Z === RUN TestTrafficGraphValidateHTTPServiceRefs/http_rejects_network_service 2026-10-22T08:24:08.518516542Z === RUN TestTrafficGraphValidateHTTPServiceRefs/http_rejects_service 2026-10-22T08:24:08.518532786Z === RUN TestTrafficGraphValidateHTTPServiceRefs/http_rejects_static 2026-10-22T08:24:08.518539193Z --- PASS: TestTrafficGraphValidateHTTPServiceRefs (0.00s) 2026-10-22T08:24:08.518558394Z --- PASS: TestTrafficGraphValidateHTTPServiceRefs/http_allows_route (0.00s) 2026-10-22T08:24:08.518578091Z --- PASS: TestTrafficGraphValidateHTTPServiceRefs/http_allows_external_route (0.00s) 2026-10-22T08:24:08.518604244Z --- PASS: TestTrafficGraphValidateHTTPServiceRefs/http_rejects_network_service (0.00s) 2026-10-22T08:24:08.518629322Z --- PASS: TestTrafficGraphValidateHTTPServiceRefs/http_rejects_service (0.00s) 2026-10-22T08:24:08.518680269Z --- PASS: TestTrafficGraphValidateHTTPServiceRefs/http_rejects_static (0.00s) 2026-10-22T08:24:08.51870385Z === RUN TestTrafficGraphValidateRouterServiceRefs 2026-10-22T08:24:08.518726021Z === RUN TestTrafficGraphValidateRouterServiceRefs/router_service_ref_is_parsed 2026-10-22T08:24:08.518750128Z === RUN TestTrafficGraphValidateRouterServiceRefs/router_service_ref_must_exist_as_service_name 2026-10-22T08:24:08.518763095Z --- PASS: TestTrafficGraphValidateRouterServiceRefs (0.00s) 2026-10-22T08:24:08.518783744Z --- PASS: TestTrafficGraphValidateRouterServiceRefs/router_service_ref_is_parsed (0.00s) 2026-10-22T08:24:08.518810801Z --- PASS: TestTrafficGraphValidateRouterServiceRefs/router_service_ref_must_exist_as_service_name (0.00s) 2026-10-22T08:24:08.518825683Z === RUN TestTrafficServiceRef 2026-10-22T08:24:08.518840047Z --- PASS: TestTrafficServiceRef (0.00s) 2026-10-22T08:24:08.518853317Z === RUN TestParseTrafficServiceRef 2026-10-22T08:24:08.518863802Z === RUN TestParseTrafficServiceRef/route:app.example.com 2026-10-22T08:24:08.518873602Z === RUN TestParseTrafficServiceRef/external_route:api.example.com 2026-10-22T08:24:08.518887844Z === RUN TestParseTrafficServiceRef/network_service:postgres:db 2026-10-22T08:24:08.518897523Z === RUN TestParseTrafficServiceRef/network_service:web:http 2026-10-22T08:24:08.518907542Z === RUN TestParseTrafficServiceRef/network_service:game:game 2026-10-22T08:24:08.518923225Z === RUN TestParseTrafficServiceRef/service:rust:game 2026-10-22T08:24:08.518933176Z === RUN TestParseTrafficServiceRef/static:maintenance 2026-10-22T08:24:08.518938779Z === RUN TestParseTrafficServiceRef/invalid_ 2026-10-22T08:24:08.518947146Z === RUN TestParseTrafficServiceRef/invalid_route: 2026-10-22T08:24:08.518956916Z === RUN TestParseTrafficServiceRef/invalid_external_route: 2026-10-22T08:24:08.518965626Z === RUN TestParseTrafficServiceRef/invalid_network_service: 2026-10-22T08:24:08.518974635Z === RUN TestParseTrafficServiceRef/invalid_network_service:postgres 2026-10-22T08:24:08.518990302Z === RUN TestParseTrafficServiceRef/invalid_network_service:postgres: 2026-10-22T08:24:08.519001436Z === RUN TestParseTrafficServiceRef/invalid_network_service::db 2026-10-22T08:24:08.519011534Z === RUN TestParseTrafficServiceRef/invalid_network_service:postgres:db:extra 2026-10-22T08:24:08.519024328Z === RUN TestParseTrafficServiceRef/invalid_service: 2026-10-22T08:24:08.519033833Z === RUN TestParseTrafficServiceRef/invalid_service:rust 2026-10-22T08:24:08.519045502Z === RUN TestParseTrafficServiceRef/invalid_service:rust: 2026-10-22T08:24:08.519076295Z === RUN TestParseTrafficServiceRef/invalid_service::game 2026-10-22T08:24:08.519095494Z === RUN TestParseTrafficServiceRef/invalid_service:rust:game:extra 2026-10-22T08:24:08.519106488Z === RUN TestParseTrafficServiceRef/invalid_static: 2026-10-22T08:24:08.519119032Z === RUN TestParseTrafficServiceRef/invalid_unknown:value 2026-10-22T08:24:08.519135262Z --- PASS: TestParseTrafficServiceRef (0.00s) 2026-10-22T08:24:08.519158359Z --- PASS: TestParseTrafficServiceRef/route:app.example.com (0.00s) 2026-10-22T08:24:08.519181768Z --- PASS: TestParseTrafficServiceRef/external_route:api.example.com (0.00s) 2026-10-22T08:24:08.519206533Z --- PASS: TestParseTrafficServiceRef/network_service:postgres:db (0.00s) 2026-10-22T08:24:08.51922672Z --- PASS: TestParseTrafficServiceRef/network_service:web:http (0.00s) 2026-10-22T08:24:08.519245327Z --- PASS: TestParseTrafficServiceRef/network_service:game:game (0.00s) 2026-10-22T08:24:08.519261577Z --- PASS: TestParseTrafficServiceRef/service:rust:game (0.00s) 2026-10-22T08:24:08.519282603Z --- PASS: TestParseTrafficServiceRef/static:maintenance (0.00s) 2026-10-22T08:24:08.519304052Z --- PASS: TestParseTrafficServiceRef/invalid_ (0.00s) 2026-10-22T08:24:08.519324778Z --- PASS: TestParseTrafficServiceRef/invalid_route: (0.00s) 2026-10-22T08:24:08.519348735Z --- PASS: TestParseTrafficServiceRef/invalid_external_route: (0.00s) 2026-10-22T08:24:08.519371152Z --- PASS: TestParseTrafficServiceRef/invalid_network_service: (0.00s) 2026-10-22T08:24:08.519394463Z --- PASS: TestParseTrafficServiceRef/invalid_network_service:postgres (0.00s) 2026-10-22T08:24:08.519415739Z --- PASS: TestParseTrafficServiceRef/invalid_network_service:postgres: (0.00s) 2026-10-22T08:24:08.519434577Z --- PASS: TestParseTrafficServiceRef/invalid_network_service::db (0.00s) 2026-10-22T08:24:08.519458588Z --- PASS: TestParseTrafficServiceRef/invalid_network_service:postgres:db:extra (0.00s) 2026-10-22T08:24:08.519477705Z --- PASS: TestParseTrafficServiceRef/invalid_service: (0.00s) 2026-10-22T08:24:08.519502404Z --- PASS: TestParseTrafficServiceRef/invalid_service:rust (0.00s) 2026-10-22T08:24:08.519524286Z --- PASS: TestParseTrafficServiceRef/invalid_service:rust: (0.00s) 2026-10-22T08:24:08.519546356Z --- PASS: TestParseTrafficServiceRef/invalid_service::game (0.00s) 2026-10-22T08:24:08.519570907Z --- PASS: TestParseTrafficServiceRef/invalid_service:rust:game:extra (0.00s) 2026-10-22T08:24:08.519591517Z --- PASS: TestParseTrafficServiceRef/invalid_static: (0.00s) 2026-10-22T08:24:08.519613443Z --- PASS: TestParseTrafficServiceRef/invalid_unknown:value (0.00s) 2026-10-22T08:24:08.519628606Z === RUN TestTrafficGraphValidateRejectsInvalidOptions 2026-10-22T08:24:08.519644741Z === RUN TestTrafficGraphValidateRejectsInvalidOptions/negative_tcp_dial_timeout 2026-10-22T08:24:08.519661649Z === RUN TestTrafficGraphValidateRejectsInvalidOptions/negative_tcp_idle_timeout 2026-10-22T08:24:08.519677143Z === RUN TestTrafficGraphValidateRejectsInvalidOptions/negative_tcp_drain_timeout 2026-10-22T08:24:08.519691701Z === RUN TestTrafficGraphValidateRejectsInvalidOptions/negative_tcp_max_connections 2026-10-22T08:24:08.519708473Z === RUN TestTrafficGraphValidateRejectsInvalidOptions/negative_udp_idle_timeout 2026-10-22T08:24:08.519722417Z === RUN TestTrafficGraphValidateRejectsInvalidOptions/negative_udp_drain_timeout 2026-10-22T08:24:08.519736774Z === RUN TestTrafficGraphValidateRejectsInvalidOptions/negative_udp_max_sessions 2026-10-22T08:24:08.519752164Z --- PASS: TestTrafficGraphValidateRejectsInvalidOptions (0.00s) 2026-10-22T08:24:08.519777289Z --- PASS: TestTrafficGraphValidateRejectsInvalidOptions/negative_tcp_dial_timeout (0.00s) 2026-10-22T08:24:08.519804361Z --- PASS: TestTrafficGraphValidateRejectsInvalidOptions/negative_tcp_idle_timeout (0.00s) 2026-10-22T08:24:08.519832247Z --- PASS: TestTrafficGraphValidateRejectsInvalidOptions/negative_tcp_drain_timeout (0.00s) 2026-10-22T08:24:08.519858471Z --- PASS: TestTrafficGraphValidateRejectsInvalidOptions/negative_tcp_max_connections (0.00s) 2026-10-22T08:24:08.519885446Z --- PASS: TestTrafficGraphValidateRejectsInvalidOptions/negative_udp_idle_timeout (0.00s) 2026-10-22T08:24:08.519910747Z --- PASS: TestTrafficGraphValidateRejectsInvalidOptions/negative_udp_drain_timeout (0.00s) 2026-10-22T08:24:08.519937665Z --- PASS: TestTrafficGraphValidateRejectsInvalidOptions/negative_udp_max_sessions (0.00s) 2026-10-22T08:24:08.519951615Z === RUN TestTrafficDomainTypesMatchSpecFields 2026-10-22T08:24:08.519965824Z --- PASS: TestTrafficDomainTypesMatchSpecFields (0.00s) 2026-10-22T08:24:08.519979631Z === RUN TestIsValidRouteDomain 2026-10-22T08:24:08.519993681Z === RUN TestIsValidRouteDomain/valid_domain 2026-10-22T08:24:08.520007553Z === RUN TestIsValidRouteDomain/valid_subdomain 2026-10-22T08:24:08.520023951Z === RUN TestIsValidRouteDomain/valid_single_subdomain 2026-10-22T08:24:08.520037377Z === RUN TestIsValidRouteDomain/valid_with_hyphens 2026-10-22T08:24:08.520052618Z === RUN TestIsValidRouteDomain/empty_domain 2026-10-22T08:24:08.520068061Z === RUN TestIsValidRouteDomain/IPv4_address 2026-10-22T08:24:08.520081513Z === RUN TestIsValidRouteDomain/IPv4_with_path 2026-10-22T08:24:08.520097084Z === RUN TestIsValidRouteDomain/IPv4_localhost 2026-10-22T08:24:08.520115138Z === RUN TestIsValidRouteDomain/IPv6_address 2026-10-22T08:24:08.520129404Z === RUN TestIsValidRouteDomain/IPv6_full 2026-10-22T08:24:08.520148819Z === RUN TestIsValidRouteDomain/IPv6_bracketed 2026-10-22T08:24:08.520162923Z === RUN TestIsValidRouteDomain/IPv6_with_zone 2026-10-22T08:24:08.520177589Z === RUN TestIsValidRouteDomain/localhost 2026-10-22T08:24:08.520194011Z === RUN TestIsValidRouteDomain/localhost.localdomain 2026-10-22T08:24:08.52020047Z === RUN TestIsValidRouteDomain/dot_local 2026-10-22T08:24:08.52020673Z === RUN TestIsValidRouteDomain/dot_internal 2026-10-22T08:24:08.520215249Z === RUN TestIsValidRouteDomain/subdomain_local 2026-10-22T08:24:08.520220711Z === RUN TestIsValidRouteDomain/with_port 2026-10-22T08:24:08.520229568Z === RUN TestIsValidRouteDomain/localhost_with_port 2026-10-22T08:24:08.520241315Z === RUN TestIsValidRouteDomain/IP_with_port 2026-10-22T08:24:08.520252465Z === RUN TestIsValidRouteDomain/with_scheme 2026-10-22T08:24:08.520265292Z === RUN TestIsValidRouteDomain/with_path 2026-10-22T08:24:08.520274286Z === RUN TestIsValidRouteDomain/with_query 2026-10-22T08:24:08.520283344Z === RUN TestIsValidRouteDomain/wildcard 2026-10-22T08:24:08.520293716Z === RUN TestIsValidRouteDomain/star_anywhere 2026-10-22T08:24:08.520308284Z === RUN TestIsValidRouteDomain/single_label 2026-10-22T08:24:08.520329236Z === RUN TestIsValidRouteDomain/single_label_numeric 2026-10-22T08:24:08.520338833Z === RUN TestIsValidRouteDomain/trailing_dot 2026-10-22T08:24:08.520348184Z === RUN TestIsValidRouteDomain/leading_dot 2026-10-22T08:24:08.520357181Z === RUN TestIsValidRouteDomain/double_dots 2026-10-22T08:24:08.520366334Z === RUN TestIsValidRouteDomain/label_starts_with_hyphen 2026-10-22T08:24:08.520375602Z === RUN TestIsValidRouteDomain/label_ends_with_hyphen 2026-10-22T08:24:08.520387011Z === RUN TestIsValidRouteDomain/label_starts_and_ends_with_hyphen 2026-10-22T08:24:08.520408762Z === RUN TestIsValidRouteDomain/root_label_starts_with_hyphen 2026-10-22T08:24:08.520424541Z === RUN TestIsValidRouteDomain/root_label_ends_with_hyphen 2026-10-22T08:24:08.520446281Z === RUN TestIsValidRouteDomain/label_too_long 2026-10-22T08:24:08.520460639Z === RUN TestIsValidRouteDomain/hostname_too_long 2026-10-22T08:24:08.520475703Z === RUN TestIsValidRouteDomain/dot_localhost_suffix 2026-10-22T08:24:08.520493056Z === RUN TestIsValidRouteDomain/deep_localhost_suffix 2026-10-22T08:24:08.520507553Z === RUN TestIsValidRouteDomain/mixed_case_localhost_suffix 2026-10-22T08:24:08.520522915Z --- PASS: TestIsValidRouteDomain (0.00s) 2026-10-22T08:24:08.520542781Z --- PASS: TestIsValidRouteDomain/valid_domain (0.00s) 2026-10-22T08:24:08.520563732Z --- PASS: TestIsValidRouteDomain/valid_subdomain (0.00s) 2026-10-22T08:24:08.520587067Z --- PASS: TestIsValidRouteDomain/valid_single_subdomain (0.00s) 2026-10-22T08:24:08.520608876Z --- PASS: TestIsValidRouteDomain/valid_with_hyphens (0.00s) 2026-10-22T08:24:08.520629276Z --- PASS: TestIsValidRouteDomain/empty_domain (0.00s) 2026-10-22T08:24:08.520650489Z --- PASS: TestIsValidRouteDomain/IPv4_address (0.00s) 2026-10-22T08:24:08.52067037Z --- PASS: TestIsValidRouteDomain/IPv4_with_path (0.00s) 2026-10-22T08:24:08.520693041Z --- PASS: TestIsValidRouteDomain/IPv4_localhost (0.00s) 2026-10-22T08:24:08.520709517Z --- PASS: TestIsValidRouteDomain/IPv6_address (0.00s) 2026-10-22T08:24:08.520724311Z --- PASS: TestIsValidRouteDomain/IPv6_full (0.00s) 2026-10-22T08:24:08.520745768Z --- PASS: TestIsValidRouteDomain/IPv6_bracketed (0.00s) 2026-10-22T08:24:08.520767547Z --- PASS: TestIsValidRouteDomain/IPv6_with_zone (0.00s) 2026-10-22T08:24:08.520788993Z --- PASS: TestIsValidRouteDomain/localhost (0.00s) 2026-10-22T08:24:08.520810792Z --- PASS: TestIsValidRouteDomain/localhost.localdomain (0.00s) 2026-10-22T08:24:08.5208323Z --- PASS: TestIsValidRouteDomain/dot_local (0.00s) 2026-10-22T08:24:08.520852459Z --- PASS: TestIsValidRouteDomain/dot_internal (0.00s) 2026-10-22T08:24:08.520868567Z --- PASS: TestIsValidRouteDomain/subdomain_local (0.00s) 2026-10-22T08:24:08.520883291Z --- PASS: TestIsValidRouteDomain/with_port (0.00s) 2026-10-22T08:24:08.520914515Z --- PASS: TestIsValidRouteDomain/localhost_with_port (0.00s) 2026-10-22T08:24:08.52096299Z --- PASS: TestIsValidRouteDomain/IP_with_port (0.00s) 2026-10-22T08:24:08.520998066Z --- PASS: TestIsValidRouteDomain/with_scheme (0.00s) 2026-10-22T08:24:08.521025152Z --- PASS: TestIsValidRouteDomain/with_path (0.00s) 2026-10-22T08:24:08.521041724Z --- PASS: TestIsValidRouteDomain/with_query (0.00s) 2026-10-22T08:24:08.521057881Z --- PASS: TestIsValidRouteDomain/wildcard (0.00s) 2026-10-22T08:24:08.521082152Z --- PASS: TestIsValidRouteDomain/star_anywhere (0.00s) 2026-10-22T08:24:08.521103466Z --- PASS: TestIsValidRouteDomain/single_label (0.00s) 2026-10-22T08:24:08.521127295Z --- PASS: TestIsValidRouteDomain/single_label_numeric (0.00s) 2026-10-22T08:24:08.521148023Z --- PASS: TestIsValidRouteDomain/trailing_dot (0.00s) 2026-10-22T08:24:08.521167953Z --- PASS: TestIsValidRouteDomain/leading_dot (0.00s) 2026-10-22T08:24:08.521185099Z --- PASS: TestIsValidRouteDomain/double_dots (0.00s) 2026-10-22T08:24:08.521207273Z --- PASS: TestIsValidRouteDomain/label_starts_with_hyphen (0.00s) 2026-10-22T08:24:08.521229051Z --- PASS: TestIsValidRouteDomain/label_ends_with_hyphen (0.00s) 2026-10-22T08:24:08.521260658Z --- PASS: TestIsValidRouteDomain/label_starts_and_ends_with_hyphen (0.00s) 2026-10-22T08:24:08.521293773Z --- PASS: TestIsValidRouteDomain/root_label_starts_with_hyphen (0.00s) 2026-10-22T08:24:08.521325727Z --- PASS: TestIsValidRouteDomain/root_label_ends_with_hyphen (0.00s) 2026-10-22T08:24:08.521350178Z --- PASS: TestIsValidRouteDomain/label_too_long (0.00s) 2026-10-22T08:24:08.521376321Z --- PASS: TestIsValidRouteDomain/hostname_too_long (0.00s) 2026-10-22T08:24:08.521403594Z --- PASS: TestIsValidRouteDomain/dot_localhost_suffix (0.00s) 2026-10-22T08:24:08.521427535Z --- PASS: TestIsValidRouteDomain/deep_localhost_suffix (0.00s) 2026-10-22T08:24:08.521454459Z --- PASS: TestIsValidRouteDomain/mixed_case_localhost_suffix (0.00s) 2026-10-22T08:24:08.521475056Z === RUN TestAppSpec_ValidateBindsOK 2026-10-22T08:24:08.521493307Z --- PASS: TestAppSpec_ValidateBindsOK (0.00s) 2026-10-22T08:24:08.521504491Z === RUN TestAppSpec_ValidateBindErrors 2026-10-22T08:24:08.521513813Z === RUN TestAppSpec_ValidateBindErrors/bad_bind_name 2026-10-22T08:24:08.521523433Z === RUN TestAppSpec_ValidateBindErrors/reserved_separator_name 2026-10-22T08:24:08.521534506Z === RUN TestAppSpec_ValidateBindErrors/relative_destination 2026-10-22T08:24:08.521544068Z === RUN TestAppSpec_ValidateBindErrors/unnormalized_destination 2026-10-22T08:24:08.521559612Z === RUN TestAppSpec_ValidateBindErrors/trailing_slash_destination 2026-10-22T08:24:08.521593032Z === RUN TestAppSpec_ValidateBindErrors/sensitive_destination 2026-10-22T08:24:08.52161056Z === RUN TestAppSpec_ValidateBindErrors/duplicate_bind_name 2026-10-22T08:24:08.521621655Z === RUN TestAppSpec_ValidateBindErrors/duplicate_bind_destination 2026-10-22T08:24:08.521636063Z === RUN TestAppSpec_ValidateBindErrors/collision_with_volume 2026-10-22T08:24:08.521654354Z --- PASS: TestAppSpec_ValidateBindErrors (0.00s) 2026-10-22T08:24:08.52168106Z --- PASS: TestAppSpec_ValidateBindErrors/bad_bind_name (0.00s) 2026-10-22T08:24:08.521704768Z --- PASS: TestAppSpec_ValidateBindErrors/reserved_separator_name (0.00s) 2026-10-22T08:24:08.521733777Z --- PASS: TestAppSpec_ValidateBindErrors/relative_destination (0.00s) 2026-10-22T08:24:08.521766806Z --- PASS: TestAppSpec_ValidateBindErrors/unnormalized_destination (0.00s) 2026-10-22T08:24:08.521792445Z --- PASS: TestAppSpec_ValidateBindErrors/trailing_slash_destination (0.00s) 2026-10-22T08:24:08.521815432Z --- PASS: TestAppSpec_ValidateBindErrors/sensitive_destination (0.00s) 2026-10-22T08:24:08.521844886Z --- PASS: TestAppSpec_ValidateBindErrors/duplicate_bind_name (0.00s) 2026-10-22T08:24:08.521870879Z --- PASS: TestAppSpec_ValidateBindErrors/duplicate_bind_destination (0.00s) 2026-10-22T08:24:08.521895163Z --- PASS: TestAppSpec_ValidateBindErrors/collision_with_volume (0.00s) 2026-10-22T08:24:08.5219131Z === RUN TestValidateBindName 2026-10-22T08:24:08.521934202Z --- PASS: TestValidateBindName (0.00s) 2026-10-22T08:24:08.521950425Z === RUN TestValidateBindDestination 2026-10-22T08:24:08.521964066Z --- PASS: TestValidateBindDestination (0.00s) 2026-10-22T08:24:08.52196975Z === RUN TestIsSensitiveBindDestination 2026-10-22T08:24:08.521974636Z --- PASS: TestIsSensitiveBindDestination (0.00s) 2026-10-22T08:24:08.522001276Z === RUN TestDiffAppSpec_Binds 2026-10-22T08:24:08.52200644Z --- PASS: TestDiffAppSpec_Binds (0.00s) 2026-10-22T08:24:08.522011487Z === RUN TestValidatePublishForListener_ExactTupleAccepted 2026-10-22T08:24:08.522022258Z === RUN TestValidatePublishForListener_ExactTupleAccepted/tcp_wildcard_explicit 2026-10-22T08:24:08.522034966Z === RUN TestValidatePublishForListener_ExactTupleAccepted/tcp_empty_host_equals_wildcard_listener 2026-10-22T08:24:08.522050439Z === RUN TestValidatePublishForListener_ExactTupleAccepted/tcp_smart_entrypoint 2026-10-22T08:24:08.522067981Z === RUN TestValidatePublishForListener_ExactTupleAccepted/udp 2026-10-22T08:24:08.522084466Z === RUN TestValidatePublishForListener_ExactTupleAccepted/loopback_listener_with_loopback_publish 2026-10-22T08:24:08.522102067Z --- PASS: TestValidatePublishForListener_ExactTupleAccepted (0.00s) 2026-10-22T08:24:08.522126646Z --- PASS: TestValidatePublishForListener_ExactTupleAccepted/tcp_wildcard_explicit (0.00s) 2026-10-22T08:24:08.522151784Z --- PASS: TestValidatePublishForListener_ExactTupleAccepted/tcp_empty_host_equals_wildcard_listener (0.00s) 2026-10-22T08:24:08.522174085Z --- PASS: TestValidatePublishForListener_ExactTupleAccepted/tcp_smart_entrypoint (0.00s) 2026-10-22T08:24:08.52219324Z --- PASS: TestValidatePublishForListener_ExactTupleAccepted/udp (0.00s) 2026-10-22T08:24:08.522217265Z --- PASS: TestValidatePublishForListener_ExactTupleAccepted/loopback_listener_with_loopback_publish (0.00s) 2026-10-22T08:24:08.522227784Z === RUN TestValidatePublishForListener_RejectsMismatch 2026-10-22T08:24:08.52223896Z === RUN TestValidatePublishForListener_RejectsMismatch/loopback_publish_on_wildcard_listener 2026-10-22T08:24:08.522250591Z === RUN TestValidatePublishForListener_RejectsMismatch/port_mismatch 2026-10-22T08:24:08.522262311Z === RUN TestValidatePublishForListener_RejectsMismatch/loopback_vs_wildcard_host 2026-10-22T08:24:08.522273277Z === RUN TestValidatePublishForListener_RejectsMismatch/udp_on_tcp_entrypoint 2026-10-22T08:24:08.522283656Z === RUN TestValidatePublishForListener_RejectsMismatch/tcp_on_udp_entrypoint 2026-10-22T08:24:08.52229442Z === RUN TestValidatePublishForListener_RejectsMismatch/hostname_publish 2026-10-22T08:24:08.522304931Z === RUN TestValidatePublishForListener_RejectsMismatch/missing_port 2026-10-22T08:24:08.522315485Z === RUN TestValidatePublishForListener_RejectsMismatch/invalid_listener_address 2026-10-22T08:24:08.522325881Z --- PASS: TestValidatePublishForListener_RejectsMismatch (0.00s) 2026-10-22T08:24:08.522349574Z --- PASS: TestValidatePublishForListener_RejectsMismatch/loopback_publish_on_wildcard_listener (0.00s) 2026-10-22T08:24:08.522369979Z --- PASS: TestValidatePublishForListener_RejectsMismatch/port_mismatch (0.00s) 2026-10-22T08:24:08.522391251Z --- PASS: TestValidatePublishForListener_RejectsMismatch/loopback_vs_wildcard_host (0.00s) 2026-10-22T08:24:08.522412147Z --- PASS: TestValidatePublishForListener_RejectsMismatch/udp_on_tcp_entrypoint (0.00s) 2026-10-22T08:24:08.522433566Z --- PASS: TestValidatePublishForListener_RejectsMismatch/tcp_on_udp_entrypoint (0.00s) 2026-10-22T08:24:08.522451588Z --- PASS: TestValidatePublishForListener_RejectsMismatch/hostname_publish (0.00s) 2026-10-22T08:24:08.522471182Z --- PASS: TestValidatePublishForListener_RejectsMismatch/missing_port (0.00s) 2026-10-22T08:24:08.522492222Z --- PASS: TestValidatePublishForListener_RejectsMismatch/invalid_listener_address (0.00s) 2026-10-22T08:24:08.522502241Z === RUN TestCanonicalBindHost 2026-10-22T08:24:08.522512126Z --- PASS: TestCanonicalBindHost (0.00s) 2026-10-22T08:24:08.522522343Z === RUN TestAppPrivateNetworkName_DerivesFromUUIDNotName 2026-10-22T08:24:08.522532484Z --- PASS: TestAppPrivateNetworkName_DerivesFromUUIDNotName (0.00s) 2026-10-22T08:24:08.522542677Z === RUN TestAppPrivateNetworkName_AppliesDefaultPrefix 2026-10-22T08:24:08.522552918Z --- PASS: TestAppPrivateNetworkName_AppliesDefaultPrefix (0.00s) 2026-10-22T08:24:08.522562889Z === RUN TestAppSharedNetworkName_StablePerDeclaration 2026-10-22T08:24:08.522573334Z --- PASS: TestAppSharedNetworkName_StablePerDeclaration (0.00s) 2026-10-22T08:24:08.522583648Z === RUN TestNetworkOwnedBy_RequiresEveryExpectedLabel 2026-10-22T08:24:08.522593834Z --- PASS: TestNetworkOwnedBy_RequiresEveryExpectedLabel (0.00s) 2026-10-22T08:24:08.522603943Z === RUN TestAppServiceSharedNetworks_FiltersAndDeduplicates 2026-10-22T08:24:08.522614258Z --- PASS: TestAppServiceSharedNetworks_FiltersAndDeduplicates (0.00s) 2026-10-22T08:24:08.522624918Z === RUN TestValidateReadinessPath 2026-10-22T08:24:08.522632016Z --- PASS: TestValidateReadinessPath (0.00s) 2026-10-22T08:24:08.522637482Z === RUN TestAppSpecValidate_RejectsAuthorityInReadinessPath 2026-10-22T08:24:08.522642954Z --- PASS: TestAppSpecValidate_RejectsAuthorityInReadinessPath (0.00s) 2026-10-22T08:24:08.522648599Z === RUN TestReservationsFor_SortedAndNamespaced 2026-10-22T08:24:08.522667637Z --- PASS: TestReservationsFor_SortedAndNamespaced (0.00s) 2026-10-22T08:24:08.522680542Z === RUN TestCheckReservations_RejectsDuplicateInsideCandidate 2026-10-22T08:24:08.522691254Z --- PASS: TestCheckReservations_RejectsDuplicateInsideCandidate (0.00s) 2026-10-22T08:24:08.522701809Z === RUN TestCheckReservations_RejectsWildcardOverlapInsideCandidate 2026-10-22T08:24:08.522712368Z --- PASS: TestCheckReservations_RejectsWildcardOverlapInsideCandidate (0.00s) 2026-10-22T08:24:08.522722789Z === RUN TestCheckReservations_RejectsCrossAppWildcardConflict 2026-10-22T08:24:08.522733012Z --- PASS: TestCheckReservations_RejectsCrossAppWildcardConflict (0.00s) 2026-10-22T08:24:08.522743306Z === RUN TestCheckReservations_SameAppNeverSelfConflicts 2026-10-22T08:24:08.522753709Z --- PASS: TestCheckReservations_SameAppNeverSelfConflicts (0.00s) 2026-10-22T08:24:08.522763753Z === RUN TestCheckReservations_SamePortDifferentProtoCoexists 2026-10-22T08:24:08.522774275Z --- PASS: TestCheckReservations_SamePortDifferentProtoCoexists (0.00s) 2026-10-22T08:24:08.522784421Z === RUN TestReservationsFor_InternalHTTPClaimsNothing 2026-10-22T08:24:08.522794993Z --- PASS: TestReservationsFor_InternalHTTPClaimsNothing (0.00s) 2026-10-22T08:24:08.522805819Z === RUN TestAppSpec_ValidateSecretFilesOK 2026-10-22T08:24:08.522815797Z --- PASS: TestAppSpec_ValidateSecretFilesOK (0.00s) 2026-10-22T08:24:08.522825855Z === RUN TestAppSpec_ValidateSecretFilesErrors 2026-10-22T08:24:08.522836005Z === RUN TestAppSpec_ValidateSecretFilesErrors/not_a_secret 2026-10-22T08:24:08.522845947Z === RUN TestAppSpec_ValidateSecretFilesErrors/unsorted 2026-10-22T08:24:08.522855651Z === RUN TestAppSpec_ValidateSecretFilesErrors/duplicate 2026-10-22T08:24:08.522866231Z === RUN TestAppSpec_ValidateSecretFilesErrors/file_key_collides_with_secret 2026-10-22T08:24:08.522877041Z === RUN TestAppSpec_ValidateSecretFilesErrors/file_key_collides_with_service_env 2026-10-22T08:24:08.522887588Z === RUN TestAppSpec_ValidateSecretFilesErrors/file_key_collides_with_app_env 2026-10-22T08:24:08.522897664Z === RUN TestAppSpec_ValidateSecretFilesErrors/bind_at_secret_dir 2026-10-22T08:24:08.52290869Z === RUN TestAppSpec_ValidateSecretFilesErrors/bind_under_secret_dir 2026-10-22T08:24:08.523082738Z === RUN TestAppSpec_ValidateSecretFilesErrors/volume_under_secret_dir 2026-10-22T08:24:08.523104771Z --- PASS: TestAppSpec_ValidateSecretFilesErrors (0.00s) 2026-10-22T08:24:08.523129754Z --- PASS: TestAppSpec_ValidateSecretFilesErrors/not_a_secret (0.00s) 2026-10-22T08:24:08.523154105Z --- PASS: TestAppSpec_ValidateSecretFilesErrors/unsorted (0.00s) 2026-10-22T08:24:08.523177664Z --- PASS: TestAppSpec_ValidateSecretFilesErrors/duplicate (0.00s) 2026-10-22T08:24:08.523202924Z --- PASS: TestAppSpec_ValidateSecretFilesErrors/file_key_collides_with_secret (0.00s) 2026-10-22T08:24:08.523230417Z --- PASS: TestAppSpec_ValidateSecretFilesErrors/file_key_collides_with_service_env (0.00s) 2026-10-22T08:24:08.523255483Z --- PASS: TestAppSpec_ValidateSecretFilesErrors/file_key_collides_with_app_env (0.00s) 2026-10-22T08:24:08.523280451Z --- PASS: TestAppSpec_ValidateSecretFilesErrors/bind_at_secret_dir (0.00s) 2026-10-22T08:24:08.523305245Z --- PASS: TestAppSpec_ValidateSecretFilesErrors/bind_under_secret_dir (0.00s) 2026-10-22T08:24:08.523328925Z --- PASS: TestAppSpec_ValidateSecretFilesErrors/volume_under_secret_dir (0.00s) 2026-10-22T08:24:08.523344859Z === RUN TestAppSpec_SecretDirBindWithoutFileSecretsOK 2026-10-22T08:24:08.523359359Z --- PASS: TestAppSpec_SecretDirBindWithoutFileSecretsOK (0.00s) 2026-10-22T08:24:08.523371337Z === RUN TestDiffAppSpec_SecretFileModeSwitch 2026-10-22T08:24:08.523387203Z --- PASS: TestDiffAppSpec_SecretFileModeSwitch (0.00s) 2026-10-22T08:24:08.523406149Z === RUN TestAppSpec_ValidateOK 2026-10-22T08:24:08.523418764Z --- PASS: TestAppSpec_ValidateOK (0.00s) 2026-10-22T08:24:08.523431313Z === RUN TestAppSpec_ValidateErrors 2026-10-22T08:24:08.52344495Z === RUN TestAppSpec_ValidateErrors/bad_app 2026-10-22T08:24:08.523456345Z === RUN TestAppSpec_ValidateErrors/no_services 2026-10-22T08:24:08.523471856Z === RUN TestAppSpec_ValidateErrors/no_image 2026-10-22T08:24:08.523483202Z === RUN TestAppSpec_ValidateErrors/env_newline 2026-10-22T08:24:08.523494751Z === RUN TestAppSpec_ValidateErrors/service_env_newline 2026-10-22T08:24:08.523509098Z === RUN TestAppSpec_ValidateErrors/service_env_secret_ref 2026-10-22T08:24:08.523524539Z === RUN TestAppSpec_ValidateErrors/service_env_empty_value 2026-10-22T08:24:08.52354401Z === RUN TestAppSpec_ValidateErrors/service_env_bad_key 2026-10-22T08:24:08.523560822Z === RUN TestAppSpec_ValidateErrors/service_env_secret_collision 2026-10-22T08:24:08.523576601Z === RUN TestAppSpec_ValidateErrors/env_secret_ref 2026-10-22T08:24:08.523590598Z === RUN TestAppSpec_ValidateErrors/http_bad_tls 2026-10-22T08:24:08.523610437Z === RUN TestAppSpec_ValidateErrors/http_readiness_authority 2026-10-22T08:24:08.523625445Z === RUN TestAppSpec_ValidateErrors/http_readiness_absolute_URL 2026-10-22T08:24:08.523642807Z === RUN TestAppSpec_ValidateErrors/http_readiness_scheme_relative 2026-10-22T08:24:08.52365255Z === RUN TestAppSpec_ValidateErrors/network_unknown_service 2026-10-22T08:24:08.523661449Z === RUN TestAppSpec_ValidateErrors/network_bad_alias 2026-10-22T08:24:08.523671576Z --- PASS: TestAppSpec_ValidateErrors (0.00s) 2026-10-22T08:24:08.523686543Z --- PASS: TestAppSpec_ValidateErrors/bad_app (0.00s) 2026-10-22T08:24:08.523706133Z --- PASS: TestAppSpec_ValidateErrors/no_services (0.00s) 2026-10-22T08:24:08.523726113Z --- PASS: TestAppSpec_ValidateErrors/no_image (0.00s) 2026-10-22T08:24:08.523744171Z --- PASS: TestAppSpec_ValidateErrors/env_newline (0.00s) 2026-10-22T08:24:08.523761003Z --- PASS: TestAppSpec_ValidateErrors/service_env_newline (0.00s) 2026-10-22T08:24:08.523779783Z --- PASS: TestAppSpec_ValidateErrors/service_env_secret_ref (0.00s) 2026-10-22T08:24:08.523797128Z --- PASS: TestAppSpec_ValidateErrors/service_env_empty_value (0.00s) 2026-10-22T08:24:08.523817927Z --- PASS: TestAppSpec_ValidateErrors/service_env_bad_key (0.00s) 2026-10-22T08:24:08.523836296Z --- PASS: TestAppSpec_ValidateErrors/service_env_secret_collision (0.00s) 2026-10-22T08:24:08.523852071Z --- PASS: TestAppSpec_ValidateErrors/env_secret_ref (0.00s) 2026-10-22T08:24:08.523872147Z --- PASS: TestAppSpec_ValidateErrors/http_bad_tls (0.00s) 2026-10-22T08:24:08.523896232Z --- PASS: TestAppSpec_ValidateErrors/http_readiness_authority (0.00s) 2026-10-22T08:24:08.523919526Z --- PASS: TestAppSpec_ValidateErrors/http_readiness_absolute_URL (0.00s) 2026-10-22T08:24:08.523944189Z --- PASS: TestAppSpec_ValidateErrors/http_readiness_scheme_relative (0.00s) 2026-10-22T08:24:08.52396642Z --- PASS: TestAppSpec_ValidateErrors/network_unknown_service (0.00s) 2026-10-22T08:24:08.523987543Z --- PASS: TestAppSpec_ValidateErrors/network_bad_alias (0.00s) 2026-10-22T08:24:08.524002331Z === RUN TestAppIdentityHelpers 2026-10-22T08:24:08.524015516Z --- PASS: TestAppIdentityHelpers (0.00s) 2026-10-22T08:24:08.524032735Z === RUN TestParsePublish 2026-10-22T08:24:08.524046979Z --- PASS: TestParsePublish (0.00s) 2026-10-22T08:24:08.524069872Z === RUN TestDiffAppSpec_DeterministicAndRedacted 2026-10-22T08:24:08.524090482Z --- PASS: TestDiffAppSpec_DeterministicAndRedacted (0.00s) 2026-10-22T08:24:08.524106372Z === RUN TestDiffAppSpec_NetworkDetailsAndOrderNormalization 2026-10-22T08:24:08.524120418Z --- PASS: TestDiffAppSpec_NetworkDetailsAndOrderNormalization (0.00s) 2026-10-22T08:24:08.524134503Z === RUN TestDiffAppSpec_ErrorsWrapped 2026-10-22T08:24:08.524146897Z --- PASS: TestDiffAppSpec_ErrorsWrapped (0.00s) 2026-10-22T08:24:08.524158705Z === RUN TestAppSpec_ServiceEnvOverridesAppEnvAllowed 2026-10-22T08:24:08.524172595Z --- PASS: TestAppSpec_ServiceEnvOverridesAppEnvAllowed (0.00s) 2026-10-22T08:24:08.524186276Z === RUN TestDiffAppSpec_ServiceEnv 2026-10-22T08:24:08.524199909Z --- PASS: TestDiffAppSpec_ServiceEnv (0.00s) 2026-10-22T08:24:08.524212379Z === RUN TestDiffAppSpec_EnvListsChangedKeyNamesOnly 2026-10-22T08:24:08.524221996Z --- PASS: TestDiffAppSpec_EnvListsChangedKeyNamesOnly (0.00s) 2026-10-22T08:24:08.524230634Z === RUN TestActiveAppSpec_UsesActivatedRevisionEnv 2026-10-22T08:24:08.52424469Z --- PASS: TestActiveAppSpec_UsesActivatedRevisionEnv (0.00s) 2026-10-22T08:24:08.524254829Z === RUN TestActiveAppSpec_ReportsStaleKeysFromEveryRevision 2026-10-22T08:24:08.524264499Z --- PASS: TestActiveAppSpec_ReportsStaleKeysFromEveryRevision (0.00s) 2026-10-22T08:24:08.524277846Z === RUN TestActiveAppSpec_EmptyActiveHasEmptyEnv 2026-10-22T08:24:08.524289472Z --- PASS: TestActiveAppSpec_EmptyActiveHasEmptyEnv (0.00s) 2026-10-22T08:24:08.524298474Z === RUN TestAppService_BackupOnlyChange 2026-10-22T08:24:08.524304476Z --- PASS: TestAppService_BackupOnlyChange (0.00s) 2026-10-22T08:24:08.524310093Z === RUN TestDiffAppSpec_VisibilityChangeIsDetected 2026-10-22T08:24:08.524321045Z --- PASS: TestDiffAppSpec_VisibilityChangeIsDetected (0.00s) 2026-10-22T08:24:08.524330584Z === RUN TestDiffAppSpec_ZeroVisibilityEqualsPublic 2026-10-22T08:24:08.524349165Z --- PASS: TestDiffAppSpec_ZeroVisibilityEqualsPublic (0.00s) 2026-10-22T08:24:08.524363905Z === RUN TestAppHTTPInterface_EffectiveVisibility 2026-10-22T08:24:08.524376644Z --- PASS: TestAppHTTPInterface_EffectiveVisibility (0.00s) 2026-10-22T08:24:08.524390562Z === RUN TestAppSpec_ValidateVisibility 2026-10-22T08:24:08.524402645Z === RUN TestAppSpec_ValidateVisibility/absent_visibility_remains_a_valid_public_manifest 2026-10-22T08:24:08.524415974Z === RUN TestAppSpec_ValidateVisibility/explicit_public_remains_valid 2026-10-22T08:24:08.524427948Z === RUN TestAppSpec_ValidateVisibility/internal_accepts_a_port_without_host_or_tls 2026-10-22T08:24:08.52443812Z === RUN TestAppSpec_ValidateVisibility/public_without_tls_mode 2026-10-22T08:24:08.524447619Z === RUN TestAppSpec_ValidateVisibility/public_with_unknown_tls_mode 2026-10-22T08:24:08.524459427Z === RUN TestAppSpec_ValidateVisibility/internal_with_out_of_range_port 2026-10-22T08:24:08.524468941Z === RUN TestAppSpec_ValidateVisibility/unknown_visibility 2026-10-22T08:24:08.524484692Z === RUN TestAppSpec_ValidateVisibility/public_without_valid_host 2026-10-22T08:24:08.524505806Z === RUN TestAppSpec_ValidateVisibility/public_with_out_of_range_port 2026-10-22T08:24:08.524526015Z === RUN TestAppSpec_ValidateVisibility/internal_forbids_host 2026-10-22T08:24:08.524537246Z === RUN TestAppSpec_ValidateVisibility/internal_forbids_tls 2026-10-22T08:24:08.524548776Z === RUN TestAppSpec_ValidateVisibility/internal_without_port 2026-10-22T08:24:08.524558556Z === RUN TestAppSpec_ValidateVisibility/public_without_host 2026-10-22T08:24:08.524567447Z --- PASS: TestAppSpec_ValidateVisibility (0.00s) 2026-10-22T08:24:08.52459188Z --- PASS: TestAppSpec_ValidateVisibility/absent_visibility_remains_a_valid_public_manifest (0.00s) 2026-10-22T08:24:08.524615741Z --- PASS: TestAppSpec_ValidateVisibility/explicit_public_remains_valid (0.00s) 2026-10-22T08:24:08.524643107Z --- PASS: TestAppSpec_ValidateVisibility/internal_accepts_a_port_without_host_or_tls (0.00s) 2026-10-22T08:24:08.524667116Z --- PASS: TestAppSpec_ValidateVisibility/public_without_tls_mode (0.00s) 2026-10-22T08:24:08.52469131Z --- PASS: TestAppSpec_ValidateVisibility/public_with_unknown_tls_mode (0.00s) 2026-10-22T08:24:08.524714225Z --- PASS: TestAppSpec_ValidateVisibility/internal_with_out_of_range_port (0.00s) 2026-10-22T08:24:08.524737925Z --- PASS: TestAppSpec_ValidateVisibility/unknown_visibility (0.00s) 2026-10-22T08:24:08.524758748Z --- PASS: TestAppSpec_ValidateVisibility/public_without_valid_host (0.00s) 2026-10-22T08:24:08.524782781Z --- PASS: TestAppSpec_ValidateVisibility/public_with_out_of_range_port (0.00s) 2026-10-22T08:24:08.52480761Z --- PASS: TestAppSpec_ValidateVisibility/internal_forbids_host (0.00s) 2026-10-22T08:24:08.524831826Z --- PASS: TestAppSpec_ValidateVisibility/internal_forbids_tls (0.00s) 2026-10-22T08:24:08.524854864Z --- PASS: TestAppSpec_ValidateVisibility/internal_without_port (0.00s) 2026-10-22T08:24:08.524874444Z --- PASS: TestAppSpec_ValidateVisibility/public_without_host (0.00s) 2026-10-22T08:24:08.524889464Z === RUN TestAppService_InternallyOnlyPort 2026-10-22T08:24:08.524899089Z --- PASS: TestAppService_InternallyOnlyPort (0.00s) 2026-10-22T08:24:08.524907776Z === RUN TestAppSpec_ValidateInterfacePorts 2026-10-22T08:24:08.524916198Z --- PASS: TestAppSpec_ValidateInterfacePorts (0.00s) 2026-10-22T08:24:08.524926765Z === RUN TestAppSpec_ValidateMixedVisibilityReadiness 2026-10-22T08:24:08.524936415Z === RUN TestAppSpec_ValidateMixedVisibilityReadiness/several_internal_ports 2026-10-22T08:24:08.524953428Z === RUN TestAppSpec_ValidateMixedVisibilityReadiness/public_http_plus_tcp 2026-10-22T08:24:08.524964638Z === RUN TestAppSpec_ValidateMixedVisibilityReadiness/several_public_http_ports 2026-10-22T08:24:08.524974522Z --- PASS: TestAppSpec_ValidateMixedVisibilityReadiness (0.00s) 2026-10-22T08:24:08.52499783Z --- PASS: TestAppSpec_ValidateMixedVisibilityReadiness/several_internal_ports (0.00s) 2026-10-22T08:24:08.525023448Z --- PASS: TestAppSpec_ValidateMixedVisibilityReadiness/public_http_plus_tcp (0.00s) 2026-10-22T08:24:08.525047561Z --- PASS: TestAppSpec_ValidateMixedVisibilityReadiness/several_public_http_ports (0.00s) 2026-10-22T08:24:08.525059549Z === RUN TestContainerNetworkProbeRequest_Validate 2026-10-22T08:24:08.525072071Z === RUN TestContainerNetworkProbeRequest_Validate/missing_target_id 2026-10-22T08:24:08.525083267Z === RUN TestContainerNetworkProbeRequest_Validate/missing_network 2026-10-22T08:24:08.525096404Z === RUN TestContainerNetworkProbeRequest_Validate/missing_execution_start 2026-10-22T08:24:08.525110285Z === RUN TestContainerNetworkProbeRequest_Validate/zero_port 2026-10-22T08:24:08.525120608Z === RUN TestContainerNetworkProbeRequest_Validate/port_too_high 2026-10-22T08:24:08.525131433Z === RUN TestContainerNetworkProbeRequest_Validate/zero_timeout 2026-10-22T08:24:08.525143981Z === RUN TestContainerNetworkProbeRequest_Validate/unknown_protocol 2026-10-22T08:24:08.525153918Z === RUN TestContainerNetworkProbeRequest_Validate/http_without_path 2026-10-22T08:24:08.525165089Z === RUN TestContainerNetworkProbeRequest_Validate/http_path_not_origin_form 2026-10-22T08:24:08.525176823Z === RUN TestContainerNetworkProbeRequest_Validate/http_path_with_surrounding_whitespace 2026-10-22T08:24:08.525186964Z === RUN TestContainerNetworkProbeRequest_Validate/tcp_with_path 2026-10-22T08:24:08.525196059Z --- PASS: TestContainerNetworkProbeRequest_Validate (0.00s) 2026-10-22T08:24:08.525222539Z --- PASS: TestContainerNetworkProbeRequest_Validate/missing_target_id (0.00s) 2026-10-22T08:24:08.525247678Z --- PASS: TestContainerNetworkProbeRequest_Validate/missing_network (0.00s) 2026-10-22T08:24:08.525282206Z --- PASS: TestContainerNetworkProbeRequest_Validate/missing_execution_start (0.00s) 2026-10-22T08:24:08.525304792Z --- PASS: TestContainerNetworkProbeRequest_Validate/zero_port (0.00s) 2026-10-22T08:24:08.525353626Z --- PASS: TestContainerNetworkProbeRequest_Validate/port_too_high (0.00s) 2026-10-22T08:24:08.52537828Z --- PASS: TestContainerNetworkProbeRequest_Validate/zero_timeout (0.00s) 2026-10-22T08:24:08.525397708Z --- PASS: TestContainerNetworkProbeRequest_Validate/unknown_protocol (0.00s) 2026-10-22T08:24:08.525428351Z --- PASS: TestContainerNetworkProbeRequest_Validate/http_without_path (0.00s) 2026-10-22T08:24:08.525462297Z --- PASS: TestContainerNetworkProbeRequest_Validate/http_path_not_origin_form (0.00s) 2026-10-22T08:24:08.525502056Z --- PASS: TestContainerNetworkProbeRequest_Validate/http_path_with_surrounding_whitespace (0.00s) 2026-10-22T08:24:08.525528142Z --- PASS: TestContainerNetworkProbeRequest_Validate/tcp_with_path (0.00s) 2026-10-22T08:24:08.525550508Z === RUN TestContainerNetworkProbeRequest_ValidateTCP 2026-10-22T08:24:08.525566243Z --- PASS: TestContainerNetworkProbeRequest_ValidateTCP (0.00s) 2026-10-22T08:24:08.525578442Z === RUN TestImageSourcePolicy_DefaultRegistries 2026-10-22T08:24:08.525594129Z --- PASS: TestImageSourcePolicy_DefaultRegistries (0.00s) 2026-10-22T08:24:08.525604742Z === RUN TestImageSourcePolicy_AllowsExplicitPrivateRegistry 2026-10-22T08:24:08.525614263Z --- PASS: TestImageSourcePolicy_AllowsExplicitPrivateRegistry (0.00s) 2026-10-22T08:24:08.52562325Z === RUN TestImageSourcePolicy_EnforcesAllowlist 2026-10-22T08:24:08.52563298Z --- PASS: TestImageSourcePolicy_EnforcesAllowlist (0.00s) 2026-10-22T08:24:08.525642153Z === RUN TestImageSourcePolicy_AlwaysAllowsInstallationRegistry 2026-10-22T08:24:08.525651293Z --- PASS: TestImageSourcePolicy_AlwaysAllowsInstallationRegistry (0.00s) 2026-10-22T08:24:08.525661927Z === RUN TestImageSourcePolicy_RequireDigest 2026-10-22T08:24:08.52567095Z --- PASS: TestImageSourcePolicy_RequireDigest (0.00s) 2026-10-22T08:24:08.525693081Z === RUN TestImageSourcePolicy_RejectsMalformedDigests 2026-10-22T08:24:08.525705252Z --- PASS: TestImageSourcePolicy_RejectsMalformedDigests (0.00s) 2026-10-22T08:24:08.525716835Z === RUN TestImageSourcePolicy_CanonicalizesHostAndDefaultPort 2026-10-22T08:24:08.525726668Z --- PASS: TestImageSourcePolicy_CanonicalizesHostAndDefaultPort (0.00s) 2026-10-22T08:24:08.525745548Z === RUN TestImageSourcePolicy_RejectsMalformedAllowlistEntries 2026-10-22T08:24:08.525763141Z --- PASS: TestImageSourcePolicy_RejectsMalformedAllowlistEntries (0.00s) 2026-10-22T08:24:08.525774709Z === RUN TestImageSourcePolicy_RejectsMalformedReferences 2026-10-22T08:24:08.525785476Z --- PASS: TestImageSourcePolicy_RejectsMalformedReferences (0.00s) 2026-10-22T08:24:08.525796498Z === RUN TestImageSourcePolicy_IsInstallationImageDockerHubAlias 2026-10-22T08:24:08.5258223Z === RUN TestImageSourcePolicy_IsInstallationImageDockerHubAlias/implicit_docker.io_ref_matches_docker.io_installation 2026-10-22T08:24:08.525839648Z === RUN TestImageSourcePolicy_IsInstallationImageDockerHubAlias/registry-1_ref_matches_docker.io_installation 2026-10-22T08:24:08.52585208Z === RUN TestImageSourcePolicy_IsInstallationImageDockerHubAlias/docker.io_ref_matches_registry-1_installation 2026-10-22T08:24:08.52586298Z === RUN TestImageSourcePolicy_IsInstallationImageDockerHubAlias/installation_registry_is_not_docker.io 2026-10-22T08:24:08.525890647Z === RUN TestImageSourcePolicy_IsInstallationImageDockerHubAlias/foreign_ref_does_not_match_docker.io_installation 2026-10-22T08:24:08.525904301Z --- PASS: TestImageSourcePolicy_IsInstallationImageDockerHubAlias (0.00s) 2026-10-22T08:24:08.525970372Z --- PASS: TestImageSourcePolicy_IsInstallationImageDockerHubAlias/implicit_docker.io_ref_matches_docker.io_installation (0.00s) 2026-10-22T08:24:08.52600445Z --- PASS: TestImageSourcePolicy_IsInstallationImageDockerHubAlias/registry-1_ref_matches_docker.io_installation (0.00s) 2026-10-22T08:24:08.526042603Z --- PASS: TestImageSourcePolicy_IsInstallationImageDockerHubAlias/docker.io_ref_matches_registry-1_installation (0.00s) 2026-10-22T08:24:08.526072077Z --- PASS: TestImageSourcePolicy_IsInstallationImageDockerHubAlias/installation_registry_is_not_docker.io (0.00s) 2026-10-22T08:24:08.526111084Z --- PASS: TestImageSourcePolicy_IsInstallationImageDockerHubAlias/foreign_ref_does_not_match_docker.io_installation (0.00s) 2026-10-22T08:24:08.526134319Z === RUN TestIsLocalOrPrivateHost 2026-10-22T08:24:08.526145518Z --- PASS: TestIsLocalOrPrivateHost (0.00s) 2026-10-22T08:24:08.526154593Z === RUN TestImageRefRepository 2026-10-22T08:24:08.526167356Z === RUN TestImageRefRepository/registry.example.com/blog/web:1.4.2 2026-10-22T08:24:08.526179851Z === RUN TestImageRefRepository/registry.example.com/blog/web@sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 2026-10-22T08:24:08.526205083Z === RUN TestImageRefRepository/blog/web:1.4.2 2026-10-22T08:24:08.526216986Z === RUN TestImageRefRepository/localhost:5000/private/app:1 2026-10-22T08:24:08.526228637Z === RUN TestImageRefRepository/127.0.0.1:12345/private@sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 2026-10-22T08:24:08.526243866Z === RUN TestImageRefRepository/nginx:1.25 2026-10-22T08:24:08.526269323Z === RUN TestImageRefRepository/#00 2026-10-22T08:24:08.526281911Z --- PASS: TestImageRefRepository (0.00s) 2026-10-22T08:24:08.526301619Z --- PASS: TestImageRefRepository/registry.example.com/blog/web:1.4.2 (0.00s) 2026-10-22T08:24:08.526350194Z --- PASS: TestImageRefRepository/registry.example.com/blog/web@sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa (0.00s) 2026-10-22T08:24:08.526375976Z --- PASS: TestImageRefRepository/blog/web:1.4.2 (0.00s) 2026-10-22T08:24:08.526407357Z --- PASS: TestImageRefRepository/localhost:5000/private/app:1 (0.00s) 2026-10-22T08:24:08.526437356Z --- PASS: TestImageRefRepository/127.0.0.1:12345/private@sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa (0.00s) 2026-10-22T08:24:08.526468046Z --- PASS: TestImageRefRepository/nginx:1.25 (0.00s) 2026-10-22T08:24:08.526499247Z --- PASS: TestImageRefRepository/#00 (0.00s) 2026-10-22T08:24:08.526522203Z === RUN TestImageRefRoots_QualifiesDigestWithRepository 2026-10-22T08:24:08.526537276Z --- PASS: TestImageRefRoots_QualifiesDigestWithRepository (0.00s) 2026-10-22T08:24:08.52654653Z === RUN TestLabelConstantsValues 2026-10-22T08:24:08.526555538Z === RUN TestLabelConstantsValues/gordon.domain 2026-10-22T08:24:08.52656451Z === RUN TestLabelConstantsValues/gordon.image 2026-10-22T08:24:08.526587676Z === RUN TestLabelConstantsValues/gordon.managed 2026-10-22T08:24:08.526601289Z === RUN TestLabelConstantsValues/gordon.created 2026-10-22T08:24:08.526610638Z --- PASS: TestLabelConstantsValues (0.00s) 2026-10-22T08:24:08.526626615Z --- PASS: TestLabelConstantsValues/gordon.domain (0.00s) 2026-10-22T08:24:08.526664387Z --- PASS: TestLabelConstantsValues/gordon.image (0.00s) 2026-10-22T08:24:08.526687646Z --- PASS: TestLabelConstantsValues/gordon.managed (0.00s) 2026-10-22T08:24:08.526704704Z --- PASS: TestLabelConstantsValues/gordon.created (0.00s) 2026-10-22T08:24:08.526727379Z === RUN TestRegistryImageKnownGordonRegistryDomains 2026-10-22T08:24:08.526739779Z --- PASS: TestRegistryImageKnownGordonRegistryDomains (0.00s) 2026-10-22T08:24:08.526749231Z === RUN TestRegistryImageStripKnownGordonRegistry 2026-10-22T08:24:08.526758949Z === RUN TestRegistryImageStripKnownGordonRegistry/current_host_strip 2026-10-22T08:24:08.526786851Z === RUN TestRegistryImageStripKnownGordonRegistry/legacy_host_strip 2026-10-22T08:24:08.526800065Z === RUN TestRegistryImageStripKnownGordonRegistry/explicit_port_strip 2026-10-22T08:24:08.526810387Z === RUN TestRegistryImageStripKnownGordonRegistry/digest_ref_strip 2026-10-22T08:24:08.526820526Z === RUN TestRegistryImageStripKnownGordonRegistry/bare_image_pass_through 2026-10-22T08:24:08.526830492Z === RUN TestRegistryImageStripKnownGordonRegistry/external_image_preserved 2026-10-22T08:24:08.526853717Z === RUN TestRegistryImageStripKnownGordonRegistry/hostile_lookalike_preserved 2026-10-22T08:24:08.526866279Z --- PASS: TestRegistryImageStripKnownGordonRegistry (0.00s) 2026-10-22T08:24:08.52688698Z --- PASS: TestRegistryImageStripKnownGordonRegistry/current_host_strip (0.00s) 2026-10-22T08:24:08.52691994Z --- PASS: TestRegistryImageStripKnownGordonRegistry/legacy_host_strip (0.00s) 2026-10-22T08:24:08.526943232Z --- PASS: TestRegistryImageStripKnownGordonRegistry/explicit_port_strip (0.00s) 2026-10-22T08:24:08.52696252Z --- PASS: TestRegistryImageStripKnownGordonRegistry/digest_ref_strip (0.00s) 2026-10-22T08:24:08.526994551Z --- PASS: TestRegistryImageStripKnownGordonRegistry/bare_image_pass_through (0.00s) 2026-10-22T08:24:08.52702085Z --- PASS: TestRegistryImageStripKnownGordonRegistry/external_image_preserved (0.00s) 2026-10-22T08:24:08.527053019Z --- PASS: TestRegistryImageStripKnownGordonRegistry/hostile_lookalike_preserved (0.00s) 2026-10-22T08:24:08.527064865Z === RUN TestRegistryImageExtractGordonRepoName 2026-10-22T08:24:08.527074886Z === RUN TestRegistryImageExtractGordonRepoName/current_host_with_tag 2026-10-22T08:24:08.527086359Z === RUN TestRegistryImageExtractGordonRepoName/legacy_host_with_namespace 2026-10-22T08:24:08.527096084Z === RUN TestRegistryImageExtractGordonRepoName/digest_ref 2026-10-22T08:24:08.527116995Z === RUN TestRegistryImageExtractGordonRepoName/bare_image 2026-10-22T08:24:08.527130058Z === RUN TestRegistryImageExtractGordonRepoName/external_registry_retained_in_repo_name 2026-10-22T08:24:08.527140589Z === RUN TestRegistryImageExtractGordonRepoName/nested_external_path_under_gordon_registry 2026-10-22T08:24:08.527151503Z --- PASS: TestRegistryImageExtractGordonRepoName (0.00s) 2026-10-22T08:24:08.527181937Z --- PASS: TestRegistryImageExtractGordonRepoName/current_host_with_tag (0.00s) 2026-10-22T08:24:08.527204434Z --- PASS: TestRegistryImageExtractGordonRepoName/legacy_host_with_namespace (0.00s) 2026-10-22T08:24:08.527222249Z --- PASS: TestRegistryImageExtractGordonRepoName/digest_ref (0.00s) 2026-10-22T08:24:08.527251276Z --- PASS: TestRegistryImageExtractGordonRepoName/bare_image (0.00s) 2026-10-22T08:24:08.527276914Z --- PASS: TestRegistryImageExtractGordonRepoName/external_registry_retained_in_repo_name (0.00s) 2026-10-22T08:24:08.527300029Z --- PASS: TestRegistryImageExtractGordonRepoName/nested_external_path_under_gordon_registry (0.00s) 2026-10-22T08:24:08.527324248Z === RUN TestRegistryImageCanonicalizeGordonImageRef 2026-10-22T08:24:08.527337437Z === RUN TestRegistryImageCanonicalizeGordonImageRef/canonicalization 2026-10-22T08:24:08.527350942Z === RUN TestRegistryImageCanonicalizeGordonImageRef/explicit_port_canonicalization 2026-10-22T08:24:08.527362219Z === RUN TestRegistryImageCanonicalizeGordonImageRef/external_images_are_not_canonicalized 2026-10-22T08:24:08.527382811Z === RUN TestRegistryImageCanonicalizeGordonImageRef/bare_refs_are_not_canonicalized 2026-10-22T08:24:08.527401966Z === RUN TestRegistryImageCanonicalizeGordonImageRef/empty_current_domain_leaves_ref_unchanged 2026-10-22T08:24:08.527412888Z --- PASS: TestRegistryImageCanonicalizeGordonImageRef (0.00s) 2026-10-22T08:24:08.527444212Z --- PASS: TestRegistryImageCanonicalizeGordonImageRef/canonicalization (0.00s) 2026-10-22T08:24:08.527469885Z --- PASS: TestRegistryImageCanonicalizeGordonImageRef/explicit_port_canonicalization (0.00s) 2026-10-22T08:24:08.52750476Z --- PASS: TestRegistryImageCanonicalizeGordonImageRef/external_images_are_not_canonicalized (0.00s) 2026-10-22T08:24:08.52754937Z --- PASS: TestRegistryImageCanonicalizeGordonImageRef/bare_refs_are_not_canonicalized (0.00s) 2026-10-22T08:24:08.527576561Z --- PASS: TestRegistryImageCanonicalizeGordonImageRef/empty_current_domain_leaves_ref_unchanged (0.00s) 2026-10-22T08:24:08.527586779Z === RUN TestRegistryImageIsGordonRegistryImageRef 2026-10-22T08:24:08.527596905Z === RUN TestRegistryImageIsGordonRegistryImageRef/current_host 2026-10-22T08:24:08.527618629Z === RUN TestRegistryImageIsGordonRegistryImageRef/legacy_host 2026-10-22T08:24:08.527633123Z === RUN TestRegistryImageIsGordonRegistryImageRef/legacy_host_with_explicit_port 2026-10-22T08:24:08.527643279Z === RUN TestRegistryImageIsGordonRegistryImageRef/bare_ref 2026-10-22T08:24:08.527653169Z === RUN TestRegistryImageIsGordonRegistryImageRef/external_ref 2026-10-22T08:24:08.527662838Z === RUN TestRegistryImageIsGordonRegistryImageRef/hostile_lookalike 2026-10-22T08:24:08.527692982Z --- PASS: TestRegistryImageIsGordonRegistryImageRef (0.00s) 2026-10-22T08:24:08.527713785Z --- PASS: TestRegistryImageIsGordonRegistryImageRef/current_host (0.00s) 2026-10-22T08:24:08.527732186Z --- PASS: TestRegistryImageIsGordonRegistryImageRef/legacy_host (0.00s) 2026-10-22T08:24:08.527764303Z --- PASS: TestRegistryImageIsGordonRegistryImageRef/legacy_host_with_explicit_port (0.00s) 2026-10-22T08:24:08.52779128Z --- PASS: TestRegistryImageIsGordonRegistryImageRef/bare_ref (0.00s) 2026-10-22T08:24:08.527811036Z --- PASS: TestRegistryImageIsGordonRegistryImageRef/external_ref (0.00s) 2026-10-22T08:24:08.527842637Z --- PASS: TestRegistryImageIsGordonRegistryImageRef/hostile_lookalike (0.00s) 2026-10-22T08:24:08.527866532Z === RUN TestRuntimeGuard_NetworkModes 2026-10-22T08:24:08.527878192Z --- PASS: TestRuntimeGuard_NetworkModes (0.00s) 2026-10-22T08:24:08.527900573Z === RUN TestRuntimeGuard_VolumeNames 2026-10-22T08:24:08.527919572Z --- PASS: TestRuntimeGuard_VolumeNames (0.00s) 2026-10-22T08:24:08.52793001Z === RUN TestRuntimeGuard_ProtectedBinds 2026-10-22T08:24:08.527943207Z === RUN TestRuntimeGuard_ProtectedBinds/ancestor 2026-10-22T08:24:08.527958741Z === RUN TestRuntimeGuard_ProtectedBinds/symlink 2026-10-22T08:24:08.527972604Z === RUN TestRuntimeGuard_ProtectedBinds/equal 2026-10-22T08:24:08.527986724Z === RUN TestRuntimeGuard_ProtectedBinds/under 2026-10-22T08:24:08.528002404Z --- PASS: TestRuntimeGuard_ProtectedBinds (0.00s) 2026-10-22T08:24:08.528028205Z --- PASS: TestRuntimeGuard_ProtectedBinds/ancestor (0.00s) 2026-10-22T08:24:08.528052783Z --- PASS: TestRuntimeGuard_ProtectedBinds/symlink (0.00s) 2026-10-22T08:24:08.528074419Z --- PASS: TestRuntimeGuard_ProtectedBinds/equal (0.00s) 2026-10-22T08:24:08.528095594Z --- PASS: TestRuntimeGuard_ProtectedBinds/under (0.00s) 2026-10-22T08:24:08.528111074Z === RUN TestRuntimeGuard_OwnSecretBindException 2026-10-22T08:24:08.528134904Z === RUN TestRuntimeGuard_OwnSecretBindException/wrong_app 2026-10-22T08:24:08.528151457Z === RUN TestRuntimeGuard_OwnSecretBindException/no_app_label 2026-10-22T08:24:08.528172701Z === RUN TestRuntimeGuard_OwnSecretBindException/wrong_name 2026-10-22T08:24:08.528184455Z === RUN TestRuntimeGuard_OwnSecretBindException/extra_segment 2026-10-22T08:24:08.528196153Z === RUN TestRuntimeGuard_OwnSecretBindException/directory_bind 2026-10-22T08:24:08.528211056Z === RUN TestRuntimeGuard_OwnSecretBindException/whole_base 2026-10-22T08:24:08.528226934Z === RUN TestRuntimeGuard_OwnSecretBindException/read-write 2026-10-22T08:24:08.528238811Z === RUN TestRuntimeGuard_OwnSecretBindException/wrong_dest 2026-10-22T08:24:08.528253386Z --- PASS: TestRuntimeGuard_OwnSecretBindException (0.00s) 2026-10-22T08:24:08.528276117Z --- PASS: TestRuntimeGuard_OwnSecretBindException/wrong_app (0.00s) 2026-10-22T08:24:08.528297913Z --- PASS: TestRuntimeGuard_OwnSecretBindException/no_app_label (0.00s) 2026-10-22T08:24:08.528320354Z --- PASS: TestRuntimeGuard_OwnSecretBindException/wrong_name (0.00s) 2026-10-22T08:24:08.528342879Z --- PASS: TestRuntimeGuard_OwnSecretBindException/extra_segment (0.00s) 2026-10-22T08:24:08.528365584Z --- PASS: TestRuntimeGuard_OwnSecretBindException/directory_bind (0.00s) 2026-10-22T08:24:08.528383324Z --- PASS: TestRuntimeGuard_OwnSecretBindException/whole_base (0.00s) 2026-10-22T08:24:08.528405474Z --- PASS: TestRuntimeGuard_OwnSecretBindException/read-write (0.00s) 2026-10-22T08:24:08.528427132Z --- PASS: TestRuntimeGuard_OwnSecretBindException/wrong_dest (0.00s) 2026-10-22T08:24:08.528440802Z === RUN TestRuntimeGuard_ReadOnlyLogDirs 2026-10-22T08:24:08.528460044Z === RUN TestRuntimeGuard_ReadOnlyLogDirs/writable_log_dir 2026-10-22T08:24:08.528484437Z === RUN TestRuntimeGuard_ReadOnlyLogDirs/writable_log_subdir 2026-10-22T08:24:08.528502132Z === RUN TestRuntimeGuard_ReadOnlyLogDirs/data_dir_read-only 2026-10-22T08:24:08.528516964Z === RUN TestRuntimeGuard_ReadOnlyLogDirs/sibling_of_logs 2026-10-22T08:24:08.528533138Z === RUN TestRuntimeGuard_ReadOnlyLogDirs/symlink_out_of_logs 2026-10-22T08:24:08.528545972Z === RUN TestRuntimeGuard_ReadOnlyLogDirs/log_dir_with_protected 2026-10-22T08:24:08.528555688Z --- PASS: TestRuntimeGuard_ReadOnlyLogDirs (0.00s) 2026-10-22T08:24:08.528575312Z --- PASS: TestRuntimeGuard_ReadOnlyLogDirs/writable_log_dir (0.00s) 2026-10-22T08:24:08.528597563Z --- PASS: TestRuntimeGuard_ReadOnlyLogDirs/writable_log_subdir (0.00s) 2026-10-22T08:24:08.528617706Z --- PASS: TestRuntimeGuard_ReadOnlyLogDirs/data_dir_read-only (0.00s) 2026-10-22T08:24:08.528639561Z --- PASS: TestRuntimeGuard_ReadOnlyLogDirs/sibling_of_logs (0.00s) 2026-10-22T08:24:08.528676579Z --- PASS: TestRuntimeGuard_ReadOnlyLogDirs/symlink_out_of_logs (0.00s) 2026-10-22T08:24:08.528701018Z --- PASS: TestRuntimeGuard_ReadOnlyLogDirs/log_dir_with_protected (0.00s) 2026-10-22T08:24:08.528711989Z PASS 2026-10-22T08:24:08.52871999Z ok github.com/bnema/gordon/internal/domain 1.076s 2026-10-22T08:24:08.528726266Z ? github.com/bnema/gordon/internal/testutils [no test files] 2026-10-22T08:24:08.528735435Z ? github.com/bnema/gordon/internal/testutils/mocks [no test files] 2026-10-22T08:24:08.600462711Z === RUN TestAppService_Show_FreshDesiredOnlyApp 2026-10-22T08:24:08.60050462Z --- PASS: TestAppService_Show_FreshDesiredOnlyApp (0.00s) 2026-10-22T08:24:08.600517015Z === RUN TestAppService_Show_ConvergedAppWithRetainedResources 2026-10-22T08:24:08.600532518Z --- PASS: TestAppService_Show_ConvergedAppWithRetainedResources (0.00s) 2026-10-22T08:24:08.60055257Z === RUN TestAppService_Show_MixedRevisionsArePending 2026-10-22T08:24:08.60057723Z --- PASS: TestAppService_Show_MixedRevisionsArePending (0.00s) 2026-10-22T08:24:08.600592459Z === RUN TestAppService_Show_StoppedAppKeepsReadModel 2026-10-22T08:24:08.600615159Z --- PASS: TestAppService_Show_StoppedAppKeepsReadModel (0.00s) 2026-10-22T08:24:08.600626835Z === RUN TestAppService_Show_UnknownAppIsNotFound 2026-10-22T08:24:08.600642323Z --- PASS: TestAppService_Show_UnknownAppIsNotFound (0.00s) 2026-10-22T08:24:08.600654134Z === RUN TestAppService_List_SkipsRetiredNamesAndReportsReadModel 2026-10-22T08:24:08.600664351Z --- PASS: TestAppService_List_SkipsRetiredNamesAndReportsReadModel (0.00s) 2026-10-22T08:24:08.600678014Z === RUN TestAppServiceImpl_SecretsRoundTrip 2026-10-22T08:24:08.600691391Z --- PASS: TestAppServiceImpl_SecretsRoundTrip (0.00s) 2026-10-22T08:24:08.600708875Z === RUN TestAppServiceImpl_SetSecrets_UnappliedServiceHint 2026-10-22T08:24:08.600735785Z --- PASS: TestAppServiceImpl_SetSecrets_UnappliedServiceHint (0.00s) 2026-10-22T08:24:08.600752837Z === RUN TestAppServiceImpl_DeleteSecret_NoApplyHint 2026-10-22T08:24:08.600763429Z --- PASS: TestAppServiceImpl_DeleteSecret_NoApplyHint (0.00s) 2026-10-22T08:24:08.600772911Z === RUN TestAppServiceImpl_SetSecrets_UndeclaredSecretHint 2026-10-22T08:24:08.600786417Z --- PASS: TestAppServiceImpl_SetSecrets_UndeclaredSecretHint (0.00s) 2026-10-22T08:24:08.600799103Z === RUN TestAppServiceImpl_OperationByKey 2026-10-22T08:24:08.600812819Z --- PASS: TestAppServiceImpl_OperationByKey (0.00s) 2026-10-22T08:24:08.600823329Z === RUN TestAppServiceImpl_ListSecrets_MissingAppNotFound 2026-10-22T08:24:08.60083283Z --- PASS: TestAppServiceImpl_ListSecrets_MissingAppNotFound (0.00s) 2026-10-22T08:24:08.600846125Z === RUN TestAppServiceImpl_ListSecrets_OwnershipOnlyAppStaysLive 2026-10-22T08:24:08.600863767Z --- PASS: TestAppServiceImpl_ListSecrets_OwnershipOnlyAppStaysLive (0.00s) 2026-10-22T08:24:08.600893191Z === RUN TestAppServiceImpl_ListSecrets_WrapsLoadErrors 2026-10-22T08:24:08.60091394Z --- PASS: TestAppServiceImpl_ListSecrets_WrapsLoadErrors (0.00s) 2026-10-22T08:24:08.600930436Z === RUN TestApply_AcceptsBindsUnderAdministrativePolicy 2026-10-22T08:24:08.600944616Z --- PASS: TestApply_AcceptsBindsUnderAdministrativePolicy (0.00s) 2026-10-22T08:24:08.600959963Z === RUN TestApply_RejectsBindWithoutPolicyBeforeStoreAccess 2026-10-22T08:24:08.600981113Z --- PASS: TestApply_RejectsBindWithoutPolicyBeforeStoreAccess (0.00s) 2026-10-22T08:24:08.600998955Z === RUN TestApply_RejectsBindOutsideAllowlists 2026-10-22T08:24:08.601014992Z === RUN TestApply_RejectsBindOutsideAllowlists/app_not_allowed 2026-10-22T08:24:08.601028786Z === RUN TestApply_RejectsBindOutsideAllowlists/service_not_allowed 2026-10-22T08:24:08.601038416Z --- PASS: TestApply_RejectsBindOutsideAllowlists (0.00s) 2026-10-22T08:24:08.601065075Z --- PASS: TestApply_RejectsBindOutsideAllowlists/app_not_allowed (0.00s) 2026-10-22T08:24:08.601089998Z --- PASS: TestApply_RejectsBindOutsideAllowlists/service_not_allowed (0.00s) 2026-10-22T08:24:08.601103953Z === RUN TestApply_RejectsBindSourceOutsideRoot 2026-10-22T08:24:08.601119438Z --- PASS: TestApply_RejectsBindSourceOutsideRoot (0.00s) 2026-10-22T08:24:08.60113959Z === RUN TestApply_BindPoliciesReplaceOnReload 2026-10-22T08:24:08.601159599Z --- PASS: TestApply_BindPoliciesReplaceOnReload (0.00s) 2026-10-22T08:24:08.60117492Z === RUN TestApply_AcceptsCapabilitiesUnderAdministrativePolicy 2026-10-22T08:24:08.601190931Z --- PASS: TestApply_AcceptsCapabilitiesUnderAdministrativePolicy (0.00s) 2026-10-22T08:24:08.601201084Z === RUN TestApply_RejectsCapabilityWithoutPolicyBeforeStoreAccess 2026-10-22T08:24:08.601212397Z --- PASS: TestApply_RejectsCapabilityWithoutPolicyBeforeStoreAccess (0.00s) 2026-10-22T08:24:08.60122653Z === RUN TestApply_RejectsCapabilityOutsideAllowlists 2026-10-22T08:24:08.601239212Z === RUN TestApply_RejectsCapabilityOutsideAllowlists/app_not_allowed 2026-10-22T08:24:08.601254131Z === RUN TestApply_RejectsCapabilityOutsideAllowlists/service_not_allowed 2026-10-22T08:24:08.60126463Z --- PASS: TestApply_RejectsCapabilityOutsideAllowlists (0.00s) 2026-10-22T08:24:08.601284253Z --- PASS: TestApply_RejectsCapabilityOutsideAllowlists/app_not_allowed (0.00s) 2026-10-22T08:24:08.601315913Z --- PASS: TestApply_RejectsCapabilityOutsideAllowlists/service_not_allowed (0.00s) 2026-10-22T08:24:08.601336363Z === RUN TestApply_CapabilityPoliciesReplaceOnReload 2026-10-22T08:24:08.601352805Z --- PASS: TestApply_CapabilityPoliciesReplaceOnReload (0.00s) 2026-10-22T08:24:08.601367692Z === RUN TestApply_CapabilityDryRunRefusedWithoutMutation 2026-10-22T08:24:08.601382265Z --- PASS: TestApply_CapabilityDryRunRefusedWithoutMutation (0.00s) 2026-10-22T08:24:08.601399889Z === RUN TestAppServiceImpl_Deploy_ReturnsRunningJournalAfterPersistence 2026-10-22T08:24:08.601415249Z --- PASS: TestAppServiceImpl_Deploy_ReturnsRunningJournalAfterPersistence (0.00s) 2026-10-22T08:24:08.601427954Z === RUN TestAppServiceImpl_Deploy_RequestCancellationDoesNotCancelExecution 2026-10-22T08:24:08.601440786Z --- PASS: TestAppServiceImpl_Deploy_RequestCancellationDoesNotCancelExecution (0.05s) 2026-10-22T08:24:08.601453108Z === RUN TestAppServiceImpl_Deploy_DuplicateKeyNeverSpawnsSecondExecution 2026-10-22T08:24:08.601468508Z --- PASS: TestAppServiceImpl_Deploy_DuplicateKeyNeverSpawnsSecondExecution (0.00s) 2026-10-22T08:24:08.601480702Z === RUN TestAppServiceImpl_Deploy_TerminalFailureRemainsQueryable 2026-10-22T08:24:08.601492855Z --- PASS: TestAppServiceImpl_Deploy_TerminalFailureRemainsQueryable (0.00s) 2026-10-22T08:24:08.601507374Z === RUN TestAppServiceImpl_Deploy_ShutdownLeavesRecoverableNonTerminalJournal 2026-10-22T08:24:08.601521784Z --- PASS: TestAppServiceImpl_Deploy_ShutdownLeavesRecoverableNonTerminalJournal (0.00s) 2026-10-22T08:24:08.601533352Z === RUN TestAppServiceImpl_Deploy_RefusesAfterShutdownBeforeClaim 2026-10-22T08:24:08.60154344Z --- PASS: TestAppServiceImpl_Deploy_RefusesAfterShutdownBeforeClaim (0.00s) 2026-10-22T08:24:08.601552951Z === RUN TestAppServiceImpl_Deploy_ShutdownRacingClaimSettlesWithoutExecuting 2026-10-22T08:24:08.601562833Z --- PASS: TestAppServiceImpl_Deploy_ShutdownRacingClaimSettlesWithoutExecuting (0.05s) 2026-10-22T08:24:08.60157703Z === RUN TestApply_AcceptsDevicesUnderAdministrativePolicy 2026-10-22T08:24:08.601593298Z --- PASS: TestApply_AcceptsDevicesUnderAdministrativePolicy (0.00s) 2026-10-22T08:24:08.601605354Z === RUN TestApply_RejectsDeviceWithoutPolicyBeforeStoreAccess 2026-10-22T08:24:08.601618066Z --- PASS: TestApply_RejectsDeviceWithoutPolicyBeforeStoreAccess (0.00s) 2026-10-22T08:24:08.601629517Z === RUN TestApply_RejectsDeviceOutsideAllowlists 2026-10-22T08:24:08.601646367Z === RUN TestApply_RejectsDeviceOutsideAllowlists/app_not_allowed 2026-10-22T08:24:08.601656362Z === RUN TestApply_RejectsDeviceOutsideAllowlists/service_not_allowed 2026-10-22T08:24:08.601665531Z --- PASS: TestApply_RejectsDeviceOutsideAllowlists (0.00s) 2026-10-22T08:24:08.601688371Z --- PASS: TestApply_RejectsDeviceOutsideAllowlists/app_not_allowed (0.00s) 2026-10-22T08:24:08.601710692Z --- PASS: TestApply_RejectsDeviceOutsideAllowlists/service_not_allowed (0.00s) 2026-10-22T08:24:08.601723627Z === RUN TestApply_DevicePoliciesReplaceOnReload 2026-10-22T08:24:08.601734751Z --- PASS: TestApply_DevicePoliciesReplaceOnReload (0.00s) 2026-10-22T08:24:08.601744127Z === RUN TestApply_DeviceDryRunRefusedWithoutMutation 2026-10-22T08:24:08.601753377Z --- PASS: TestApply_DeviceDryRunRefusedWithoutMutation (0.00s) 2026-10-22T08:24:08.601762335Z === RUN TestApply_RejectsDuplicateCDIIDsAcrossDevices 2026-10-22T08:24:08.601771542Z --- PASS: TestApply_RejectsDuplicateCDIIDsAcrossDevices (0.00s) 2026-10-22T08:24:08.601782736Z === RUN TestCountManagedContainers_Lifecycle 2026-10-22T08:24:08.601802536Z --- PASS: TestCountManagedContainers_Lifecycle (0.00s) 2026-10-22T08:24:08.601816815Z === RUN TestCountManagedContainers_Error 2026-10-22T08:24:08.601834948Z --- PASS: TestCountManagedContainers_Error (0.00s) 2026-10-22T08:24:08.601848825Z === RUN TestAppServiceImpl_Deploy_MultiServiceRequiresScope 2026-10-22T08:24:08.601867071Z --- PASS: TestAppServiceImpl_Deploy_MultiServiceRequiresScope (0.00s) 2026-10-22T08:24:08.601883366Z === RUN TestAppServiceImpl_Deploy_OldRevisionWithMultipleServicesRequiresScope 2026-10-22T08:24:08.601903726Z --- PASS: TestAppServiceImpl_Deploy_OldRevisionWithMultipleServicesRequiresScope (0.00s) 2026-10-22T08:24:08.601919821Z === RUN TestAppServiceImpl_Deploy_SingleServiceNeedsNoScope 2026-10-22T08:24:08.601938129Z --- PASS: TestAppServiceImpl_Deploy_SingleServiceNeedsNoScope (0.00s) 2026-10-22T08:24:08.601952228Z === RUN TestAppServiceImpl_Deploy_AllSkipsScopeCheck 2026-10-22T08:24:08.601965748Z --- PASS: TestAppServiceImpl_Deploy_AllSkipsScopeCheck (0.00s) 2026-10-22T08:24:08.601987191Z === RUN TestAppServiceImpl_Deploy_AllAndServiceAreExclusive 2026-10-22T08:24:08.602004991Z --- PASS: TestAppServiceImpl_Deploy_AllAndServiceAreExclusive (0.00s) 2026-10-22T08:24:08.602019158Z === RUN TestAppServiceImpl_Restart_MultiServiceRequiresScope 2026-10-22T08:24:08.602035152Z --- PASS: TestAppServiceImpl_Restart_MultiServiceRequiresScope (0.00s) 2026-10-22T08:24:08.602055619Z === RUN TestAppServiceImpl_Restart_AllAndServiceAreExclusive 2026-10-22T08:24:08.60206837Z --- PASS: TestAppServiceImpl_Restart_AllAndServiceAreExclusive (0.00s) 2026-10-22T08:24:08.60208002Z === RUN TestApply_RejectsImageOutsideRegistryAllowlistBeforeStoreAccess 2026-10-22T08:24:08.602097695Z --- PASS: TestApply_RejectsImageOutsideRegistryAllowlistBeforeStoreAccess (0.00s) 2026-10-22T08:24:08.602115264Z === RUN TestApply_RequireDigestIncludesInstallationRegistry 2026-10-22T08:24:08.602131412Z --- PASS: TestApply_RequireDigestIncludesInstallationRegistry (0.00s) 2026-10-22T08:24:08.602141987Z === RUN TestApply_HoldsSharedGCLease 2026-10-22T08:24:08.602157055Z --- PASS: TestApply_HoldsSharedGCLease (0.00s) 2026-10-22T08:24:08.602165499Z === RUN TestApply_FailsClosedWhenGCBarrierRefuses 2026-10-22T08:24:08.60217473Z --- PASS: TestApply_FailsClosedWhenGCBarrierRefuses (0.00s) 2026-10-22T08:24:08.60218509Z === RUN TestApply_AcceptsAndPersists 2026-10-22T08:24:08.602195709Z --- PASS: TestApply_AcceptsAndPersists (0.00s) 2026-10-22T08:24:08.602204478Z === RUN TestApply_NoopIsIdempotent 2026-10-22T08:24:08.602216248Z --- PASS: TestApply_NoopIsIdempotent (0.00s) 2026-10-22T08:24:08.602226602Z === RUN TestApply_DryRunWritesNothing 2026-10-22T08:24:08.602239366Z --- PASS: TestApply_DryRunWritesNothing (0.00s) 2026-10-22T08:24:08.602254409Z === RUN TestApply_ImageOnlyDiffPreservesActiveNetworks 2026-10-22T08:24:08.602272485Z --- PASS: TestApply_ImageOnlyDiffPreservesActiveNetworks (0.00s) 2026-10-22T08:24:08.60229191Z === RUN TestApply_RejectsCrossAppConflict 2026-10-22T08:24:08.602302083Z --- PASS: TestApply_RejectsCrossAppConflict (0.00s) 2026-10-22T08:24:08.602311001Z === RUN TestApply_RejectsDuplicateClaimInCandidate 2026-10-22T08:24:08.602320191Z --- PASS: TestApply_RejectsDuplicateClaimInCandidate (0.00s) 2026-10-22T08:24:08.602329567Z === RUN TestApply_RejectsOverlappingWildcardClaimInCandidate 2026-10-22T08:24:08.602335702Z --- PASS: TestApply_RejectsOverlappingWildcardClaimInCandidate (0.00s) 2026-10-22T08:24:08.602340717Z === RUN TestApply_InvalidSpecFailsBeforeStore 2026-10-22T08:24:08.602350105Z --- PASS: TestApply_InvalidSpecFailsBeforeStore (0.00s) 2026-10-22T08:24:08.602356327Z === RUN TestApply_RejectsPublishMismatchBeforeStore 2026-10-22T08:24:08.602361692Z --- PASS: TestApply_RejectsPublishMismatchBeforeStore (0.00s) 2026-10-22T08:24:08.602371877Z === RUN TestApply_RejectsUnknownEntrypointBeforeStore 2026-10-22T08:24:08.602381407Z --- PASS: TestApply_RejectsUnknownEntrypointBeforeStore (0.00s) 2026-10-22T08:24:08.60238709Z === RUN TestApply_SamePortDifferentProtoCoexists 2026-10-22T08:24:08.60240355Z --- PASS: TestApply_SamePortDifferentProtoCoexists (0.00s) 2026-10-22T08:24:08.602414881Z === RUN TestReservationsFor_DelegatesToDomain 2026-10-22T08:24:08.602425162Z --- PASS: TestReservationsFor_DelegatesToDomain (0.00s) 2026-10-22T08:24:08.602438527Z === RUN TestApply_ImageOnlyDiffWithAppEnv 2026-10-22T08:24:08.602452197Z --- PASS: TestApply_ImageOnlyDiffWithAppEnv (0.00s) 2026-10-22T08:24:08.60246533Z PASS 2026-10-22T08:24:08.602480362Z ok github.com/bnema/gordon/internal/usecase/apps 1.159s 2026-10-22T08:24:08.602495351Z === RUN TestActivator_RebuildHostIndex 2026-10-22T08:24:08.602512215Z 2026-10-22T08:24:07Z INF apptraffic: host index rebuilt hosts=1 2026-10-22T08:24:08.602530182Z --- PASS: TestActivator_RebuildHostIndex (0.00s) 2026-10-22T08:24:08.602542093Z === RUN TestProject_HTTP 2026-10-22T08:24:08.60255563Z --- PASS: TestProject_HTTP (0.00s) 2026-10-22T08:24:08.60256689Z === RUN TestProject_TCPUDP 2026-10-22T08:24:08.602579588Z --- PASS: TestProject_TCPUDP (0.00s) 2026-10-22T08:24:08.602591329Z === RUN TestProject_SamePortTCPUDPResolvesDistinctBackends 2026-10-22T08:24:08.602603814Z --- PASS: TestProject_SamePortTCPUDPResolvesDistinctBackends (0.00s) 2026-10-22T08:24:08.602615352Z === RUN TestProject_TCPAsOrdinaryRCON 2026-10-22T08:24:08.602628116Z --- PASS: TestProject_TCPAsOrdinaryRCON (0.00s) 2026-10-22T08:24:08.602643793Z === RUN TestProject_RejectsPublishMismatch 2026-10-22T08:24:08.602666886Z === RUN TestProject_RejectsPublishMismatch/loopback-vs-wildcard 2026-10-22T08:24:08.602683216Z === RUN TestProject_RejectsPublishMismatch/same-host-different-port 2026-10-22T08:24:08.602693153Z === RUN TestProject_RejectsPublishMismatch/protocol-mismatch 2026-10-22T08:24:08.602701992Z --- PASS: TestProject_RejectsPublishMismatch (0.00s) 2026-10-22T08:24:08.602723945Z --- PASS: TestProject_RejectsPublishMismatch/loopback-vs-wildcard (0.00s) 2026-10-22T08:24:08.602746572Z --- PASS: TestProject_RejectsPublishMismatch/same-host-different-port (0.00s) 2026-10-22T08:24:08.602780437Z --- PASS: TestProject_RejectsPublishMismatch/protocol-mismatch (0.00s) 2026-10-22T08:24:08.602792892Z === RUN TestProject_UnknownEntrypoint 2026-10-22T08:24:08.602807953Z --- PASS: TestProject_UnknownEntrypoint (0.00s) 2026-10-22T08:24:08.602819958Z === RUN TestProject_GameExample 2026-10-22T08:24:08.602831255Z --- PASS: TestProject_GameExample (0.00s) 2026-10-22T08:24:08.602844784Z === RUN TestProject_InternalHTTPExcluded 2026-10-22T08:24:08.60286121Z --- PASS: TestProject_InternalHTTPExcluded (0.00s) 2026-10-22T08:24:08.602877156Z === RUN TestProject_MixedVisibilityProjectsOnlyPublic 2026-10-22T08:24:08.602887897Z --- PASS: TestProject_MixedVisibilityProjectsOnlyPublic (0.00s) 2026-10-22T08:24:08.602897546Z PASS 2026-10-22T08:24:08.602911122Z ok github.com/bnema/gordon/internal/usecase/apptraffic 1.013s 2026-10-22T08:24:08.689645428Z === RUN TestService_GetAuthType 2026-10-22T08:24:08.6896963Z === RUN TestService_GetAuthType/token_type 2026-10-22T08:24:08.689713884Z --- PASS: TestService_GetAuthType (0.00s) 2026-10-22T08:24:08.689747842Z --- PASS: TestService_GetAuthType/token_type (0.00s) 2026-10-22T08:24:08.689759084Z === RUN TestService_IsEnabled 2026-10-22T08:24:08.689791635Z === RUN TestService_IsEnabled/enabled 2026-10-22T08:24:08.689811286Z === RUN TestService_IsEnabled/disabled 2026-10-22T08:24:08.689826374Z --- PASS: TestService_IsEnabled (0.00s) 2026-10-22T08:24:08.689851848Z --- PASS: TestService_IsEnabled/enabled (0.00s) 2026-10-22T08:24:08.689878433Z --- PASS: TestService_IsEnabled/disabled (0.00s) 2026-10-22T08:24:08.689901278Z === RUN TestService_GenerateToken_Success 2026-10-22T08:24:08.689925875Z 2026-10-22T08:24:07Z INF token generated expires_at=2026-10-22T09:24:07Z layer=usecase subject=testsubject token_id=d4e2b903-2983-40df-88fa-b8392ad99b44 usecase=GenerateToken 2026-10-22T08:24:08.689950761Z --- PASS: TestService_GenerateToken_Success (0.00s) 2026-10-22T08:24:08.689974163Z === RUN TestService_GenerateToken_NeverExpires 2026-10-22T08:24:08.690002909Z 2026-10-22T08:24:07Z INF token generated expires_at=0001-01-01T00:00:00Z layer=usecase subject=ci-bot token_id=39ee6950-1a6f-4cb9-aabc-90c00a1b2069 usecase=GenerateToken 2026-10-22T08:24:08.690025429Z --- PASS: TestService_GenerateToken_NeverExpires (0.00s) 2026-10-22T08:24:08.690039674Z === RUN TestService_GenerateAccessToken_NoStorage 2026-10-22T08:24:08.690061905Z --- PASS: TestService_GenerateAccessToken_NoStorage (0.00s) 2026-10-22T08:24:08.690081212Z === RUN TestService_GenerateAccessToken_RejectsInvalidExpiry 2026-10-22T08:24:08.690102867Z --- PASS: TestService_GenerateAccessToken_RejectsInvalidExpiry (0.00s) 2026-10-22T08:24:08.690123801Z === RUN TestService_ValidateToken_LongLivedRequiresStore 2026-10-22T08:24:08.690151058Z 2026-10-22T08:24:07Z INF token generated expires_at=2026-10-22T09:25:07Z layer=usecase subject=testuser token_id=1d8a984a-17b4-4334-96bb-b34f9d82cbb4 usecase=GenerateToken 2026-10-22T08:24:08.690173567Z --- PASS: TestService_ValidateToken_LongLivedRequiresStore (0.00s) 2026-10-22T08:24:08.690188502Z === RUN TestService_ValidateToken_NeverExpiringRequiresStore 2026-10-22T08:24:08.690219371Z 2026-10-22T08:24:07Z INF token generated expires_at=0001-01-01T00:00:00Z layer=usecase subject=ci-bot token_id=ed9db259-1cdf-491c-9c2e-ac757dd827b9 usecase=GenerateToken 2026-10-22T08:24:08.69023839Z --- PASS: TestService_ValidateToken_NeverExpiringRequiresStore (0.00s) 2026-10-22T08:24:08.690257781Z === RUN TestService_ValidateToken_Success 2026-10-22T08:24:08.690288954Z 2026-10-22T08:24:07Z INF token generated expires_at=2026-10-22T09:25:07Z layer=usecase subject=testsubject token_id=203a35a9-a8f6-4516-8299-048888234153 usecase=GenerateToken 2026-10-22T08:24:08.69031045Z --- PASS: TestService_ValidateToken_Success (0.00s) 2026-10-22T08:24:08.690332123Z === RUN TestService_ValidateToken_Revoked 2026-10-22T08:24:08.690356012Z 2026-10-22T08:24:07Z INF token generated expires_at=2026-10-22T09:25:07Z layer=usecase subject=testsubject token_id=988efafa-b552-48aa-85f0-f661c01f24bc usecase=GenerateToken 2026-10-22T08:24:08.690370852Z --- PASS: TestService_ValidateToken_Revoked (0.00s) 2026-10-22T08:24:08.690384157Z === RUN TestService_ValidateToken_InvalidSignature 2026-10-22T08:24:08.690415726Z 2026-10-22T08:24:07Z INF token generated expires_at=2026-10-22T09:24:07Z layer=usecase subject=testsubject token_id=761c9096-96df-4996-b8ac-fc9654f2645c usecase=GenerateToken 2026-10-22T08:24:08.690440261Z --- PASS: TestService_ValidateToken_InvalidSignature (0.00s) 2026-10-22T08:24:08.690457223Z === RUN TestService_ValidateToken_Expired 2026-10-22T08:24:08.690480678Z 2026-10-22T08:24:07Z INF token generated expires_at=2026-10-22T08:24:07Z layer=usecase subject=testsubject token_id=8546a974-1c9f-4973-a0b9-c9d4eb83bec5 usecase=GenerateToken 2026-10-22T08:24:08.690496275Z --- PASS: TestService_ValidateToken_Expired (0.01s) 2026-10-22T08:24:08.690509673Z === RUN TestService_ValidateToken_MalformedToken 2026-10-22T08:24:08.690528355Z --- PASS: TestService_ValidateToken_MalformedToken (0.00s) 2026-10-22T08:24:08.690541866Z === RUN TestService_RevokeToken 2026-10-22T08:24:08.690565161Z 2026-10-22T08:24:07Z INF token revoked layer=usecase token_id=550e8400-e29b-41d4-a716-446655440000 usecase=RevokeToken 2026-10-22T08:24:08.690580004Z --- PASS: TestService_RevokeToken (0.00s) 2026-10-22T08:24:08.690592714Z === RUN TestService_RevokeAllTokens 2026-10-22T08:24:08.690611535Z === RUN TestService_RevokeAllTokens/revokes_all_active_tokens 2026-10-22T08:24:08.690632706Z 2026-10-22T08:24:07Z INF all tokens revoked count=2 layer=usecase usecase=RevokeAllTokens 2026-10-22T08:24:08.690666278Z === RUN TestService_RevokeAllTokens/returns_zero_when_no_active_tokens 2026-10-22T08:24:08.6906947Z 2026-10-22T08:24:07Z INF all tokens revoked count=0 layer=usecase usecase=RevokeAllTokens 2026-10-22T08:24:08.690717929Z === RUN TestService_RevokeAllTokens/returns_zero_when_no_tokens_exist 2026-10-22T08:24:08.690741664Z 2026-10-22T08:24:07Z INF all tokens revoked count=0 layer=usecase usecase=RevokeAllTokens 2026-10-22T08:24:08.690762863Z === RUN TestService_RevokeAllTokens/returns_error_when_ListTokens_fails 2026-10-22T08:24:08.69079105Z 2026-10-22T08:24:07Z ERR failed to list tokens error="storage unavailable" layer=usecase usecase=RevokeAllTokens 2026-10-22T08:24:08.690813584Z === RUN TestService_RevokeAllTokens/continues_on_partial_revoke_failure 2026-10-22T08:24:08.690843834Z 2026-10-22T08:24:07Z WRN failed to revoke token error="revoke failed" layer=usecase token_id=token-2 usecase=RevokeAllTokens 2026-10-22T08:24:08.690869958Z 2026-10-22T08:24:07Z INF all tokens revoked count=2 layer=usecase usecase=RevokeAllTokens 2026-10-22T08:24:08.690889415Z --- PASS: TestService_RevokeAllTokens (0.00s) 2026-10-22T08:24:08.690923055Z --- PASS: TestService_RevokeAllTokens/revokes_all_active_tokens (0.00s) 2026-10-22T08:24:08.690958094Z --- PASS: TestService_RevokeAllTokens/returns_zero_when_no_active_tokens (0.00s) 2026-10-22T08:24:08.690993206Z --- PASS: TestService_RevokeAllTokens/returns_zero_when_no_tokens_exist (0.00s) 2026-10-22T08:24:08.69103184Z --- PASS: TestService_RevokeAllTokens/returns_error_when_ListTokens_fails (0.00s) 2026-10-22T08:24:08.691070199Z --- PASS: TestService_RevokeAllTokens/continues_on_partial_revoke_failure (0.00s) 2026-10-22T08:24:08.691089774Z === RUN TestService_ListTokens 2026-10-22T08:24:08.691103322Z --- PASS: TestService_ListTokens (0.00s) 2026-10-22T08:24:08.691116366Z === RUN TestService_GenerateToken_HasNbfClaim 2026-10-22T08:24:08.691141629Z 2026-10-22T08:24:07Z INF token generated expires_at=2026-10-22T09:24:07Z layer=usecase subject=testsubject token_id=ecd3fcf6-9b22-400e-8e53-9c5b165e5f65 usecase=GenerateToken 2026-10-22T08:24:08.691160694Z --- PASS: TestService_GenerateToken_HasNbfClaim (0.00s) 2026-10-22T08:24:08.691175079Z === RUN TestService_GenerateAccessToken_HasNbfClaim 2026-10-22T08:24:08.691188707Z --- PASS: TestService_GenerateAccessToken_HasNbfClaim (0.00s) 2026-10-22T08:24:08.691201077Z === RUN TestExtendTokenSlidesExpiry 2026-10-22T08:24:08.691234692Z 2026-10-22T08:24:07Z INF token generated expires_at=2026-10-22T09:25:07Z layer=usecase subject=testuser token_id=3dbaea9a-dd6a-419b-867b-e7b6c3801ad0 usecase=GenerateToken 2026-10-22T08:24:08.691269962Z --- PASS: TestExtendTokenSlidesExpiry (0.00s) 2026-10-22T08:24:08.691283032Z === RUN TestExtendTokenDebounce 2026-10-22T08:24:08.691307862Z 2026-10-22T08:24:07Z INF token generated expires_at=2026-10-22T09:25:07Z layer=usecase subject=testuser token_id=49b55905-f1b0-4def-9b5d-67608f9124b7 usecase=GenerateToken 2026-10-22T08:24:08.69132063Z --- PASS: TestExtendTokenDebounce (0.00s) 2026-10-22T08:24:08.691338736Z === RUN TestExtendTokenSkipsEphemeral 2026-10-22T08:24:08.69135354Z --- PASS: TestExtendTokenSkipsEphemeral (0.00s) 2026-10-22T08:24:08.691367871Z === RUN TestIsEphemeralAccessTokenRejectsFutureIat 2026-10-22T08:24:08.691391417Z service_test.go:934: token with future iat rejected at parse: invalid token 2026-10-22T08:24:08.691407076Z --- PASS: TestIsEphemeralAccessTokenRejectsFutureIat (0.00s) 2026-10-22T08:24:08.691418661Z === RUN TestIsEphemeralAccessTokenRequiresExplicitTokenType 2026-10-22T08:24:08.691429717Z --- PASS: TestIsEphemeralAccessTokenRequiresExplicitTokenType (0.00s) 2026-10-22T08:24:08.691440819Z === RUN TestExtendTokenSkipsServiceToken 2026-10-22T08:24:08.691455351Z 2026-10-22T08:24:07Z INF token generated expires_at=2026-10-23T08:24:07Z layer=usecase subject=gordon-service token_id=29ab90b4-ee86-4bed-bfa3-0c3aa8039324 usecase=GenerateToken 2026-10-22T08:24:08.691468448Z --- PASS: TestExtendTokenSkipsServiceToken (0.00s) 2026-10-22T08:24:08.691481208Z === RUN TestValidateToken_IsEphemeral_EphemeralToken 2026-10-22T08:24:08.691491149Z --- PASS: TestValidateToken_IsEphemeral_EphemeralToken (0.00s) 2026-10-22T08:24:08.691504702Z === RUN TestValidateToken_IsEphemeral_StoredToken 2026-10-22T08:24:08.691520052Z 2026-10-22T08:24:07Z INF token generated expires_at=2026-10-22T09:25:07Z layer=usecase subject=testuser token_id=ad472418-7d8a-41ea-838a-471194b7d242 usecase=GenerateToken 2026-10-22T08:24:08.691530584Z --- PASS: TestValidateToken_IsEphemeral_StoredToken (0.00s) 2026-10-22T08:24:08.691539968Z === RUN TestValidateToken_IsEphemeral_NeverExpiringToken 2026-10-22T08:24:08.691557599Z 2026-10-22T08:24:07Z INF token generated expires_at=0001-01-01T00:00:00Z layer=usecase subject=ci-bot token_id=d9dc96cd-c537-47c6-a1c9-368331c6a2f7 usecase=GenerateToken 2026-10-22T08:24:08.691581261Z --- PASS: TestValidateToken_IsEphemeral_NeverExpiringToken (0.00s) 2026-10-22T08:24:08.691591722Z PASS 2026-10-22T08:24:08.69159833Z ok github.com/bnema/gordon/internal/usecase/auth 1.047s 2026-10-22T08:24:09.583282521Z === RUN TestVolumeService_RecordsRunMetrics 2026-10-22T08:24:09.583344367Z === RUN TestVolumeService_RecordsRunMetrics/success 2026-10-22T08:24:09.583357985Z === RUN TestVolumeService_RecordsRunMetrics/export_failure 2026-10-22T08:24:09.583378385Z --- PASS: TestVolumeService_RecordsRunMetrics (0.00s) 2026-10-22T08:24:09.583395979Z --- PASS: TestVolumeService_RecordsRunMetrics/success (0.00s) 2026-10-22T08:24:09.583416107Z --- PASS: TestVolumeService_RecordsRunMetrics/export_failure (0.00s) 2026-10-22T08:24:09.58343118Z === RUN TestVolumeService_SeedMetrics 2026-10-22T08:24:09.583440702Z --- PASS: TestVolumeService_SeedMetrics (0.00s) 2026-10-22T08:24:09.583447903Z === RUN TestService_RecordsRunMetrics 2026-10-22T08:24:09.583461532Z === RUN TestService_RecordsRunMetrics/pg_dump_failure 2026-10-22T08:24:09.58347209Z === RUN TestService_RecordsRunMetrics/success 2026-10-22T08:24:09.583478095Z --- PASS: TestService_RecordsRunMetrics (0.01s) 2026-10-22T08:24:09.583493836Z --- PASS: TestService_RecordsRunMetrics/pg_dump_failure (0.00s) 2026-10-22T08:24:09.583509442Z --- PASS: TestService_RecordsRunMetrics/success (0.00s) 2026-10-22T08:24:09.583517634Z === RUN TestService_SeedMetrics 2026-10-22T08:24:09.583524316Z --- PASS: TestService_SeedMetrics (0.00s) 2026-10-22T08:24:09.583536551Z === RUN TestService_TargetsResolveFromDeclarations 2026-10-22T08:24:09.583548992Z --- PASS: TestService_TargetsResolveFromDeclarations (0.00s) 2026-10-22T08:24:09.583558329Z === RUN TestService_TargetsIgnoreUnreferencedDatabases 2026-10-22T08:24:09.583564916Z --- PASS: TestService_TargetsIgnoreUnreferencedDatabases (0.00s) 2026-10-22T08:24:09.58357367Z === RUN TestService_TargetsSkipStoppedApps 2026-10-22T08:24:09.583603361Z --- PASS: TestService_TargetsSkipStoppedApps (0.00s) 2026-10-22T08:24:09.583620575Z === RUN TestService_RunBackup_StoresUnderAppIdentity 2026-10-22T08:24:09.583639944Z --- PASS: TestService_RunBackup_StoresUnderAppIdentity (0.00s) 2026-10-22T08:24:09.583658384Z === RUN TestService_RunBackup_SelectorRules 2026-10-22T08:24:09.583669129Z --- PASS: TestService_RunBackup_SelectorRules (0.00s) 2026-10-22T08:24:09.583675955Z === RUN TestService_RunForSchedule_RunsOnlyTheDeclaredSchedule 2026-10-22T08:24:09.583695969Z --- PASS: TestService_RunForSchedule_RunsOnlyTheDeclaredSchedule (0.00s) 2026-10-22T08:24:09.583727809Z === RUN TestService_RunForSchedule_RejectsUnknownSchedule 2026-10-22T08:24:09.583740875Z --- PASS: TestService_RunForSchedule_RejectsUnknownSchedule (0.00s) 2026-10-22T08:24:09.583750489Z === RUN TestService_ListBackupsUsesAppIdentity 2026-10-22T08:24:09.583763181Z --- PASS: TestService_ListBackupsUsesAppIdentity (0.00s) 2026-10-22T08:24:09.583779887Z === RUN TestNewVolumeBackupJobIDIsShortAndUnique 2026-10-22T08:24:09.583793491Z --- PASS: TestNewVolumeBackupJobIDIsShortAndUnique (0.00s) 2026-10-22T08:24:09.583803089Z === RUN TestVolumeService_TargetsResolveFromDeclarations 2026-10-22T08:24:09.583809345Z --- PASS: TestVolumeService_TargetsResolveFromDeclarations (0.00s) 2026-10-22T08:24:09.583818462Z === RUN TestVolumeService_RunVolumeBackups_ExportsTheDeclaredVolume 2026-10-22T08:24:09.583827901Z --- PASS: TestVolumeService_RunVolumeBackups_ExportsTheDeclaredVolume (0.00s) 2026-10-22T08:24:09.583836834Z === RUN TestVolumeService_RunVolumeBackups_SelectorRules 2026-10-22T08:24:09.583851825Z --- PASS: TestVolumeService_RunVolumeBackups_SelectorRules (0.00s) 2026-10-22T08:24:09.583864322Z === RUN TestVolumeService_RunVolumeBackupsForSchedule_RunsEveryDeclaredTarget 2026-10-22T08:24:09.583877318Z --- PASS: TestVolumeService_RunVolumeBackupsForSchedule_RunsEveryDeclaredTarget (0.00s) 2026-10-22T08:24:09.583888134Z === RUN TestVolumeService_RunVolumeBackupsForSchedule_HonorsMaxConcurrency 2026-10-22T08:24:09.583899302Z === RUN TestVolumeService_RunVolumeBackupsForSchedule_HonorsMaxConcurrency/max_concurrency=1 2026-10-22T08:24:09.583911067Z === RUN TestVolumeService_RunVolumeBackupsForSchedule_HonorsMaxConcurrency/max_concurrency=2 2026-10-22T08:24:09.583938326Z --- PASS: TestVolumeService_RunVolumeBackupsForSchedule_HonorsMaxConcurrency (0.04s) 2026-10-22T08:24:09.583965459Z --- PASS: TestVolumeService_RunVolumeBackupsForSchedule_HonorsMaxConcurrency/max_concurrency=1 (0.02s) 2026-10-22T08:24:09.584001635Z --- PASS: TestVolumeService_RunVolumeBackupsForSchedule_HonorsMaxConcurrency/max_concurrency=2 (0.02s) 2026-10-22T08:24:09.584015279Z === RUN TestVolumeService_DisabledDoesNothing 2026-10-22T08:24:09.58402499Z --- PASS: TestVolumeService_DisabledDoesNothing (0.00s) 2026-10-22T08:24:09.584031075Z === RUN TestVolumeService_ListVolumeBackupsWrapsStorageError 2026-10-22T08:24:09.584036913Z --- PASS: TestVolumeService_ListVolumeBackupsWrapsStorageError (0.00s) 2026-10-22T08:24:09.584043393Z === RUN TestVolumeService_FailedExportReportsTheJob 2026-10-22T08:24:09.58404865Z --- PASS: TestVolumeService_FailedExportReportsTheJob (0.00s) 2026-10-22T08:24:09.584058699Z PASS 2026-10-22T08:24:09.584069778Z ok github.com/bnema/gordon/internal/usecase/backup 1.087s 2026-10-22T08:24:09.584074882Z === RUN TestService_Load 2026-10-22T08:24:09.584084927Z 2026-10-22T08:24:08Z INF configuration loaded layer=usecase registry_port=5000 server_port=8080 usecase=Load 2026-10-22T08:24:09.584092089Z --- PASS: TestService_Load (0.00s) 2026-10-22T08:24:09.58410071Z === RUN TestService_LoadPrefersExplicitRegistryAddress 2026-10-22T08:24:09.584115051Z 2026-10-22T08:24:08Z INF configuration loaded layer=usecase registry_port=0 server_port=0 usecase=Load 2026-10-22T08:24:09.584121954Z --- PASS: TestService_LoadPrefersExplicitRegistryAddress (0.00s) 2026-10-22T08:24:09.584128934Z === RUN TestService_Reload 2026-10-22T08:24:09.584138159Z === RUN TestService_Reload/success_-_picks_up_config_file_changes 2026-10-22T08:24:09.58414984Z 2026-10-22T08:24:08Z INF configuration loaded layer=usecase registry_port=0 server_port=8080 usecase=Load 2026-10-22T08:24:09.584159152Z 2026-10-22T08:24:08Z INF configuration loaded layer=usecase registry_port=0 server_port=9090 usecase=Load 2026-10-22T08:24:09.584164617Z === RUN TestService_Reload/error_-_config_file_not_found 2026-10-22T08:24:09.584172865Z 2026-10-22T08:24:08Z INF configuration loaded layer=usecase registry_port=0 server_port=8080 usecase=Load 2026-10-22T08:24:09.584185547Z 2026-10-22T08:24:08Z ERR failed to read config file error="open /tmp/TestService_Reloaderror_-_config_file_not_found1360335608/001/gordon.toml: no such file or directory" layer=usecase usecase=Reload 2026-10-22T08:24:09.584193112Z === RUN TestService_Reload/error_-_invalid_config_syntax 2026-10-22T08:24:09.584201604Z 2026-10-22T08:24:08Z INF configuration loaded layer=usecase registry_port=0 server_port=8080 usecase=Load 2026-10-22T08:24:09.58421248Z 2026-10-22T08:24:08Z ERR failed to read config file error="While parsing config: toml: expected ']' to close table name" layer=usecase usecase=Reload 2026-10-22T08:24:09.58421818Z --- PASS: TestService_Reload (0.00s) 2026-10-22T08:24:09.584232589Z --- PASS: TestService_Reload/success_-_picks_up_config_file_changes (0.00s) 2026-10-22T08:24:09.584246544Z --- PASS: TestService_Reload/error_-_config_file_not_found (0.00s) 2026-10-22T08:24:09.584266213Z --- PASS: TestService_Reload/error_-_invalid_config_syntax (0.00s) 2026-10-22T08:24:09.584276879Z === RUN TestLoadExternalRoutes_RejectsInvalidAndDuplicateKeys 2026-10-22T08:24:09.58428659Z === RUN TestLoadExternalRoutes_RejectsInvalidAndDuplicateKeys/invalid 2026-10-22T08:24:09.584297222Z === RUN TestLoadExternalRoutes_RejectsInvalidAndDuplicateKeys/duplicate_canonical 2026-10-22T08:24:09.584306084Z --- PASS: TestLoadExternalRoutes_RejectsInvalidAndDuplicateKeys (0.00s) 2026-10-22T08:24:09.58432577Z --- PASS: TestLoadExternalRoutes_RejectsInvalidAndDuplicateKeys/invalid (0.00s) 2026-10-22T08:24:09.584346289Z --- PASS: TestLoadExternalRoutes_RejectsInvalidAndDuplicateKeys/duplicate_canonical (0.00s) 2026-10-22T08:24:09.584351884Z === RUN TestService_GetExternalRoutes 2026-10-22T08:24:09.584360153Z 2026-10-22T08:24:08Z INF configuration loaded layer=usecase registry_port=0 server_port=0 usecase=Load 2026-10-22T08:24:09.584365513Z --- PASS: TestService_GetExternalRoutes (0.00s) 2026-10-22T08:24:09.584370123Z === RUN TestService_GetExternalRoutes_Empty 2026-10-22T08:24:09.584378053Z 2026-10-22T08:24:08Z INF configuration loaded layer=usecase registry_port=0 server_port=0 usecase=Load 2026-10-22T08:24:09.584383204Z --- PASS: TestService_GetExternalRoutes_Empty (0.00s) 2026-10-22T08:24:09.584387624Z === RUN TestExtractDomainFromImageName 2026-10-22T08:24:09.584392524Z === RUN TestExtractDomainFromImageName/domain_like_image 2026-10-22T08:24:09.584397879Z === RUN TestExtractDomainFromImageName/domain_like_image_without_tag 2026-10-22T08:24:09.584406854Z === RUN TestExtractDomainFromImageName/simple_image_name 2026-10-22T08:24:09.584414331Z === RUN TestExtractDomainFromImageName/registry_path 2026-10-22T08:24:09.584419323Z === RUN TestExtractDomainFromImageName/leading_dot 2026-10-22T08:24:09.584425477Z === RUN TestExtractDomainFromImageName/trailing_dot 2026-10-22T08:24:09.584430206Z --- PASS: TestExtractDomainFromImageName (0.00s) 2026-10-22T08:24:09.584443014Z --- PASS: TestExtractDomainFromImageName/domain_like_image (0.00s) 2026-10-22T08:24:09.5844579Z --- PASS: TestExtractDomainFromImageName/domain_like_image_without_tag (0.00s) 2026-10-22T08:24:09.584470795Z --- PASS: TestExtractDomainFromImageName/simple_image_name (0.00s) 2026-10-22T08:24:09.584487655Z --- PASS: TestExtractDomainFromImageName/registry_path (0.00s) 2026-10-22T08:24:09.584501191Z --- PASS: TestExtractDomainFromImageName/leading_dot (0.00s) 2026-10-22T08:24:09.584513431Z --- PASS: TestExtractDomainFromImageName/trailing_dot (0.00s) 2026-10-22T08:24:09.584518032Z === RUN TestLoadStringMap 2026-10-22T08:24:09.584522619Z === RUN TestLoadStringMap/nil_input 2026-10-22T08:24:09.58452701Z === RUN TestLoadStringMap/valid_map 2026-10-22T08:24:09.584532182Z === RUN TestLoadStringMap/invalid_type 2026-10-22T08:24:09.584536799Z === RUN TestLoadStringMap/mixed_values 2026-10-22T08:24:09.584541204Z --- PASS: TestLoadStringMap (0.00s) 2026-10-22T08:24:09.584553248Z --- PASS: TestLoadStringMap/nil_input (0.00s) 2026-10-22T08:24:09.584566416Z --- PASS: TestLoadStringMap/valid_map (0.00s) 2026-10-22T08:24:09.584577596Z --- PASS: TestLoadStringMap/invalid_type (0.00s) 2026-10-22T08:24:09.58458814Z --- PASS: TestLoadStringMap/mixed_values (0.00s) 2026-10-22T08:24:09.584591545Z PASS 2026-10-22T08:24:09.584597567Z ok github.com/bnema/gordon/internal/usecase/config 1.018s 2026-10-22T08:24:09.621379401Z === RUN TestService_ListNetworks 2026-10-22T08:24:09.621421512Z --- PASS: TestService_ListNetworks (0.00s) 2026-10-22T08:24:09.621429832Z PASS 2026-10-22T08:24:09.62143969Z ok github.com/bnema/gordon/internal/usecase/container 1.018s 2026-10-22T08:24:09.812198518Z === RUN TestCalculateNextRunPresets 2026-10-22T08:24:09.812305468Z === RUN TestCalculateNextRunPresets/hourly 2026-10-22T08:24:09.812338266Z === RUN TestCalculateNextRunPresets/daily 2026-10-22T08:24:09.812346203Z === RUN TestCalculateNextRunPresets/weekly 2026-10-22T08:24:09.812485105Z === RUN TestCalculateNextRunPresets/monthly 2026-10-22T08:24:09.812509713Z --- PASS: TestCalculateNextRunPresets (0.00s) 2026-10-22T08:24:09.812525605Z --- PASS: TestCalculateNextRunPresets/hourly (0.00s) 2026-10-22T08:24:09.812667251Z --- PASS: TestCalculateNextRunPresets/daily (0.00s) 2026-10-22T08:24:09.812681887Z --- PASS: TestCalculateNextRunPresets/weekly (0.00s) 2026-10-22T08:24:09.812817381Z --- PASS: TestCalculateNextRunPresets/monthly (0.00s) 2026-10-22T08:24:09.812834262Z === RUN TestCalculateNextRunAtLocalTime 2026-10-22T08:24:09.812843084Z === RUN TestCalculateNextRunAtLocalTime/daily_later_today 2026-10-22T08:24:09.812849431Z === RUN TestCalculateNextRunAtLocalTime/daily_already_passed 2026-10-22T08:24:09.812973402Z === RUN TestCalculateNextRunAtLocalTime/daily_exactly_now_runs_tomorrow 2026-10-22T08:24:09.813111736Z === RUN TestCalculateNextRunAtLocalTime/daily_across_DST_end_keeps_wall_clock 2026-10-22T08:24:09.813134655Z === RUN TestCalculateNextRunAtLocalTime/weekly_next_sunday 2026-10-22T08:24:09.813147926Z === RUN TestCalculateNextRunAtLocalTime/monthly_next_first_day 2026-10-22T08:24:09.81315744Z === RUN TestCalculateNextRunAtLocalTime/hourly_uses_minute_only 2026-10-22T08:24:09.813364732Z --- PASS: TestCalculateNextRunAtLocalTime (0.00s) 2026-10-22T08:24:09.813511617Z --- PASS: TestCalculateNextRunAtLocalTime/daily_later_today (0.00s) 2026-10-22T08:24:09.81365614Z --- PASS: TestCalculateNextRunAtLocalTime/daily_already_passed (0.00s) 2026-10-22T08:24:09.813784781Z --- PASS: TestCalculateNextRunAtLocalTime/daily_exactly_now_runs_tomorrow (0.00s) 2026-10-22T08:24:09.813837214Z --- PASS: TestCalculateNextRunAtLocalTime/daily_across_DST_end_keeps_wall_clock (0.00s) 2026-10-22T08:24:09.813868621Z --- PASS: TestCalculateNextRunAtLocalTime/weekly_next_sunday (0.00s) 2026-10-22T08:24:09.813889198Z --- PASS: TestCalculateNextRunAtLocalTime/monthly_next_first_day (0.00s) 2026-10-22T08:24:09.813907347Z --- PASS: TestCalculateNextRunAtLocalTime/hourly_uses_minute_only (0.00s) 2026-10-22T08:24:09.81391619Z === RUN TestCalculateNextRunDSTGapSkipsForward 2026-10-22T08:24:09.813927473Z --- PASS: TestCalculateNextRunDSTGapSkipsForward (0.00s) 2026-10-22T08:24:09.813937387Z === RUN TestCalculateNextRunDSTEdgeCasesNewYork 2026-10-22T08:24:09.813950466Z === RUN TestCalculateNextRunDSTEdgeCasesNewYork/daily_in_gap_from_same_morning_runs_at_gap_end 2026-10-22T08:24:09.813962024Z === RUN TestCalculateNextRunDSTEdgeCasesNewYork/daily_in_gap_from_previous_day_runs_at_gap_end 2026-10-22T08:24:09.81397353Z === RUN TestCalculateNextRunDSTEdgeCasesNewYork/daily_after_gap_end_runs_next_day 2026-10-22T08:24:09.813984826Z === RUN TestCalculateNextRunDSTEdgeCasesNewYork/weekly_in_gap_runs_at_gap_end 2026-10-22T08:24:09.813991883Z === RUN TestCalculateNextRunDSTEdgeCasesNewYork/hourly_in_repeated_hour,_first_pass 2026-10-22T08:24:09.813999253Z === RUN TestCalculateNextRunDSTEdgeCasesNewYork/hourly_in_repeated_hour,_second_pass 2026-10-22T08:24:09.814005504Z === RUN TestCalculateNextRunDSTEdgeCasesNewYork/daily_in_repeated_hour_runs_next_day 2026-10-22T08:24:09.814010883Z --- PASS: TestCalculateNextRunDSTEdgeCasesNewYork (0.00s) 2026-10-22T08:24:09.814029649Z --- PASS: TestCalculateNextRunDSTEdgeCasesNewYork/daily_in_gap_from_same_morning_runs_at_gap_end (0.00s) 2026-10-22T08:24:09.814052009Z --- PASS: TestCalculateNextRunDSTEdgeCasesNewYork/daily_in_gap_from_previous_day_runs_at_gap_end (0.00s) 2026-10-22T08:24:09.814069568Z --- PASS: TestCalculateNextRunDSTEdgeCasesNewYork/daily_after_gap_end_runs_next_day (0.00s) 2026-10-22T08:24:09.814089266Z --- PASS: TestCalculateNextRunDSTEdgeCasesNewYork/weekly_in_gap_runs_at_gap_end (0.00s) 2026-10-22T08:24:09.814113859Z --- PASS: TestCalculateNextRunDSTEdgeCasesNewYork/hourly_in_repeated_hour,_first_pass (0.00s) 2026-10-22T08:24:09.814132662Z --- PASS: TestCalculateNextRunDSTEdgeCasesNewYork/hourly_in_repeated_hour,_second_pass (0.00s) 2026-10-22T08:24:09.814154017Z --- PASS: TestCalculateNextRunDSTEdgeCasesNewYork/daily_in_repeated_hour_runs_next_day (0.00s) 2026-10-22T08:24:09.814163645Z === RUN TestCalculateNextRunRejectsMissingPreset 2026-10-22T08:24:09.81416971Z --- PASS: TestCalculateNextRunRejectsMissingPreset (0.00s) 2026-10-22T08:24:09.814174897Z === RUN TestSchedulerAddListAndRunNow 2026-10-22T08:24:09.814180424Z --- PASS: TestSchedulerAddListAndRunNow (0.00s) 2026-10-22T08:24:09.814185226Z === RUN TestSchedulerWithMaxJobsOption 2026-10-22T08:24:09.814190456Z --- PASS: TestSchedulerWithMaxJobsOption (0.00s) 2026-10-22T08:24:09.814195485Z === RUN TestSchedulerRemoveRejectsRunningJob 2026-10-22T08:24:09.814200603Z --- PASS: TestSchedulerRemoveRejectsRunningJob (0.00s) 2026-10-22T08:24:09.814209779Z === RUN TestSchedulerRunNowRejectsConcurrentRun 2026-10-22T08:24:09.814222241Z --- PASS: TestSchedulerRunNowRejectsConcurrentRun (0.00s) 2026-10-22T08:24:09.814236902Z === RUN TestSchedulerRunNowRecoversFromPanics 2026-10-22T08:24:09.814244075Z --- PASS: TestSchedulerRunNowRecoversFromPanics (0.00s) 2026-10-22T08:24:09.814249221Z === RUN TestSchedulerStartNoOpWhenStopped 2026-10-22T08:24:09.814254399Z --- PASS: TestSchedulerStartNoOpWhenStopped (0.05s) 2026-10-22T08:24:09.814259893Z === RUN TestSchedulerRunNowComputesNextRunFromJobFinishTime 2026-10-22T08:24:09.814265523Z --- PASS: TestSchedulerRunNowComputesNextRunFromJobFinishTime (0.00s) 2026-10-22T08:24:09.814270975Z === RUN TestSchedulerStartNoOpWhenContextAlreadyCanceled 2026-10-22T08:24:09.814281212Z --- PASS: TestSchedulerStartNoOpWhenContextAlreadyCanceled (0.05s) 2026-10-22T08:24:09.81428939Z PASS 2026-10-22T08:24:09.814300938Z ok github.com/bnema/gordon/internal/usecase/cron 1.122s 2026-10-22T08:24:29.790086203Z === RUN TestResolveServiceBinds_ExactTranslation 2026-10-22T08:24:29.790136048Z --- PASS: TestResolveServiceBinds_ExactTranslation (0.00s) 2026-10-22T08:24:29.79015319Z === RUN TestResolveServiceBinds_ReadOnlyNonWeakening 2026-10-22T08:24:29.790178011Z --- PASS: TestResolveServiceBinds_ReadOnlyNonWeakening (0.00s) 2026-10-22T08:24:29.790193304Z === RUN TestResolveServiceBinds_UnknownAndRevokedPolicy 2026-10-22T08:24:29.790212817Z === RUN TestResolveServiceBinds_UnknownAndRevokedPolicy/unknown_policy 2026-10-22T08:24:29.790239101Z === RUN TestResolveServiceBinds_UnknownAndRevokedPolicy/revoked_policy 2026-10-22T08:24:29.790256777Z === RUN TestResolveServiceBinds_UnknownAndRevokedPolicy/refused_policy_omits_source 2026-10-22T08:24:29.790282055Z --- PASS: TestResolveServiceBinds_UnknownAndRevokedPolicy (0.00s) 2026-10-22T08:24:29.790318787Z --- PASS: TestResolveServiceBinds_UnknownAndRevokedPolicy/unknown_policy (0.00s) 2026-10-22T08:24:29.79035901Z --- PASS: TestResolveServiceBinds_UnknownAndRevokedPolicy/revoked_policy (0.00s) 2026-10-22T08:24:29.79040698Z --- PASS: TestResolveServiceBinds_UnknownAndRevokedPolicy/refused_policy_omits_source (0.00s) 2026-10-22T08:24:29.790433172Z === RUN TestCreateAndStart_RefusesRevokedBindBeforeRuntimeMutation 2026-10-22T08:24:29.790463622Z --- PASS: TestCreateAndStart_RefusesRevokedBindBeforeRuntimeMutation (0.00s) 2026-10-22T08:24:29.790488685Z === RUN TestCreateContainer_BindBearingRuntimeErrorIsRedactedNotBindPolicy 2026-10-22T08:24:29.790514025Z --- PASS: TestCreateContainer_BindBearingRuntimeErrorIsRedactedNotBindPolicy (0.00s) 2026-10-22T08:24:29.790537324Z === RUN TestCheckImageVolumes_IncludesBindDestinations 2026-10-22T08:24:29.790557978Z === RUN TestCheckImageVolumes_IncludesBindDestinations/bind_destination_maps_image_volume 2026-10-22T08:24:29.790579753Z === RUN TestCheckImageVolumes_IncludesBindDestinations/unmapped_image_volume_still_refused 2026-10-22T08:24:29.79060406Z --- PASS: TestCheckImageVolumes_IncludesBindDestinations (0.00s) 2026-10-22T08:24:29.790666817Z --- PASS: TestCheckImageVolumes_IncludesBindDestinations/bind_destination_maps_image_volume (0.00s) 2026-10-22T08:24:29.790712606Z --- PASS: TestCheckImageVolumes_IncludesBindDestinations/unmapped_image_volume_still_refused (0.00s) 2026-10-22T08:24:29.790739052Z === RUN TestSingleWriterRequiredAndImplicitHTTPReadiness 2026-10-22T08:24:29.790762466Z === RUN TestSingleWriterRequiredAndImplicitHTTPReadiness/stateless_public_HTTP_service_keeps_the_implicit_HTTP_probe 2026-10-22T08:24:29.790787997Z === RUN TestSingleWriterRequiredAndImplicitHTTPReadiness/undeclared_probe_is_not_guessed_for_internal,_mixed,_or_L4_services 2026-10-22T08:24:29.790813789Z === RUN TestSingleWriterRequiredAndImplicitHTTPReadiness/undeclared_probe_on_a_stateless_single_TCP_service_is_the_implicit_TCP_probe 2026-10-22T08:24:29.790837064Z === RUN TestSingleWriterRequiredAndImplicitHTTPReadiness/no_implicit_TCP_probe_on_stateful,_multi-port,_mixed,_or_UDP_services 2026-10-22T08:24:29.790859712Z === RUN TestSingleWriterRequiredAndImplicitHTTPReadiness/declared_probes_are_never_replaced_by_the_implicit_HTTP_probe 2026-10-22T08:24:29.790889649Z === RUN TestSingleWriterRequiredAndImplicitHTTPReadiness/an_explicit_none_on_a_probeable_service_keeps_the_implicit_HTTP_probe 2026-10-22T08:24:29.790916888Z === RUN TestSingleWriterRequiredAndImplicitHTTPReadiness/an_explicit_none_on_a_stateful_L4_service_stays_unchecked 2026-10-22T08:24:29.790943676Z === RUN TestSingleWriterRequiredAndImplicitHTTPReadiness/writable_bind_is_single-writer 2026-10-22T08:24:29.790968907Z === RUN TestSingleWriterRequiredAndImplicitHTTPReadiness/read-only_bind_is_also_single-writer 2026-10-22T08:24:29.791125525Z === RUN TestSingleWriterRequiredAndImplicitHTTPReadiness/volume_is_single-writer 2026-10-22T08:24:29.791149115Z --- PASS: TestSingleWriterRequiredAndImplicitHTTPReadiness (0.00s) 2026-10-22T08:24:29.791200164Z --- PASS: TestSingleWriterRequiredAndImplicitHTTPReadiness/stateless_public_HTTP_service_keeps_the_implicit_HTTP_probe (0.00s) 2026-10-22T08:24:29.791251765Z --- PASS: TestSingleWriterRequiredAndImplicitHTTPReadiness/undeclared_probe_is_not_guessed_for_internal,_mixed,_or_L4_services (0.00s) 2026-10-22T08:24:29.791316133Z --- PASS: TestSingleWriterRequiredAndImplicitHTTPReadiness/undeclared_probe_on_a_stateless_single_TCP_service_is_the_implicit_TCP_probe (0.00s) 2026-10-22T08:24:29.791386121Z --- PASS: TestSingleWriterRequiredAndImplicitHTTPReadiness/no_implicit_TCP_probe_on_stateful,_multi-port,_mixed,_or_UDP_services (0.00s) 2026-10-22T08:24:29.79143778Z --- PASS: TestSingleWriterRequiredAndImplicitHTTPReadiness/declared_probes_are_never_replaced_by_the_implicit_HTTP_probe (0.00s) 2026-10-22T08:24:29.791507656Z --- PASS: TestSingleWriterRequiredAndImplicitHTTPReadiness/an_explicit_none_on_a_probeable_service_keeps_the_implicit_HTTP_probe (0.00s) 2026-10-22T08:24:29.791561433Z --- PASS: TestSingleWriterRequiredAndImplicitHTTPReadiness/an_explicit_none_on_a_stateful_L4_service_stays_unchecked (0.00s) 2026-10-22T08:24:29.791600384Z --- PASS: TestSingleWriterRequiredAndImplicitHTTPReadiness/writable_bind_is_single-writer (0.00s) 2026-10-22T08:24:29.791640604Z --- PASS: TestSingleWriterRequiredAndImplicitHTTPReadiness/read-only_bind_is_also_single-writer (0.00s) 2026-10-22T08:24:29.791671675Z --- PASS: TestSingleWriterRequiredAndImplicitHTTPReadiness/volume_is_single-writer (0.00s) 2026-10-22T08:24:29.791683265Z === RUN TestRestartOneService_RevokedBindFailsWithoutRuntimeMutation 2026-10-22T08:24:29.791695769Z --- PASS: TestRestartOneService_RevokedBindFailsWithoutRuntimeMutation (0.00s) 2026-10-22T08:24:29.791716226Z === RUN TestEnsureServiceRunning_RevokedBindFailsWithoutRuntimeMutation 2026-10-22T08:24:29.791726828Z --- PASS: TestEnsureServiceRunning_RevokedBindFailsWithoutRuntimeMutation (0.00s) 2026-10-22T08:24:29.791735808Z === RUN TestResolveServiceCapabilities 2026-10-22T08:24:29.791742825Z === RUN TestResolveServiceCapabilities/exact_resolution 2026-10-22T08:24:29.791750818Z === RUN TestResolveServiceCapabilities/empty_is_nil 2026-10-22T08:24:29.791756929Z === RUN TestResolveServiceCapabilities/unknown_policy 2026-10-22T08:24:29.791765167Z === RUN TestResolveServiceCapabilities/revoked_policy 2026-10-22T08:24:29.791772717Z === RUN TestResolveServiceCapabilities/refused_omits_capability_names 2026-10-22T08:24:29.791789822Z --- PASS: TestResolveServiceCapabilities (0.00s) 2026-10-22T08:24:29.791804411Z --- PASS: TestResolveServiceCapabilities/exact_resolution (0.00s) 2026-10-22T08:24:29.791817596Z --- PASS: TestResolveServiceCapabilities/empty_is_nil (0.00s) 2026-10-22T08:24:29.791837387Z --- PASS: TestResolveServiceCapabilities/unknown_policy (0.00s) 2026-10-22T08:24:29.791851576Z --- PASS: TestResolveServiceCapabilities/revoked_policy (0.00s) 2026-10-22T08:24:29.791867267Z --- PASS: TestResolveServiceCapabilities/refused_omits_capability_names (0.00s) 2026-10-22T08:24:29.791873666Z === RUN TestCreateAndStart_RefusesRevokedCapabilityBeforeRuntimeMutation 2026-10-22T08:24:29.791882314Z --- PASS: TestCreateAndStart_RefusesRevokedCapabilityBeforeRuntimeMutation (0.00s) 2026-10-22T08:24:29.791890169Z === RUN TestCreateAndStart_PassesResolvedCapabilitiesToRuntime 2026-10-22T08:24:29.791896824Z --- PASS: TestCreateAndStart_PassesResolvedCapabilitiesToRuntime (0.00s) 2026-10-22T08:24:29.791908566Z === RUN TestRestartOneService_RevokedCapabilityFailsWithoutRuntimeMutation 2026-10-22T08:24:29.791927413Z --- PASS: TestRestartOneService_RevokedCapabilityFailsWithoutRuntimeMutation (0.00s) 2026-10-22T08:24:29.791937963Z === RUN TestEnsureServiceRunning_RevokedCapabilityFailsWithoutRuntimeMutation 2026-10-22T08:24:29.791945075Z --- PASS: TestEnsureServiceRunning_RevokedCapabilityFailsWithoutRuntimeMutation (0.00s) 2026-10-22T08:24:29.791951286Z === RUN TestUnchangedRefusal_CapabilitiesNeverKeepRunningContainer 2026-10-22T08:24:29.791957812Z --- PASS: TestUnchangedRefusal_CapabilitiesNeverKeepRunningContainer (0.00s) 2026-10-22T08:24:29.791969275Z === RUN TestVerifyReusableCapabilities 2026-10-22T08:24:29.791979928Z === RUN TestVerifyReusableCapabilities/narrowed_policy_refuses_a_container_holding_a_revoked_capability 2026-10-22T08:24:29.792154661Z === RUN TestVerifyReusableCapabilities/CAP__prefixed_engine_names_compare_equal 2026-10-22T08:24:29.792177672Z === RUN TestVerifyReusableCapabilities/fewer_capabilities_than_authorized_is_allowed 2026-10-22T08:24:29.792189862Z === RUN TestVerifyReusableCapabilities/prefixed_revoked_capability_is_still_caught 2026-10-22T08:24:29.792200112Z === RUN TestVerifyReusableCapabilities/uninspectable_container_fails_closed 2026-10-22T08:24:29.792229253Z === RUN TestVerifyReusableCapabilities/missing_container_is_left_to_the_rebuild_path 2026-10-22T08:24:29.792240539Z === RUN TestVerifyReusableCapabilities/service_without_capabilities_never_inspects 2026-10-22T08:24:29.792249808Z --- PASS: TestVerifyReusableCapabilities (0.00s) 2026-10-22T08:24:29.792275146Z --- PASS: TestVerifyReusableCapabilities/narrowed_policy_refuses_a_container_holding_a_revoked_capability (0.00s) 2026-10-22T08:24:29.792297215Z --- PASS: TestVerifyReusableCapabilities/CAP__prefixed_engine_names_compare_equal (0.00s) 2026-10-22T08:24:29.792320914Z --- PASS: TestVerifyReusableCapabilities/fewer_capabilities_than_authorized_is_allowed (0.00s) 2026-10-22T08:24:29.792346404Z --- PASS: TestVerifyReusableCapabilities/prefixed_revoked_capability_is_still_caught (0.00s) 2026-10-22T08:24:29.792367453Z --- PASS: TestVerifyReusableCapabilities/uninspectable_container_fails_closed (0.00s) 2026-10-22T08:24:29.792388384Z --- PASS: TestVerifyReusableCapabilities/missing_container_is_left_to_the_rebuild_path (0.00s) 2026-10-22T08:24:29.792411793Z --- PASS: TestVerifyReusableCapabilities/service_without_capabilities_never_inspects (0.00s) 2026-10-22T08:24:29.792424553Z === RUN TestRestartOneService_NarrowedCapabilityPolicyRefusesInPlaceRestart 2026-10-22T08:24:29.792436546Z --- PASS: TestRestartOneService_NarrowedCapabilityPolicyRefusesInPlaceRestart (0.00s) 2026-10-22T08:24:29.792446497Z === RUN TestEnsureServiceRunning_NarrowedCapabilityPolicyRefusesStart 2026-10-22T08:24:29.7924565Z --- PASS: TestEnsureServiceRunning_NarrowedCapabilityPolicyRefusesStart (0.00s) 2026-10-22T08:24:29.792467405Z === RUN TestStartRecovered_NarrowedCapabilityPolicyRefusesStart 2026-10-22T08:24:29.792479357Z --- PASS: TestStartRecovered_NarrowedCapabilityPolicyRefusesStart (0.00s) 2026-10-22T08:24:29.792490891Z === RUN TestRecoverHealth_NarrowedCapabilityPolicyRefusesRestart 2026-10-22T08:24:29.792502241Z --- PASS: TestRecoverHealth_NarrowedCapabilityPolicyRefusesRestart (0.00s) 2026-10-22T08:24:29.792511159Z === RUN TestAppCoordinator_SerializesOneApp 2026-10-22T08:24:29.792520311Z --- PASS: TestAppCoordinator_SerializesOneApp (0.05s) 2026-10-22T08:24:29.792530942Z === RUN TestAppCoordinator_AllowsParallelApps 2026-10-22T08:24:29.792539892Z --- PASS: TestAppCoordinator_AllowsParallelApps (0.00s) 2026-10-22T08:24:29.792548892Z === RUN TestAppCoordinator_TryAcquireSkipsBusyApp 2026-10-22T08:24:29.792557855Z --- PASS: TestAppCoordinator_TryAcquireSkipsBusyApp (0.00s) 2026-10-22T08:24:29.792568409Z === RUN TestAppCoordinator_HonorsCancellation 2026-10-22T08:24:29.792577679Z --- PASS: TestAppCoordinator_HonorsCancellation (0.00s) 2026-10-22T08:24:29.792586678Z === RUN TestAppCoordinator_ConcurrentUseIsRaceFree 2026-10-22T08:24:29.792595699Z --- PASS: TestAppCoordinator_ConcurrentUseIsRaceFree (0.00s) 2026-10-22T08:24:29.792611918Z === RUN TestRecoveryBackoff_ThreeAttemptsThenEscalatingDelays 2026-10-22T08:24:29.792622702Z --- PASS: TestRecoveryBackoff_ThreeAttemptsThenEscalatingDelays (0.00s) 2026-10-22T08:24:29.792632723Z === RUN TestRecoveryBackoff_EscalationSurvivesWithoutStableObservation 2026-10-22T08:24:29.792646278Z --- PASS: TestRecoveryBackoff_EscalationSurvivesWithoutStableObservation (0.00s) 2026-10-22T08:24:29.792656341Z === RUN TestRecoveryBackoff_StableObservationResetsHistory 2026-10-22T08:24:29.792665981Z --- PASS: TestRecoveryBackoff_StableObservationResetsHistory (0.00s) 2026-10-22T08:24:29.792677359Z === RUN TestRecoveryBackoff_FailureClearsStability 2026-10-22T08:24:29.792689528Z --- PASS: TestRecoveryBackoff_FailureClearsStability (0.00s) 2026-10-22T08:24:29.792700837Z === RUN TestRecoveryBackoff_IsGenerationScoped 2026-10-22T08:24:29.792720359Z --- PASS: TestRecoveryBackoff_IsGenerationScoped (0.00s) 2026-10-22T08:24:29.792733183Z === RUN TestRecoveryBackoff_ForgetDropsHistory 2026-10-22T08:24:29.792744648Z --- PASS: TestRecoveryBackoff_ForgetDropsHistory (0.00s) 2026-10-22T08:24:29.792764434Z === RUN TestRecoveryBackoff_UnhealthyStreak 2026-10-22T08:24:29.79277639Z --- PASS: TestRecoveryBackoff_UnhealthyStreak (0.00s) 2026-10-22T08:24:29.792787848Z === RUN TestPublicationInhibition_MarkAndClear 2026-10-22T08:24:29.792801335Z --- PASS: TestPublicationInhibition_MarkAndClear (0.00s) 2026-10-22T08:24:29.79281417Z === RUN TestExecutionTracker_DetectsNewExecution 2026-10-22T08:24:29.792825709Z --- PASS: TestExecutionTracker_DetectsNewExecution (0.00s) 2026-10-22T08:24:29.792836203Z === RUN TestRecoveryBackoff_PendingAttemptIsCharged 2026-10-22T08:24:29.792845627Z --- PASS: TestRecoveryBackoff_PendingAttemptIsCharged (0.00s) 2026-10-22T08:24:29.792856488Z === RUN TestRecoveryBackoff_UnstableObservationInvalidatesTheWindow 2026-10-22T08:24:29.792865975Z --- PASS: TestRecoveryBackoff_UnstableObservationInvalidatesTheWindow (0.00s) 2026-10-22T08:24:29.792877681Z === RUN TestRecoveryBackoff_StableObservationNeverCreatesHistory 2026-10-22T08:24:29.792887203Z --- PASS: TestRecoveryBackoff_StableObservationNeverCreatesHistory (0.00s) 2026-10-22T08:24:29.792896134Z === RUN TestPublicationInhibition_RetainsActiveServices 2026-10-22T08:24:29.792910152Z --- PASS: TestPublicationInhibition_RetainsActiveServices (0.00s) 2026-10-22T08:24:29.79292153Z === RUN TestWaitLogReady_RejectsAnUnknownExecutionBoundary 2026-10-22T08:24:29.792931134Z --- PASS: TestWaitLogReady_RejectsAnUnknownExecutionBoundary (0.00s) 2026-10-22T08:24:29.79294044Z === RUN TestWaitLogReady_UsesTheExactContainerAndExecution 2026-10-22T08:24:29.792957057Z --- PASS: TestWaitLogReady_UsesTheExactContainerAndExecution (0.00s) 2026-10-22T08:24:29.792967054Z === RUN TestWaitLogReady_StreamFailureIsActionable 2026-10-22T08:24:29.792977029Z --- PASS: TestWaitLogReady_StreamFailureIsActionable (0.00s) 2026-10-22T08:24:29.792991694Z === RUN TestResolveServiceDevices_ExactResolution 2026-10-22T08:24:29.793001765Z --- PASS: TestResolveServiceDevices_ExactResolution (0.00s) 2026-10-22T08:24:29.793010787Z === RUN TestResolveServiceDevices_EmptyIsNil 2026-10-22T08:24:29.793019567Z --- PASS: TestResolveServiceDevices_EmptyIsNil (0.00s) 2026-10-22T08:24:29.793034089Z === RUN TestResolveServiceDevices_UnknownAndRevokedPolicy 2026-10-22T08:24:29.793044314Z === RUN TestResolveServiceDevices_UnknownAndRevokedPolicy/unknown_policy 2026-10-22T08:24:29.793053549Z === RUN TestResolveServiceDevices_UnknownAndRevokedPolicy/revoked_policy 2026-10-22T08:24:29.793066457Z === RUN TestResolveServiceDevices_UnknownAndRevokedPolicy/refused_policy_omits_device_IDs 2026-10-22T08:24:29.793078707Z --- PASS: TestResolveServiceDevices_UnknownAndRevokedPolicy (0.00s) 2026-10-22T08:24:29.793098677Z --- PASS: TestResolveServiceDevices_UnknownAndRevokedPolicy/unknown_policy (0.00s) 2026-10-22T08:24:29.793118159Z --- PASS: TestResolveServiceDevices_UnknownAndRevokedPolicy/revoked_policy (0.00s) 2026-10-22T08:24:29.793142598Z --- PASS: TestResolveServiceDevices_UnknownAndRevokedPolicy/refused_policy_omits_device_IDs (0.00s) 2026-10-22T08:24:29.793152676Z === RUN TestCreateAndStart_RefusesRevokedDeviceBeforeRuntimeMutation 2026-10-22T08:24:29.793159189Z --- PASS: TestCreateAndStart_RefusesRevokedDeviceBeforeRuntimeMutation (0.00s) 2026-10-22T08:24:29.793167108Z === RUN TestCreateAndStart_PassesResolvedCDIIDsToRuntime 2026-10-22T08:24:29.793177583Z --- PASS: TestCreateAndStart_PassesResolvedCDIIDsToRuntime (0.00s) 2026-10-22T08:24:29.793183988Z === RUN TestCreateContainer_DeviceBearingRuntimeErrorIsRedactedNotDevicePolicy 2026-10-22T08:24:29.793199499Z --- PASS: TestCreateContainer_DeviceBearingRuntimeErrorIsRedactedNotDevicePolicy (0.00s) 2026-10-22T08:24:29.793211578Z === RUN TestRestartOneService_RevokedDeviceFailsWithoutRuntimeMutation 2026-10-22T08:24:29.793218293Z --- PASS: TestRestartOneService_RevokedDeviceFailsWithoutRuntimeMutation (0.00s) 2026-10-22T08:24:29.793227685Z === RUN TestEnsureServiceRunning_RevokedDeviceFailsWithoutRuntimeMutation 2026-10-22T08:24:29.793234104Z --- PASS: TestEnsureServiceRunning_RevokedDeviceFailsWithoutRuntimeMutation (0.00s) 2026-10-22T08:24:29.793245645Z === RUN TestPreflightServices_ProbesEngineOncePerRevision 2026-10-22T08:24:29.79325661Z --- PASS: TestPreflightServices_ProbesEngineOncePerRevision (0.00s) 2026-10-22T08:24:29.793265878Z === RUN TestCreateContainer_RuntimeUnsupportedSurvivesRedaction 2026-10-22T08:24:29.793277053Z --- PASS: TestCreateContainer_RuntimeUnsupportedSurvivesRedaction (0.00s) 2026-10-22T08:24:29.79329137Z === RUN TestSanitizedEngineProbeError 2026-10-22T08:24:29.793302159Z === RUN TestSanitizedEngineProbeError/cancellation_is_preserved_and_reported_as_cancellation 2026-10-22T08:24:29.793308368Z === RUN TestSanitizedEngineProbeError/deadline_is_preserved 2026-10-22T08:24:29.793317818Z === RUN TestSanitizedEngineProbeError/other_causes_collapse_to_the_unsupported_sentinel 2026-10-22T08:24:29.79332955Z --- PASS: TestSanitizedEngineProbeError (0.00s) 2026-10-22T08:24:29.793354059Z --- PASS: TestSanitizedEngineProbeError/cancellation_is_preserved_and_reported_as_cancellation (0.00s) 2026-10-22T08:24:29.793382266Z --- PASS: TestSanitizedEngineProbeError/deadline_is_preserved (0.00s) 2026-10-22T08:24:29.793430139Z --- PASS: TestSanitizedEngineProbeError/other_causes_collapse_to_the_unsupported_sentinel (0.00s) 2026-10-22T08:24:29.793449157Z === RUN TestStripImageTag 2026-10-22T08:24:29.793466478Z --- PASS: TestStripImageTag (0.00s) 2026-10-22T08:24:29.793481009Z === RUN TestValidateImageSource_RejectsPrivateRegistryDigest 2026-10-22T08:24:29.793491035Z --- PASS: TestValidateImageSource_RejectsPrivateRegistryDigest (0.00s) 2026-10-22T08:24:29.793500306Z === RUN TestPullImage_RechecksRegistryPolicyImmediatelyBeforePull 2026-10-22T08:24:29.793509561Z --- PASS: TestPullImage_RechecksRegistryPolicyImmediatelyBeforePull (0.00s) 2026-10-22T08:24:29.793522134Z === RUN TestValidateImageSource_RequireDigestAppliesToAllRegistries 2026-10-22T08:24:29.79353501Z --- PASS: TestValidateImageSource_RequireDigestAppliesToAllRegistries (0.00s) 2026-10-22T08:24:29.793544685Z === RUN TestPreflightImage_RejectsMalformedResolvedDigestBeforePull 2026-10-22T08:24:29.793559042Z --- PASS: TestPreflightImage_RejectsMalformedResolvedDigestBeforePull (0.00s) 2026-10-22T08:24:29.793569976Z === RUN TestBackendPorts_InternalHTTPIsNeverPublished 2026-10-22T08:24:29.793579006Z --- PASS: TestBackendPorts_InternalHTTPIsNeverPublished (0.00s) 2026-10-22T08:24:29.793589907Z === RUN TestInternalProbeShape 2026-10-22T08:24:29.79360452Z --- PASS: TestInternalProbeShape (0.00s) 2026-10-22T08:24:29.793614057Z === RUN TestWaitInternalReady_RetriesUntilReady 2026-10-22T08:24:29.793623426Z --- PASS: TestWaitInternalReady_RetriesUntilReady (1.00s) 2026-10-22T08:24:29.793630503Z === RUN TestWaitInternalReady_InfrastructureErrorFailsImmediately 2026-10-22T08:24:29.793646869Z --- PASS: TestWaitInternalReady_InfrastructureErrorFailsImmediately (0.00s) 2026-10-22T08:24:29.793657461Z === RUN TestRunInternalProbeAttempt_CleanupFailureIsNeverSuppressed 2026-10-22T08:24:29.79366862Z --- PASS: TestRunInternalProbeAttempt_CleanupFailureIsNeverSuppressed (0.01s) 2026-10-22T08:24:29.793679164Z === RUN TestWaitInternalReady_CombinedCleanupAndStaleErrorAbortsAfterOneAttempt 2026-10-22T08:24:29.793689678Z --- PASS: TestWaitInternalReady_CombinedCleanupAndStaleErrorAbortsAfterOneAttempt (0.00s) 2026-10-22T08:24:29.793698275Z === RUN TestWaitInternalReady_Timeout 2026-10-22T08:24:29.793707181Z --- PASS: TestWaitInternalReady_Timeout (0.50s) 2026-10-22T08:24:29.793718286Z === RUN TestWaitInternalReady_Cancellation 2026-10-22T08:24:29.793727822Z --- PASS: TestWaitInternalReady_Cancellation (0.00s) 2026-10-22T08:24:29.79373764Z === RUN TestWaitInternalReady_MissingExecutionStart 2026-10-22T08:24:29.793755624Z --- PASS: TestWaitInternalReady_MissingExecutionStart (0.00s) 2026-10-22T08:24:29.793766155Z === RUN TestWaitInternalReady_StaleGenerationIsRetried 2026-10-22T08:24:29.793792947Z --- PASS: TestWaitInternalReady_StaleGenerationIsRetried (0.50s) 2026-10-22T08:24:29.793804155Z === RUN TestWaitInternalReady_StaleGenerationUntilDeadlineTimesOut 2026-10-22T08:24:29.79381354Z --- PASS: TestWaitInternalReady_StaleGenerationUntilDeadlineTimesOut (0.50s) 2026-10-22T08:24:29.793824986Z === RUN TestWaitInternalReady_VanishedCandidateKeepsPolling 2026-10-22T08:24:29.793831283Z --- PASS: TestWaitInternalReady_VanishedCandidateKeepsPolling (1.00s) 2026-10-22T08:24:29.793840133Z === RUN TestReadinessContainerPort_PrefersSinglePublicHTTP 2026-10-22T08:24:29.793855974Z --- PASS: TestReadinessContainerPort_PrefersSinglePublicHTTP (0.00s) 2026-10-22T08:24:29.79386636Z === RUN TestWaitServiceReady_InternalUsesNetworkPath 2026-10-22T08:24:29.793875839Z --- PASS: TestWaitServiceReady_InternalUsesNetworkPath (0.00s) 2026-10-22T08:24:29.793884827Z === RUN TestWaitServiceReady_PublicKeepsLoopback 2026-10-22T08:24:29.793897313Z --- PASS: TestWaitServiceReady_PublicKeepsLoopback (0.00s) 2026-10-22T08:24:29.793910988Z === RUN TestReclaimPrivateNetworks_RemovesOwnedEmptyIncarnationNetwork 2026-10-22T08:24:29.793925696Z --- PASS: TestReclaimPrivateNetworks_RemovesOwnedEmptyIncarnationNetwork (0.00s) 2026-10-22T08:24:29.793940886Z === RUN TestReclaimPrivateNetworks_KeepsSharedNetworks 2026-10-22T08:24:29.793953791Z --- PASS: TestReclaimPrivateNetworks_KeepsSharedNetworks (0.00s) 2026-10-22T08:24:29.793965667Z === RUN TestReclaimPrivateNetworks_RefusesForeignOwnership 2026-10-22T08:24:29.793986396Z --- PASS: TestReclaimPrivateNetworks_RefusesForeignOwnership (0.00s) 2026-10-22T08:24:29.793999945Z === RUN TestReclaimPrivateNetworks_RefusesAttachedNetwork 2026-10-22T08:24:29.794011996Z --- PASS: TestReclaimPrivateNetworks_RefusesAttachedNetwork (0.00s) 2026-10-22T08:24:29.794024075Z === RUN TestReclaimPrivateNetworks_NeverTouchesAnotherIncarnationName 2026-10-22T08:24:29.79403822Z --- PASS: TestReclaimPrivateNetworks_NeverTouchesAnotherIncarnationName (0.00s) 2026-10-22T08:24:29.79405018Z === RUN TestReclaimPrivateNetworks_RuntimeFailureIsRetryable 2026-10-22T08:24:29.79406108Z --- PASS: TestReclaimPrivateNetworks_RuntimeFailureIsRetryable (0.00s) 2026-10-22T08:24:29.794073502Z === RUN TestCreateAndStart_UsesIncarnationPrivateNetworkAndLimits 2026-10-22T08:24:29.794085637Z --- PASS: TestCreateAndStart_UsesIncarnationPrivateNetworkAndLimits (0.00s) 2026-10-22T08:24:29.794097449Z === RUN TestCreateAndStart_ReusesOwnedNetwork 2026-10-22T08:24:29.794109755Z --- PASS: TestCreateAndStart_ReusesOwnedNetwork (0.00s) 2026-10-22T08:24:29.794121349Z === RUN TestCreateAndStart_RefusesForeignNetwork 2026-10-22T08:24:29.79413281Z --- PASS: TestCreateAndStart_RefusesForeignNetwork (0.00s) 2026-10-22T08:24:29.794146209Z === RUN TestCreateAndStart_JoinsDeclaredSharedNetworks 2026-10-22T08:24:29.79415629Z --- PASS: TestCreateAndStart_JoinsDeclaredSharedNetworks (0.00s) 2026-10-22T08:24:29.794166125Z === RUN TestCreateAndStart_RoutesDeclaredReadOnlyVolumeToReadOnlyMount 2026-10-22T08:24:29.794175876Z --- PASS: TestCreateAndStart_RoutesDeclaredReadOnlyVolumeToReadOnlyMount (0.00s) 2026-10-22T08:24:29.794187415Z === RUN TestCreateAndStart_DistinctAppsNeverShareNetwork 2026-10-22T08:24:29.794196927Z --- PASS: TestCreateAndStart_DistinctAppsNeverShareNetwork (0.00s) 2026-10-22T08:24:29.794207543Z === RUN TestTCPProbeOnce_RelayAcceptThenCloseIsNotReady 2026-10-22T08:24:29.794216763Z --- PASS: TestTCPProbeOnce_RelayAcceptThenCloseIsNotReady (0.00s) 2026-10-22T08:24:29.794232503Z === RUN TestTCPProbeOnce_RelayResetIsNotReady 2026-10-22T08:24:29.794245069Z --- PASS: TestTCPProbeOnce_RelayResetIsNotReady (0.00s) 2026-10-22T08:24:29.79426151Z === RUN TestTCPProbeOnce_SilentListenerIsReady 2026-10-22T08:24:29.794278537Z --- PASS: TestTCPProbeOnce_SilentListenerIsReady (0.50s) 2026-10-22T08:24:29.794291546Z === RUN TestTCPProbeOnce_BannerIsReadyImmediately 2026-10-22T08:24:29.794320656Z --- PASS: TestTCPProbeOnce_BannerIsReadyImmediately (0.00s) 2026-10-22T08:24:29.794339257Z === RUN TestTCPProbeOnce_NoListenerFails 2026-10-22T08:24:29.794351788Z --- PASS: TestTCPProbeOnce_NoListenerFails (0.00s) 2026-10-22T08:24:29.794368042Z === RUN TestTCPProbeOnce_CanceledContextWinsOverData 2026-10-22T08:24:29.794380305Z --- PASS: TestTCPProbeOnce_CanceledContextWinsOverData (0.00s) 2026-10-22T08:24:29.794391047Z === RUN TestWaitTCPReady_SettleAfterBudgetIsNotReady 2026-10-22T08:24:29.794408965Z --- PASS: TestWaitTCPReady_SettleAfterBudgetIsNotReady (0.20s) 2026-10-22T08:24:29.794421231Z === RUN TestWaitTCPReady_CallerCancelIsReturned 2026-10-22T08:24:29.794434754Z --- PASS: TestWaitTCPReady_CallerCancelIsReturned (0.00s) 2026-10-22T08:24:29.794446654Z === RUN TestTCPProbeOnce_ContextCancelStopsTheSettleWait 2026-10-22T08:24:29.794459521Z --- PASS: TestTCPProbeOnce_ContextCancelStopsTheSettleWait (0.05s) 2026-10-22T08:24:29.794472779Z === RUN TestVerifyRunningService_NotReadyWithdrawsAndClearsBinds 2026-10-22T08:24:29.794487409Z --- PASS: TestVerifyRunningService_NotReadyWithdrawsAndClearsBinds (1.00s) 2026-10-22T08:24:29.79449693Z === RUN TestVerifyRunningService_ReadyPublishesBinds 2026-10-22T08:24:29.794505839Z --- PASS: TestVerifyRunningService_ReadyPublishesBinds (0.00s) 2026-10-22T08:24:29.794514277Z === RUN TestRedactDiagnostics_RemovesSecretValues 2026-10-22T08:24:29.794523873Z --- PASS: TestRedactDiagnostics_RemovesSecretValues (0.00s) 2026-10-22T08:24:29.794529621Z === RUN TestRedactDiagnostics_DropsWhenSecretUnreadable 2026-10-22T08:24:29.794535047Z --- PASS: TestRedactDiagnostics_DropsWhenSecretUnreadable (0.00s) 2026-10-22T08:24:29.794543446Z === RUN TestStopService_StopFailureSurfaces 2026-10-22T08:24:29.794552217Z --- PASS: TestStopService_StopFailureSurfaces (0.00s) 2026-10-22T08:24:29.794563639Z === RUN TestStopService_WithdrawFailureBlocksStop 2026-10-22T08:24:29.794569431Z --- PASS: TestStopService_WithdrawFailureBlocksStop (0.00s) 2026-10-22T08:24:29.794579103Z === RUN TestWaitHTTPReady_ProbeURLKeepsLoopbackAuthority 2026-10-22T08:24:29.79458921Z --- PASS: TestWaitHTTPReady_ProbeURLKeepsLoopbackAuthority (0.00s) 2026-10-22T08:24:29.794607106Z === RUN TestWaitHTTPReady_SendsContainerPortAsHostAuthority 2026-10-22T08:24:29.794621051Z --- PASS: TestWaitHTTPReady_SendsContainerPortAsHostAuthority (0.00s) 2026-10-22T08:24:29.794632059Z === RUN TestWaitHTTPReady_HangingProbeRespectsDeadline 2026-10-22T08:24:29.794641471Z --- PASS: TestWaitHTTPReady_HangingProbeRespectsDeadline (1.00s) 2026-10-22T08:24:29.794705802Z === RUN TestReconcileRemovedServices_WithdrawsStopsAndClears 2026-10-22T08:24:29.79472156Z --- PASS: TestReconcileRemovedServices_WithdrawsStopsAndClears (0.00s) 2026-10-22T08:24:29.794731106Z === RUN TestReconcileRemovedServices_SaveFailureKeepsInhibition 2026-10-22T08:24:29.794740795Z --- PASS: TestReconcileRemovedServices_SaveFailureKeepsInhibition (0.00s) 2026-10-22T08:24:29.79475028Z === RUN TestReconcileRemovedServices_WithdrawFailureAbortsBeforeStop 2026-10-22T08:24:29.794761919Z --- PASS: TestReconcileRemovedServices_WithdrawFailureAbortsBeforeStop (0.00s) 2026-10-22T08:24:29.794771762Z === RUN TestReconcileRemovedServices_NoopWhenAllActiveServicesRemain 2026-10-22T08:24:29.794781437Z --- PASS: TestReconcileRemovedServices_NoopWhenAllActiveServicesRemain (0.00s) 2026-10-22T08:24:29.794793357Z === RUN TestRetireContainer_ForceSkipsTheGracePeriod 2026-10-22T08:24:29.794806096Z --- PASS: TestRetireContainer_ForceSkipsTheGracePeriod (0.00s) 2026-10-22T08:24:29.794815771Z === RUN TestRetireContainer_UnconfirmedRemovalKeepsClaims 2026-10-22T08:24:29.794825992Z --- PASS: TestRetireContainer_UnconfirmedRemovalKeepsClaims (0.00s) 2026-10-22T08:24:29.79483537Z === RUN TestRetireContainer_ZeroGraceUsesTheAppDefault 2026-10-22T08:24:29.794852811Z --- PASS: TestRetireContainer_ZeroGraceUsesTheAppDefault (0.00s) 2026-10-22T08:24:29.794864144Z === RUN TestCreateContainer_GuardRefuses 2026-10-22T08:24:29.794873186Z === RUN TestCreateContainer_GuardRefuses/host_network 2026-10-22T08:24:29.794883822Z === RUN TestCreateContainer_GuardRefuses/protected_bind 2026-10-22T08:24:29.794896925Z --- PASS: TestCreateContainer_GuardRefuses (0.00s) 2026-10-22T08:24:29.794914864Z --- PASS: TestCreateContainer_GuardRefuses/host_network (0.00s) 2026-10-22T08:24:29.794933044Z --- PASS: TestCreateContainer_GuardRefuses/protected_bind (0.00s) 2026-10-22T08:24:29.794948594Z === RUN TestCreateWithSecretFiles_GuardAllowsOwnSecretBind 2026-10-22T08:24:29.79495837Z --- PASS: TestCreateWithSecretFiles_GuardAllowsOwnSecretBind (0.00s) 2026-10-22T08:24:29.79496767Z === RUN TestResolveServiceBinds_GuardRefusesProtectedSource 2026-10-22T08:24:29.794978951Z --- PASS: TestResolveServiceBinds_GuardRefusesProtectedSource (0.00s) 2026-10-22T08:24:29.794994009Z === RUN TestCreateAndStart_GuardRefusesBeforeRuntimeMutation 2026-10-22T08:24:29.795006254Z --- PASS: TestCreateAndStart_GuardRefusesBeforeRuntimeMutation (0.00s) 2026-10-22T08:24:29.795015263Z === RUN TestServiceEnv_SplitsFileSecrets 2026-10-22T08:24:29.795026365Z --- PASS: TestServiceEnv_SplitsFileSecrets (0.00s) 2026-10-22T08:24:29.795037874Z === RUN TestServiceEnv_FileKeyOverlapFails 2026-10-22T08:24:29.79504668Z --- PASS: TestServiceEnv_FileKeyOverlapFails (0.00s) 2026-10-22T08:24:29.795055203Z === RUN TestCreateWithSecretFiles_MountsReadOnlyFiles 2026-10-22T08:24:29.795066016Z --- PASS: TestCreateWithSecretFiles_MountsReadOnlyFiles (0.00s) 2026-10-22T08:24:29.795080908Z === RUN TestCreateWithSecretFiles_CreateFailureRemovesFiles 2026-10-22T08:24:29.795091165Z --- PASS: TestCreateWithSecretFiles_CreateFailureRemovesFiles (0.00s) 2026-10-22T08:24:29.795100542Z === RUN TestCreateWithSecretFiles_WriteFailureSkipsCreate 2026-10-22T08:24:29.795110842Z --- PASS: TestCreateWithSecretFiles_WriteFailureSkipsCreate (0.00s) 2026-10-22T08:24:29.79512568Z === RUN TestCreateWithSecretFiles_CleanupFailureKeepsCreateError 2026-10-22T08:24:29.79513795Z --- PASS: TestCreateWithSecretFiles_CleanupFailureKeepsCreateError (0.00s) 2026-10-22T08:24:29.795146902Z === RUN TestCreateWithSecretFiles_NilStoreRefuses 2026-10-22T08:24:29.795157048Z --- PASS: TestCreateWithSecretFiles_NilStoreRefuses (0.00s) 2026-10-22T08:24:29.795167248Z === RUN TestCheckSecrets_FileSecretsNeedStore 2026-10-22T08:24:29.795176324Z --- PASS: TestCheckSecrets_FileSecretsNeedStore (0.00s) 2026-10-22T08:24:29.795184996Z === RUN TestEnvCurrent_ComparesSecretFiles 2026-10-22T08:24:29.795197259Z === RUN TestEnvCurrent_ComparesSecretFiles/same_content_kept 2026-10-22T08:24:29.795213213Z === RUN TestEnvCurrent_ComparesSecretFiles/changed_content_replaced 2026-10-22T08:24:29.795225005Z === RUN TestEnvCurrent_ComparesSecretFiles/read_error_replaced 2026-10-22T08:24:29.795234271Z === RUN TestEnvCurrent_ComparesSecretFiles/nil_store_replaced 2026-10-22T08:24:29.795242896Z --- PASS: TestEnvCurrent_ComparesSecretFiles (0.00s) 2026-10-22T08:24:29.795264198Z --- PASS: TestEnvCurrent_ComparesSecretFiles/same_content_kept (0.00s) 2026-10-22T08:24:29.795282904Z --- PASS: TestEnvCurrent_ComparesSecretFiles/changed_content_replaced (0.00s) 2026-10-22T08:24:29.795306201Z --- PASS: TestEnvCurrent_ComparesSecretFiles/read_error_replaced (0.00s) 2026-10-22T08:24:29.795329227Z --- PASS: TestEnvCurrent_ComparesSecretFiles/nil_store_replaced (0.00s) 2026-10-22T08:24:29.795338439Z === RUN TestRedactDiagnostics_RedactsFileSecrets 2026-10-22T08:24:29.795347219Z --- PASS: TestRedactDiagnostics_RedactsFileSecrets (0.00s) 2026-10-22T08:24:29.795360446Z === RUN TestSweepSecretFiles 2026-10-22T08:24:29.79537242Z === RUN TestSweepSecretFiles/app_scoped 2026-10-22T08:24:29.795381303Z === RUN TestSweepSecretFiles/all_apps 2026-10-22T08:24:29.795391314Z === RUN TestSweepSecretFiles/no_sets_skips_runtime 2026-10-22T08:24:29.795404139Z === RUN TestSweepSecretFiles/nil_store 2026-10-22T08:24:29.795415493Z === RUN TestSweepSecretFiles/runtime_list_error_removes_nothing 2026-10-22T08:24:29.795425385Z === RUN TestSweepSecretFiles/partial_remove_failure_continues 2026-10-22T08:24:29.795434907Z --- PASS: TestSweepSecretFiles (0.00s) 2026-10-22T08:24:29.795451078Z --- PASS: TestSweepSecretFiles/app_scoped (0.00s) 2026-10-22T08:24:29.795465317Z --- PASS: TestSweepSecretFiles/all_apps (0.00s) 2026-10-22T08:24:29.795484119Z --- PASS: TestSweepSecretFiles/no_sets_skips_runtime (0.00s) 2026-10-22T08:24:29.795498833Z --- PASS: TestSweepSecretFiles/nil_store (0.00s) 2026-10-22T08:24:29.795518132Z --- PASS: TestSweepSecretFiles/runtime_list_error_removes_nothing (0.00s) 2026-10-22T08:24:29.795537581Z --- PASS: TestSweepSecretFiles/partial_remove_failure_continues (0.00s) 2026-10-22T08:24:29.795549035Z === RUN TestRetireContainer_SweepsSecretFiles 2026-10-22T08:24:29.795560017Z === RUN TestRetireContainer_SweepsSecretFiles/gone_sweeps 2026-10-22T08:24:29.795572037Z === RUN TestRetireContainer_SweepsSecretFiles/sweep_failure_is_a_fixed_warning 2026-10-22T08:24:29.795585824Z === RUN TestRetireContainer_SweepsSecretFiles/not_gone_does_not_sweep 2026-10-22T08:24:29.795597348Z --- PASS: TestRetireContainer_SweepsSecretFiles (0.00s) 2026-10-22T08:24:29.795620358Z --- PASS: TestRetireContainer_SweepsSecretFiles/gone_sweeps (0.00s) 2026-10-22T08:24:29.795644901Z --- PASS: TestRetireContainer_SweepsSecretFiles/sweep_failure_is_a_fixed_warning (0.00s) 2026-10-22T08:24:29.795668717Z --- PASS: TestRetireContainer_SweepsSecretFiles/not_gone_does_not_sweep (0.00s) 2026-10-22T08:24:29.795679848Z === RUN TestServiceEnv_ServiceEnvOverridesAppEnv 2026-10-22T08:24:29.795692815Z --- PASS: TestServiceEnv_ServiceEnvOverridesAppEnv (0.00s) 2026-10-22T08:24:29.795703482Z === RUN TestServiceEnv_ServiceEnvSecretCollisionFails 2026-10-22T08:24:29.795712422Z --- PASS: TestServiceEnv_ServiceEnvSecretCollisionFails (0.00s) 2026-10-22T08:24:29.795723935Z === RUN TestDeploy_CandidateIsJournaledBeforeItStarts 2026-10-22T08:24:29.795733264Z --- PASS: TestDeploy_CandidateIsJournaledBeforeItStarts (0.02s) 2026-10-22T08:24:29.79574222Z === RUN TestBootRecovery_RemovesUnpublishedCandidateAndKeepsServingGeneration 2026-10-22T08:24:29.795755044Z --- PASS: TestBootRecovery_RemovesUnpublishedCandidateAndKeepsServingGeneration (0.01s) 2026-10-22T08:24:29.795768529Z === RUN TestDeploy_ReconcilesInterruptedPredecessorBeforeCreatingAReplacement 2026-10-22T08:24:29.795778658Z --- PASS: TestDeploy_ReconcilesInterruptedPredecessorBeforeCreatingAReplacement (0.02s) 2026-10-22T08:24:29.79578803Z === RUN TestBootRecovery_RemovesCandidateOfAnInterruptedFirstDeployment 2026-10-22T08:24:29.795803554Z --- PASS: TestBootRecovery_RemovesCandidateOfAnInterruptedFirstDeployment (0.00s) 2026-10-22T08:24:29.795813913Z === RUN TestRestart_FailedRebuildClearsTheInhibitionOfTheMissingContainer 2026-10-22T08:24:29.795823122Z --- PASS: TestRestart_FailedRebuildClearsTheInhibitionOfTheMissingContainer (1.01s) 2026-10-22T08:24:29.795833578Z === RUN TestBootRecovery_RetriesLeftoverOfATerminalFailedOperation 2026-10-22T08:24:29.79585083Z 2026-10-22T08:24:20Z INF deployment: stopped intent enforced on a revived container app=blog container=c-old service=web 2026-10-22T08:24:29.795862231Z --- PASS: TestBootRecovery_RetriesLeftoverOfATerminalFailedOperation (0.01s) 2026-10-22T08:24:29.795873541Z === RUN TestBootRecovery_InterruptionAfterTheLastStepIsASuccess 2026-10-22T08:24:29.795888501Z --- PASS: TestBootRecovery_InterruptionAfterTheLastStepIsASuccess (0.00s) 2026-10-22T08:24:29.795900467Z === RUN TestBootRecovery_FailsClosedWhenCandidateCannotBeRemoved 2026-10-22T08:24:29.795910075Z --- PASS: TestBootRecovery_FailsClosedWhenCandidateCannotBeRemoved (0.02s) 2026-10-22T08:24:29.795922402Z === RUN TestBootRecovery_ClearsReplacementInhibitionAndRebuildsFromActive 2026-10-22T08:24:29.795935029Z --- PASS: TestBootRecovery_ClearsReplacementInhibitionAndRebuildsFromActive (0.01s) 2026-10-22T08:24:29.795946305Z === RUN TestRestart_RebuildsMissingActiveContainer 2026-10-22T08:24:29.795960208Z --- PASS: TestRestart_RebuildsMissingActiveContainer (0.01s) 2026-10-22T08:24:29.795975289Z === RUN TestDeploy_PreflightFailureReturnsJournaledOperation 2026-10-22T08:24:29.795985962Z --- PASS: TestDeploy_PreflightFailureReturnsJournaledOperation (0.00s) 2026-10-22T08:24:29.79599482Z === RUN TestDeploy_Mockery_PullsPinnedImageWithRegistryAuth 2026-10-22T08:24:29.796003484Z --- PASS: TestDeploy_Mockery_PullsPinnedImageWithRegistryAuth (0.00s) 2026-10-22T08:24:29.796014289Z === RUN TestDeploy_Mockery_HTTPSuccessRecordsLoopbackBinds 2026-10-22T08:24:29.796025448Z --- PASS: TestDeploy_Mockery_HTTPSuccessRecordsLoopbackBinds (0.00s) 2026-10-22T08:24:29.796035267Z === RUN TestDeploy_Mockery_HTTPOverlapPublishesBeforeRetiringOldGeneration 2026-10-22T08:24:29.79604854Z --- PASS: TestDeploy_Mockery_HTTPOverlapPublishesBeforeRetiringOldGeneration (0.00s) 2026-10-22T08:24:29.796060998Z === RUN TestDeploy_Mockery_HTTPSequentialWhenServiceHasVolume 2026-10-22T08:24:29.796072794Z --- PASS: TestDeploy_Mockery_HTTPSequentialWhenServiceHasVolume (0.00s) 2026-10-22T08:24:29.796086033Z === RUN TestDeploy_Mockery_HTTPReadinessFailureKeepsOldGenerationServing 2026-10-22T08:24:29.796098439Z --- PASS: TestDeploy_Mockery_HTTPReadinessFailureKeepsOldGenerationServing (1.00s) 2026-10-22T08:24:29.796107695Z === RUN TestDeploy_Mockery_VolumeReplacementMarksUnsafe 2026-10-22T08:24:29.796116675Z --- PASS: TestDeploy_Mockery_VolumeReplacementMarksUnsafe (0.01s) 2026-10-22T08:24:29.796125547Z === RUN TestDeploy_Mockery_MixedTCPUDPPublishesBothLoopbacks 2026-10-22T08:24:29.796140474Z --- PASS: TestDeploy_Mockery_MixedTCPUDPPublishesBothLoopbacks (0.00s) 2026-10-22T08:24:29.796150165Z === RUN TestDeploy_Mockery_InjectsAppEnvAndSecrets 2026-10-22T08:24:29.796159241Z --- PASS: TestDeploy_Mockery_InjectsAppEnvAndSecrets (0.01s) 2026-10-22T08:24:29.79617059Z === RUN TestStart_RunningContainerRefreshesShiftedBinds 2026-10-22T08:24:29.796185198Z --- PASS: TestStart_RunningContainerRefreshesShiftedBinds (0.00s) 2026-10-22T08:24:29.796198965Z === RUN TestStart_BindVerificationFailureFailsClosed 2026-10-22T08:24:29.796210671Z --- PASS: TestStart_BindVerificationFailureFailsClosed (0.00s) 2026-10-22T08:24:29.796222291Z === RUN TestRestart_MixedServiceRefreshesBothProtocols 2026-10-22T08:24:29.796231603Z --- PASS: TestRestart_MixedServiceRefreshesBothProtocols (0.00s) 2026-10-22T08:24:29.796240985Z === RUN TestDeploy_SkipsServiceAlreadyRunningTheSameImage 2026-10-22T08:24:29.796251578Z --- PASS: TestDeploy_SkipsServiceAlreadyRunningTheSameImage (0.01s) 2026-10-22T08:24:29.796266312Z === RUN TestDeploy_KeepsContainerOnBackupOnlyChange 2026-10-22T08:24:29.79627837Z --- PASS: TestDeploy_KeepsContainerOnBackupOnlyChange (0.01s) 2026-10-22T08:24:29.796290058Z === RUN TestDeploy_ReplacesWhenRuntimeSettingsChangeAlongsideBackup 2026-10-22T08:24:29.796303197Z --- PASS: TestDeploy_ReplacesWhenRuntimeSettingsChangeAlongsideBackup (0.01s) 2026-10-22T08:24:29.796318828Z === RUN TestDeploy_ReplacesSameDigestWhenTheServiceIsNotServing 2026-10-22T08:24:29.796330447Z === RUN TestDeploy_ReplacesSameDigestWhenTheServiceIsNotServing/withdrawn_binds 2026-10-22T08:24:29.796341673Z === RUN TestDeploy_ReplacesSameDigestWhenTheServiceIsNotServing/recovery_inhibited 2026-10-22T08:24:29.796351284Z === RUN TestDeploy_ReplacesSameDigestWhenTheServiceIsNotServing/app_env_changed 2026-10-22T08:24:29.796360251Z --- PASS: TestDeploy_ReplacesSameDigestWhenTheServiceIsNotServing (0.04s) 2026-10-22T08:24:29.796384363Z --- PASS: TestDeploy_ReplacesSameDigestWhenTheServiceIsNotServing/withdrawn_binds (0.01s) 2026-10-22T08:24:29.796409156Z --- PASS: TestDeploy_ReplacesSameDigestWhenTheServiceIsNotServing/recovery_inhibited (0.01s) 2026-10-22T08:24:29.796433125Z --- PASS: TestDeploy_ReplacesSameDigestWhenTheServiceIsNotServing/app_env_changed (0.01s) 2026-10-22T08:24:29.796445287Z === RUN TestDeploy_ReplacesWhenTheRunningContainerIsNotRunning 2026-10-22T08:24:29.796465324Z --- PASS: TestDeploy_ReplacesWhenTheRunningContainerIsNotRunning (0.01s) 2026-10-22T08:24:29.796481515Z === RUN TestDeploy_ReplacesWhenTheDigestChanged 2026-10-22T08:24:29.796499309Z --- PASS: TestDeploy_ReplacesWhenTheDigestChanged (0.01s) 2026-10-22T08:24:29.796516409Z === RUN TestDeploy_RecreatesWhenASecretValueChanged 2026-10-22T08:24:29.79652951Z === RUN TestDeploy_RecreatesWhenASecretValueChanged/secret_changed 2026-10-22T08:24:29.796543724Z === RUN TestDeploy_RecreatesWhenASecretValueChanged/secret_current 2026-10-22T08:24:29.796557562Z --- PASS: TestDeploy_RecreatesWhenASecretValueChanged (0.02s) 2026-10-22T08:24:29.796577109Z --- PASS: TestDeploy_RecreatesWhenASecretValueChanged/secret_changed (0.01s) 2026-10-22T08:24:29.796599934Z --- PASS: TestDeploy_RecreatesWhenASecretValueChanged/secret_current (0.01s) 2026-10-22T08:24:29.79661344Z === RUN TestRemove_ConcurrentSameKeyExecutesOnce 2026-10-22T08:24:29.796622916Z --- PASS: TestRemove_ConcurrentSameKeyExecutesOnce (0.01s) 2026-10-22T08:24:29.796631595Z === RUN TestRemove_UnknownAppCreatesNoState 2026-10-22T08:24:29.796640297Z --- PASS: TestRemove_UnknownAppCreatesNoState (0.00s) 2026-10-22T08:24:29.796653021Z === RUN TestDeploy_ClaimPersistsRequestIdentity 2026-10-22T08:24:29.796663892Z --- PASS: TestDeploy_ClaimPersistsRequestIdentity (0.00s) 2026-10-22T08:24:29.796673232Z === RUN TestDeploy_TerminalKeyReplayExecutesNoEffect 2026-10-22T08:24:29.796683664Z --- PASS: TestDeploy_TerminalKeyReplayExecutesNoEffect (0.00s) 2026-10-22T08:24:29.796696527Z === RUN TestDeploy_FailedTerminalKeyReplayConflicts 2026-10-22T08:24:29.796705847Z === RUN TestDeploy_FailedTerminalKeyReplayConflicts/failed 2026-10-22T08:24:29.796716908Z === RUN TestDeploy_FailedTerminalKeyReplayConflicts/partial 2026-10-22T08:24:29.796727822Z --- PASS: TestDeploy_FailedTerminalKeyReplayConflicts (0.00s) 2026-10-22T08:24:29.796748052Z --- PASS: TestDeploy_FailedTerminalKeyReplayConflicts/failed (0.00s) 2026-10-22T08:24:29.796767186Z --- PASS: TestDeploy_FailedTerminalKeyReplayConflicts/partial (0.00s) 2026-10-22T08:24:29.796779664Z === RUN TestDeploy_PendingKeyReplayConflicts 2026-10-22T08:24:29.796788695Z --- PASS: TestDeploy_PendingKeyReplayConflicts (0.00s) 2026-10-22T08:24:29.796799293Z === RUN TestDeploy_MismatchedKeyIsRejected 2026-10-22T08:24:29.796808367Z --- PASS: TestDeploy_MismatchedKeyIsRejected (0.00s) 2026-10-22T08:24:29.796823669Z === RUN TestDeploy_UnknownAppIsNotFound 2026-10-22T08:24:29.796835773Z --- PASS: TestDeploy_UnknownAppIsNotFound (0.00s) 2026-10-22T08:24:29.796847177Z === RUN TestDeploy_UnknownExplicitRevisionOnKnownApp 2026-10-22T08:24:29.796860954Z --- PASS: TestDeploy_UnknownExplicitRevisionOnKnownApp (0.00s) 2026-10-22T08:24:29.796870725Z === RUN TestRemove_TerminalKeyReplaySkipsRuntime 2026-10-22T08:24:29.796879926Z --- PASS: TestRemove_TerminalKeyReplaySkipsRuntime (0.00s) 2026-10-22T08:24:29.796891183Z === RUN TestStop_PendingKeyReplayConflicts 2026-10-22T08:24:29.796900648Z --- PASS: TestStop_PendingKeyReplayConflicts (0.00s) 2026-10-22T08:24:29.796908874Z === RUN TestRestart_ClaimCarriesServiceIdentity 2026-10-22T08:24:29.796917413Z --- PASS: TestRestart_ClaimCarriesServiceIdentity (0.00s) 2026-10-22T08:24:29.796928286Z === RUN TestDeploy_NonOverlapEligibleServicesKeepSequentialOrder 2026-10-22T08:24:29.796937962Z === RUN TestDeploy_NonOverlapEligibleServicesKeepSequentialOrder/volume 2026-10-22T08:24:29.796947625Z === RUN TestDeploy_NonOverlapEligibleServicesKeepSequentialOrder/bind 2026-10-22T08:24:29.796970202Z === RUN TestDeploy_NonOverlapEligibleServicesKeepSequentialOrder/device 2026-10-22T08:24:29.796980304Z === RUN TestDeploy_NonOverlapEligibleServicesKeepSequentialOrder/udp 2026-10-22T08:24:29.796991601Z --- PASS: TestDeploy_NonOverlapEligibleServicesKeepSequentialOrder (0.02s) 2026-10-22T08:24:29.797020311Z --- PASS: TestDeploy_NonOverlapEligibleServicesKeepSequentialOrder/volume (0.00s) 2026-10-22T08:24:29.797044537Z --- PASS: TestDeploy_NonOverlapEligibleServicesKeepSequentialOrder/bind (0.01s) 2026-10-22T08:24:29.797078529Z --- PASS: TestDeploy_NonOverlapEligibleServicesKeepSequentialOrder/device (0.00s) 2026-10-22T08:24:29.797110845Z --- PASS: TestDeploy_NonOverlapEligibleServicesKeepSequentialOrder/udp (0.00s) 2026-10-22T08:24:29.797121781Z === RUN TestDeploy_OverlapPublicationFailureKeepsOldContainer 2026-10-22T08:24:29.797131443Z --- PASS: TestDeploy_OverlapPublicationFailureKeepsOldContainer (0.00s) 2026-10-22T08:24:29.797140912Z === RUN TestDeploy_OverlapSwitchIsNotErasedByAPendingWithdrawal 2026-10-22T08:24:29.797150071Z --- PASS: TestDeploy_OverlapSwitchIsNotErasedByAPendingWithdrawal (0.01s) 2026-10-22T08:24:29.797161596Z === RUN TestDeploy_OverlapRetirementSurvivesANewerOperation 2026-10-22T08:24:29.79717136Z --- PASS: TestDeploy_OverlapRetirementSurvivesANewerOperation (0.01s) 2026-10-22T08:24:29.797180848Z === RUN TestReconcileRunning_RetiresSupersededOnlyAfterSuccessorIsVerified 2026-10-22T08:24:29.797190689Z --- PASS: TestReconcileRunning_RetiresSupersededOnlyAfterSuccessorIsVerified (0.01s) 2026-10-22T08:24:29.797203268Z === RUN TestReconcileRunning_NeverRetiresAPendingContainerThatActiveNamesAgain 2026-10-22T08:24:29.797213563Z --- PASS: TestReconcileRunning_NeverRetiresAPendingContainerThatActiveNamesAgain (0.01s) 2026-10-22T08:24:29.79722336Z === RUN TestBootRecovery_DoesNotRepublishUnverifiedBindsOfAPublishedCandidate 2026-10-22T08:24:29.797242876Z --- PASS: TestBootRecovery_DoesNotRepublishUnverifiedBindsOfAPublishedCandidate (0.01s) 2026-10-22T08:24:29.797253701Z === RUN TestDeploy_OverlapTrafficFailureIsRecoveredByThePeriodicPass 2026-10-22T08:24:29.797263583Z --- PASS: TestDeploy_OverlapTrafficFailureIsRecoveredByThePeriodicPass (0.01s) 2026-10-22T08:24:29.797279997Z === RUN TestDeploy_PredecessorWithOwnedResourcesNeverOverlaps 2026-10-22T08:24:29.79729182Z === RUN TestDeploy_PredecessorWithOwnedResourcesNeverOverlaps/volume 2026-10-22T08:24:29.797301756Z === RUN TestDeploy_PredecessorWithOwnedResourcesNeverOverlaps/udp 2026-10-22T08:24:29.797315909Z --- PASS: TestDeploy_PredecessorWithOwnedResourcesNeverOverlaps (0.01s) 2026-10-22T08:24:29.79733967Z --- PASS: TestDeploy_PredecessorWithOwnedResourcesNeverOverlaps/volume (0.00s) 2026-10-22T08:24:29.797363884Z --- PASS: TestDeploy_PredecessorWithOwnedResourcesNeverOverlaps/udp (0.00s) 2026-10-22T08:24:29.797380062Z === RUN TestReconcileRunning_DoesNotRetireWhenSuccessorIsNotVerifiedByThisPass 2026-10-22T08:24:29.797392181Z --- PASS: TestReconcileRunning_DoesNotRetireWhenSuccessorIsNotVerifiedByThisPass (0.01s) 2026-10-22T08:24:29.79740443Z === RUN TestReconcileRunning_DoesNotRetireWhenSuccessorRestartedAfterVerification 2026-10-22T08:24:29.79742012Z --- PASS: TestReconcileRunning_DoesNotRetireWhenSuccessorRestartedAfterVerification (0.00s) 2026-10-22T08:24:29.797433728Z === RUN TestReconcileRunning_RetiresStackedPredecessors 2026-10-22T08:24:29.797445881Z --- PASS: TestReconcileRunning_RetiresStackedPredecessors (0.01s) 2026-10-22T08:24:29.797455678Z === RUN TestReconcileRunning_KeepsMarkerUntilBackendClaimsAreReleased 2026-10-22T08:24:29.797465186Z --- PASS: TestReconcileRunning_KeepsMarkerUntilBackendClaimsAreReleased (0.01s) 2026-10-22T08:24:29.797475707Z === RUN TestStop_RetiresPendingSupersededContainers 2026-10-22T08:24:29.797486473Z --- PASS: TestStop_RetiresPendingSupersededContainers (0.01s) 2026-10-22T08:24:29.797496241Z === RUN TestRemove_FailsAndKeepsStateWhenAPendingPredecessorCannotBeRetired 2026-10-22T08:24:29.797505854Z --- PASS: TestRemove_FailsAndKeepsStateWhenAPendingPredecessorCannotBeRetired (0.00s) 2026-10-22T08:24:29.797515815Z === RUN TestStop_PendingRetirementLoadFailureIsAJournaledFailure 2026-10-22T08:24:29.797531547Z --- PASS: TestStop_PendingRetirementLoadFailureIsAJournaledFailure (0.01s) 2026-10-22T08:24:29.797541201Z === RUN TestReconcileRunning_DoesNotWithdrawAFreshlyDeployedGeneration 2026-10-22T08:24:29.797559313Z --- PASS: TestReconcileRunning_DoesNotWithdrawAFreshlyDeployedGeneration (0.01s) 2026-10-22T08:24:29.797569688Z === RUN TestReconcileRunning_TreatsARestartedExecutionAfterDeployAsFresh 2026-10-22T08:24:29.797583574Z --- PASS: TestReconcileRunning_TreatsARestartedExecutionAfterDeployAsFresh (0.01s) 2026-10-22T08:24:29.7975957Z === RUN TestReconcileRunning_DoesNotWithdrawARestartedGeneration 2026-10-22T08:24:29.797609901Z --- PASS: TestReconcileRunning_DoesNotWithdrawARestartedGeneration (0.01s) 2026-10-22T08:24:29.797622279Z === RUN TestReconcileRunning_RestoresARebuiltGenerationWhoseTrafficWasRejected 2026-10-22T08:24:29.79763648Z --- PASS: TestReconcileRunning_RestoresARebuiltGenerationWhoseTrafficWasRejected (0.01s) 2026-10-22T08:24:29.797645956Z === RUN TestDeploy_MissingRequiredSecretFailsClosed 2026-10-22T08:24:29.797654797Z --- PASS: TestDeploy_MissingRequiredSecretFailsClosed (0.00s) 2026-10-22T08:24:29.797666663Z === RUN TestDeploy_EnvSecretCollisionFailsClosed 2026-10-22T08:24:29.797682533Z --- PASS: TestDeploy_EnvSecretCollisionFailsClosed (0.00s) 2026-10-22T08:24:29.797692592Z === RUN TestDeploy_UnmanagedImageVolumeRejected 2026-10-22T08:24:29.797701499Z --- PASS: TestDeploy_UnmanagedImageVolumeRejected (0.00s) 2026-10-22T08:24:29.797713482Z === RUN TestDeploy_RefusesUnownedExistingVolume 2026-10-22T08:24:29.797725407Z --- PASS: TestDeploy_RefusesUnownedExistingVolume (0.00s) 2026-10-22T08:24:29.797738366Z === RUN TestStartDeploy_TargetedDiffPolicy 2026-10-22T08:24:29.797750021Z === RUN TestStartDeploy_TargetedDiffPolicy/requested_service_image 2026-10-22T08:24:29.797763207Z === RUN TestStartDeploy_TargetedDiffPolicy/identical_spec 2026-10-22T08:24:29.797775119Z === RUN TestStartDeploy_TargetedDiffPolicy/other_service 2026-10-22T08:24:29.79778825Z === RUN TestStartDeploy_TargetedDiffPolicy/environment 2026-10-22T08:24:29.797801222Z === RUN TestStartDeploy_TargetedDiffPolicy/network 2026-10-22T08:24:29.797810875Z === RUN TestStartDeploy_TargetedDiffPolicy/service_added 2026-10-22T08:24:29.797819842Z === RUN TestStartDeploy_TargetedDiffPolicy/service_removed 2026-10-22T08:24:29.797832649Z --- PASS: TestStartDeploy_TargetedDiffPolicy (0.01s) 2026-10-22T08:24:29.797856023Z --- PASS: TestStartDeploy_TargetedDiffPolicy/requested_service_image (0.00s) 2026-10-22T08:24:29.797876264Z --- PASS: TestStartDeploy_TargetedDiffPolicy/identical_spec (0.00s) 2026-10-22T08:24:29.797898379Z --- PASS: TestStartDeploy_TargetedDiffPolicy/other_service (0.00s) 2026-10-22T08:24:29.797921711Z --- PASS: TestStartDeploy_TargetedDiffPolicy/environment (0.00s) 2026-10-22T08:24:29.797943232Z --- PASS: TestStartDeploy_TargetedDiffPolicy/network (0.00s) 2026-10-22T08:24:29.79796673Z --- PASS: TestStartDeploy_TargetedDiffPolicy/service_added (0.00s) 2026-10-22T08:24:29.797988649Z --- PASS: TestStartDeploy_TargetedDiffPolicy/service_removed (0.00s) 2026-10-22T08:24:29.798014505Z === RUN TestDeploy_HoldsSharedGCBarrierAcrossResourceSelection 2026-10-22T08:24:29.798035083Z --- PASS: TestDeploy_HoldsSharedGCBarrierAcrossResourceSelection (0.00s) 2026-10-22T08:24:29.798047633Z === RUN TestDeploy_UnsupportedEngineFailsBeforeMutation 2026-10-22T08:24:29.798060004Z --- PASS: TestDeploy_UnsupportedEngineFailsBeforeMutation (0.00s) 2026-10-22T08:24:29.798084246Z === RUN TestStartDeploy_TargetedImageChangeWithUnchangedAppEnv 2026-10-22T08:24:29.798096772Z --- PASS: TestStartDeploy_TargetedImageChangeWithUnchangedAppEnv (0.00s) 2026-10-22T08:24:29.798108812Z === RUN TestReconcileRunning_EmptyActiveTakesNoRuntimeAction 2026-10-22T08:24:29.798122881Z --- PASS: TestReconcileRunning_EmptyActiveTakesNoRuntimeAction (0.00s) 2026-10-22T08:24:29.798135182Z === RUN TestReconcileRunning_StoppedIntentStopsRevivedExactIDWithoutRemoval 2026-10-22T08:24:29.798152449Z 2026-10-22T08:24:21Z INF deployment: stopped intent enforced on a revived container app=blog container=c-1 service=web 2026-10-22T08:24:29.798166026Z --- PASS: TestReconcileRunning_StoppedIntentStopsRevivedExactIDWithoutRemoval (0.00s) 2026-10-22T08:24:29.798175893Z === RUN TestReconcileRunning_AbstainsWhenStoppedContainerAlreadyDown 2026-10-22T08:24:29.798185485Z --- PASS: TestReconcileRunning_AbstainsWhenStoppedContainerAlreadyDown (0.00s) 2026-10-22T08:24:29.798194983Z === RUN TestReconcileRunning_StartsExitedExactIDThenVerifiesAndPublishes 2026-10-22T08:24:29.798209126Z 2026-10-22T08:24:21Z INF deployment: recovery started the exact active container app=blog container=c-1 service=web 2026-10-22T08:24:29.79822086Z --- PASS: TestReconcileRunning_StartsExitedExactIDThenVerifiesAndPublishes (0.00s) 2026-10-22T08:24:29.798230568Z === RUN TestReconcileRunning_ConfirmedMissingWithdrawsWithoutReconstruction 2026-10-22T08:24:29.798243786Z --- PASS: TestReconcileRunning_ConfirmedMissingWithdrawsWithoutReconstruction (0.00s) 2026-10-22T08:24:29.798256725Z === RUN TestReconcileRunning_TransientInspectErrorTakesNoAction 2026-10-22T08:24:29.798267724Z --- PASS: TestReconcileRunning_TransientInspectErrorTakesNoAction (0.00s) 2026-10-22T08:24:29.798277438Z === RUN TestReconcileRunning_InhibitedGenerationIsNeverStarted 2026-10-22T08:24:29.798288301Z --- PASS: TestReconcileRunning_InhibitedGenerationIsNeverStarted (0.00s) 2026-10-22T08:24:29.798300424Z === RUN TestReconcileRunning_NativeRestartRaceIsNotCharged 2026-10-22T08:24:29.79831571Z 2026-10-22T08:24:21Z INF deployment: native restart won the race, no recovery charged app=blog container=c-1 service=web 2026-10-22T08:24:29.798327855Z --- PASS: TestReconcileRunning_NativeRestartRaceIsNotCharged (0.00s) 2026-10-22T08:24:29.79834188Z === RUN TestReconcileRunning_NativeRestartRefreshesChangedBinds 2026-10-22T08:24:29.798352618Z --- PASS: TestReconcileRunning_NativeRestartRefreshesChangedBinds (0.00s) 2026-10-22T08:24:29.798361871Z === RUN TestReconcileRunning_RestartingObservesAndRetries 2026-10-22T08:24:29.798372573Z --- PASS: TestReconcileRunning_RestartingObservesAndRetries (0.00s) 2026-10-22T08:24:29.798387871Z === RUN TestReconcileRunning_PausedRefusesNonDestructiveRecovery 2026-10-22T08:24:29.798398191Z --- PASS: TestReconcileRunning_PausedRefusesNonDestructiveRecovery (0.00s) 2026-10-22T08:24:29.798408161Z === RUN TestReconcileRunning_OneFailureDoesNotBlockLaterApps 2026-10-22T08:24:29.798419113Z --- PASS: TestReconcileRunning_OneFailureDoesNotBlockLaterApps (0.00s) 2026-10-22T08:24:29.798431533Z === RUN TestReconcileRunning_WithdrawalFailureBlocksRuntimeRecovery 2026-10-22T08:24:29.798443396Z --- PASS: TestReconcileRunning_WithdrawalFailureBlocksRuntimeRecovery (0.00s) 2026-10-22T08:24:29.798453025Z === RUN TestReconcileRunning_RetriesWithdrawalBeforeAnyLaterPublication 2026-10-22T08:24:29.798470468Z 2026-10-22T08:24:21Z INF deployment: recovery started the exact active container app=blog container=c-1 service=web 2026-10-22T08:24:29.798486506Z --- PASS: TestReconcileRunning_RetriesWithdrawalBeforeAnyLaterPublication (0.00s) 2026-10-22T08:24:29.798500949Z === RUN TestReconcileRunning_RebuildFailureDoesNotRestartHealthyContainer 2026-10-22T08:24:29.798513652Z --- PASS: TestReconcileRunning_RebuildFailureDoesNotRestartHealthyContainer (0.00s) 2026-10-22T08:24:29.798523905Z === RUN TestReconcileRunning_UnhealthyRestartsOnlyAfterConsecutiveObservations 2026-10-22T08:24:29.798536483Z 2026-10-22T08:24:21Z INF deployment: restarted an unhealthy container app=blog container=c-1 service=web 2026-10-22T08:24:29.798551632Z --- PASS: TestReconcileRunning_UnhealthyRestartsOnlyAfterConsecutiveObservations (0.00s) 2026-10-22T08:24:29.798562737Z === RUN TestReconcileRunning_HealthStartingWaits 2026-10-22T08:24:29.798572824Z --- PASS: TestReconcileRunning_HealthStartingWaits (0.00s) 2026-10-22T08:24:29.798582434Z === RUN TestReconcileRunning_NoHealthcheckNeverRestartsOnReadiness 2026-10-22T08:24:29.798595833Z --- PASS: TestReconcileRunning_NoHealthcheckNeverRestartsOnReadiness (1.00s) 2026-10-22T08:24:29.798605998Z === RUN TestReconcileRunning_StaleGenerationIsNeverPublished 2026-10-22T08:24:29.798617159Z --- PASS: TestReconcileRunning_StaleGenerationIsNeverPublished (0.00s) 2026-10-22T08:24:29.798634057Z === RUN TestReconcileRunning_LogReadinessUsesTheExactExecutionScope 2026-10-22T08:24:29.798661728Z 2026-10-22T08:24:22Z INF deployment: recovery started the exact active container app=blog container=c-1 service=web 2026-10-22T08:24:29.798680677Z --- PASS: TestReconcileRunning_LogReadinessUsesTheExactExecutionScope (0.00s) 2026-10-22T08:24:29.798691133Z === RUN TestReconcileRunning_OldExecutionMarkerCannotSatisfyReadiness 2026-10-22T08:24:29.798703977Z 2026-10-22T08:24:22Z INF deployment: recovery started the exact active container app=blog container=c-1 service=web 2026-10-22T08:24:29.798727391Z --- PASS: TestReconcileRunning_OldExecutionMarkerCannotSatisfyReadiness (0.02s) 2026-10-22T08:24:29.798742829Z === RUN TestReconcileRunning_CrashLoopIsChargedEvenWhenStartsSucceed 2026-10-22T08:24:29.798760083Z 2026-10-22T08:24:22Z INF deployment: recovery started the exact active container app=blog container=c-1 service=web 2026-10-22T08:24:29.798777479Z 2026-10-22T08:24:22Z INF deployment: recovery started the exact active container app=blog container=c-1 service=web 2026-10-22T08:24:29.798794867Z 2026-10-22T08:24:22Z INF deployment: recovery started the exact active container app=blog container=c-1 service=web 2026-10-22T08:24:29.798805165Z --- PASS: TestReconcileRunning_CrashLoopIsChargedEvenWhenStartsSucceed (0.00s) 2026-10-22T08:24:29.798815938Z === RUN TestReconcileRunning_StaleExecutionAfterReadinessNeverPublishes 2026-10-22T08:24:29.798836047Z 2026-10-22T08:24:22Z INF deployment: recovery started the exact active container app=blog container=c-1 service=web 2026-10-22T08:24:29.798847828Z --- PASS: TestReconcileRunning_StaleExecutionAfterReadinessNeverPublishes (0.00s) 2026-10-22T08:24:29.798857266Z === RUN TestReconcileRunning_FailedReadinessPersistsNoBinds 2026-10-22T08:24:29.798874929Z 2026-10-22T08:24:22Z INF deployment: recovery started the exact active container app=blog container=c-1 service=web 2026-10-22T08:24:29.798885437Z --- PASS: TestReconcileRunning_FailedReadinessPersistsNoBinds (1.00s) 2026-10-22T08:24:29.798894955Z === RUN TestRecoveryInhibition_RefusesInhibitedGenerationAfterReboot 2026-10-22T08:24:29.79891111Z --- PASS: TestRecoveryInhibition_RefusesInhibitedGenerationAfterReboot (0.00s) 2026-10-22T08:24:29.798922759Z === RUN TestVolumeReplacementFailureLeavesOldGenerationInhibited 2026-10-22T08:24:29.798934523Z --- PASS: TestVolumeReplacementFailureLeavesOldGenerationInhibited (0.01s) 2026-10-22T08:24:29.79894682Z === RUN TestRemove_InhibitsBeforeRuntimeWithdrawal 2026-10-22T08:24:29.798956604Z --- PASS: TestRemove_InhibitsBeforeRuntimeWithdrawal (0.00s) 2026-10-22T08:24:29.798965483Z === RUN TestBootStoppedConvergenceStopsRevivedContainer 2026-10-22T08:24:29.798977507Z 2026-10-22T08:24:23Z INF deployment: stopped intent enforced on a revived container app=blog container=c-1 service=web 2026-10-22T08:24:29.798988464Z --- PASS: TestBootStoppedConvergenceStopsRevivedContainer (0.00s) 2026-10-22T08:24:29.79899756Z === RUN TestBootRefusesInhibitedGenerationBeforeAnyRuntimeEffect 2026-10-22T08:24:29.799011303Z --- PASS: TestBootRefusesInhibitedGenerationBeforeAnyRuntimeEffect (0.00s) 2026-10-22T08:24:29.799026993Z === RUN TestWorkloadMutationsSerializePerApp 2026-10-22T08:24:29.799039742Z --- PASS: TestWorkloadMutationsSerializePerApp (0.00s) 2026-10-22T08:24:29.7990514Z === RUN TestRestart_RefusesInhibitedGeneration 2026-10-22T08:24:29.79906635Z --- PASS: TestRestart_RefusesInhibitedGeneration (0.00s) 2026-10-22T08:24:29.799078189Z === RUN TestRemove_KeepsStateWhenAContainerCannotBeRemoved 2026-10-22T08:24:29.799090093Z --- PASS: TestRemove_KeepsStateWhenAContainerCannotBeRemoved (0.00s) 2026-10-22T08:24:29.799105578Z === RUN TestRemovalOfMissingContainerIsIdempotent 2026-10-22T08:24:29.799119605Z --- PASS: TestRemovalOfMissingContainerIsIdempotent (0.00s) 2026-10-22T08:24:29.799131592Z === RUN TestRestart_InPlaceWithdrawsRestartsVerifiesAndRepublishes 2026-10-22T08:24:29.799143981Z --- PASS: TestRestart_InPlaceWithdrawsRestartsVerifiesAndRepublishes (0.00s) 2026-10-22T08:24:29.799156643Z === RUN TestRestart_ReadinessFailureLeavesTheRestartedContainerWithdrawn 2026-10-22T08:24:29.79917067Z --- PASS: TestRestart_ReadinessFailureLeavesTheRestartedContainerWithdrawn (1.00s) 2026-10-22T08:24:29.799182507Z === RUN TestLifecycleVerbsPassTheEffectiveStopGrace 2026-10-22T08:24:29.799194177Z === RUN TestLifecycleVerbsPassTheEffectiveStopGrace/stop 2026-10-22T08:24:29.799203525Z === RUN TestLifecycleVerbsPassTheEffectiveStopGrace/restart 2026-10-22T08:24:29.79921577Z === RUN TestLifecycleVerbsPassTheEffectiveStopGrace/remove 2026-10-22T08:24:29.799229044Z --- PASS: TestLifecycleVerbsPassTheEffectiveStopGrace (0.00s) 2026-10-22T08:24:29.799250574Z --- PASS: TestLifecycleVerbsPassTheEffectiveStopGrace/stop (0.00s) 2026-10-22T08:24:29.799273181Z --- PASS: TestLifecycleVerbsPassTheEffectiveStopGrace/restart (0.00s) 2026-10-22T08:24:29.799310006Z --- PASS: TestLifecycleVerbsPassTheEffectiveStopGrace/remove (0.00s) 2026-10-22T08:24:29.799329368Z === RUN TestStopWithoutDeclaredGraceUsesTheAppDefault 2026-10-22T08:24:29.799341072Z --- PASS: TestStopWithoutDeclaredGraceUsesTheAppDefault (0.00s) 2026-10-22T08:24:29.799350456Z === RUN TestRemove_FailedRetirementKeepsClaimsAndActiveState 2026-10-22T08:24:29.799362245Z --- PASS: TestRemove_FailedRetirementKeepsClaimsAndActiveState (0.00s) 2026-10-22T08:24:29.79937209Z === RUN TestDeploy_RetirementFailureBlocksReplacement 2026-10-22T08:24:29.799381669Z --- PASS: TestDeploy_RetirementFailureBlocksReplacement (0.00s) 2026-10-22T08:24:29.799391538Z === RUN TestDeploy_StatelessReplacementOverlapsAndSwitchesBeforeRetiring 2026-10-22T08:24:29.799406643Z --- PASS: TestDeploy_StatelessReplacementOverlapsAndSwitchesBeforeRetiring (0.00s) 2026-10-22T08:24:29.79941898Z === RUN TestDeploy_OverlapRetiresOldGenerationWithItsOwnStopGrace 2026-10-22T08:24:29.799433083Z --- PASS: TestDeploy_OverlapRetiresOldGenerationWithItsOwnStopGrace (0.00s) 2026-10-22T08:24:29.799442753Z === RUN TestDeploy_OverlapOldRetirementFailureIsACleanupWarning 2026-10-22T08:24:29.799452315Z --- PASS: TestDeploy_OverlapOldRetirementFailureIsACleanupWarning (0.00s) 2026-10-22T08:24:29.799462023Z === RUN TestDeploy_PreflightFailureLeavesTheWorkloadUntouched 2026-10-22T08:24:29.799474008Z --- PASS: TestDeploy_PreflightFailureLeavesTheWorkloadUntouched (0.00s) 2026-10-22T08:24:29.79948455Z === RUN TestDeploy_WithdrawalFailureBlocksMutation 2026-10-22T08:24:29.799494238Z --- PASS: TestDeploy_WithdrawalFailureBlocksMutation (0.00s) 2026-10-22T08:24:29.799504829Z === RUN TestDeploy_FirstDeploymentRetiresNothing 2026-10-22T08:24:29.799516316Z --- PASS: TestDeploy_FirstDeploymentRetiresNothing (0.00s) 2026-10-22T08:24:29.799526839Z === RUN TestDeploy_ReadinessFailureJournalsFailureAndRemovesCandidate 2026-10-22T08:24:29.799536834Z --- PASS: TestDeploy_ReadinessFailureJournalsFailureAndRemovesCandidate (1.00s) 2026-10-22T08:24:29.799547338Z === RUN TestDeploy_CandidateCleanupFailureStaysVisible 2026-10-22T08:24:29.799561008Z --- PASS: TestDeploy_CandidateCleanupFailureStaysVisible (1.00s) 2026-10-22T08:24:29.799570643Z === RUN TestDeploy_CancellationDuringReadinessIsNotReportedAsSuccess 2026-10-22T08:24:29.799580626Z --- PASS: TestDeploy_CancellationDuringReadinessIsNotReportedAsSuccess (0.00s) 2026-10-22T08:24:29.79959109Z === RUN TestDeploy_MultiServiceStopsAtFirstFailure 2026-10-22T08:24:29.799607788Z --- PASS: TestDeploy_MultiServiceStopsAtFirstFailure (1.01s) 2026-10-22T08:24:29.799632206Z === RUN TestDeploy_VolumeReplacementPreventsOverlappingWriters 2026-10-22T08:24:29.799651133Z --- PASS: TestDeploy_VolumeReplacementPreventsOverlappingWriters (1.01s) 2026-10-22T08:24:29.799660076Z === RUN TestComputeOutcome_TerminalResults 2026-10-22T08:24:29.799672214Z --- PASS: TestComputeOutcome_TerminalResults (0.00s) 2026-10-22T08:24:29.799689969Z === RUN TestReconcileBoot_ContinuesAfterAppFailure 2026-10-22T08:24:29.799702772Z --- PASS: TestReconcileBoot_ContinuesAfterAppFailure (0.00s) 2026-10-22T08:24:29.799715813Z === RUN TestDeploy_TrafficFailureRecordsFailedServiceStep 2026-10-22T08:24:29.799728377Z --- PASS: TestDeploy_TrafficFailureRecordsFailedServiceStep (0.00s) 2026-10-22T08:24:29.799741887Z === RUN TestStop_TrafficFailureRecordsTerminalFailure 2026-10-22T08:24:29.79975387Z --- PASS: TestStop_TrafficFailureRecordsTerminalFailure (0.00s) 2026-10-22T08:24:29.799767031Z === RUN TestStartDeploy_PersistsClaimBeforeAnyExecution 2026-10-22T08:24:29.799778947Z === RUN TestStartDeploy_PersistsClaimBeforeAnyExecution/keyed 2026-10-22T08:24:29.799791227Z === RUN TestStartDeploy_PersistsClaimBeforeAnyExecution/unkeyed 2026-10-22T08:24:29.799806794Z --- PASS: TestStartDeploy_PersistsClaimBeforeAnyExecution (0.00s) 2026-10-22T08:24:29.799825664Z --- PASS: TestStartDeploy_PersistsClaimBeforeAnyExecution/keyed (0.00s) 2026-10-22T08:24:29.799848024Z --- PASS: TestStartDeploy_PersistsClaimBeforeAnyExecution/unkeyed (0.00s) 2026-10-22T08:24:29.799860235Z === RUN TestStartDeploy_SameKeyHandsOneOwner 2026-10-22T08:24:29.79989467Z --- PASS: TestStartDeploy_SameKeyHandsOneOwner (0.00s) 2026-10-22T08:24:29.799906998Z === RUN TestExecuteDeploy_RecordsTerminalOutcome 2026-10-22T08:24:29.799916785Z --- PASS: TestExecuteDeploy_RecordsTerminalOutcome (0.00s) 2026-10-22T08:24:29.799925934Z === RUN TestExecuteDeploy_RecordsTerminalFailure 2026-10-22T08:24:29.799934703Z --- PASS: TestExecuteDeploy_RecordsTerminalFailure (0.00s) 2026-10-22T08:24:29.799945598Z === RUN TestExecuteDeploy_TerminalStoreRecordBeatsStaleClaim 2026-10-22T08:24:29.7999577Z --- PASS: TestExecuteDeploy_TerminalStoreRecordBeatsStaleClaim (0.00s) 2026-10-22T08:24:29.799969198Z === RUN TestExecuteDeploy_CancellationLeavesRecoverableClaim 2026-10-22T08:24:29.799980485Z --- PASS: TestExecuteDeploy_CancellationLeavesRecoverableClaim (0.01s) 2026-10-22T08:24:29.799991812Z === RUN TestDeploy_IsStartDeployThenExecuteDeploy 2026-10-22T08:24:29.800005004Z --- PASS: TestDeploy_IsStartDeployThenExecuteDeploy (0.00s) 2026-10-22T08:24:29.800018518Z === RUN TestStartDeploy_LiveClaimSurvivesForegroundReconciliation 2026-10-22T08:24:29.800028359Z --- PASS: TestStartDeploy_LiveClaimSurvivesForegroundReconciliation (0.02s) 2026-10-22T08:24:29.800037172Z === RUN TestAbandonDeploy_SettlesClaimWithoutStarting 2026-10-22T08:24:29.80005388Z --- PASS: TestAbandonDeploy_SettlesClaimWithoutStarting (0.02s) 2026-10-22T08:24:29.800065951Z PASS 2026-10-22T08:24:29.800078515Z ok github.com/bnema/gordon/internal/usecase/deployment 17.090s 2026-10-22T08:24:29.800090137Z === RUN TestService_CheckAllRoutes_Healthy 2026-10-22T08:24:29.800103625Z --- PASS: TestService_CheckAllRoutes_Healthy (0.00s) 2026-10-22T08:24:29.80011558Z === RUN TestService_CheckAllRoutes_ContainerNotRunning 2026-10-22T08:24:29.800129356Z --- PASS: TestService_CheckAllRoutes_ContainerNotRunning (0.00s) 2026-10-22T08:24:29.800138346Z === RUN TestService_CheckAllRoutes_ProbeFailure 2026-10-22T08:24:29.800149086Z --- PASS: TestService_CheckAllRoutes_ProbeFailure (0.00s) 2026-10-22T08:24:29.800158207Z === RUN TestService_CheckAllRoutes_StoppedIntentSkipped 2026-10-22T08:24:29.800167662Z --- PASS: TestService_CheckAllRoutes_StoppedIntentSkipped (0.00s) 2026-10-22T08:24:29.800176299Z === RUN TestService_CheckAllRoutes_NoApps 2026-10-22T08:24:29.800185085Z --- PASS: TestService_CheckAllRoutes_NoApps (0.00s) 2026-10-22T08:24:29.80019657Z PASS 2026-10-22T08:24:29.800208196Z ok github.com/bnema/gordon/internal/usecase/health 1.015s 2026-10-22T08:24:29.800217747Z === RUN TestPrune_SnapshotGapFailsClosed 2026-10-22T08:24:29.800241372Z --- PASS: TestPrune_SnapshotGapFailsClosed (0.00s) 2026-10-22T08:24:29.800256308Z === RUN TestPrune_MovedTagKeepsActiveDigestClosure 2026-10-22T08:24:29.800272487Z --- PASS: TestPrune_MovedTagKeepsActiveDigestClosure (0.00s) 2026-10-22T08:24:29.800300862Z === RUN TestPrune_SubjectClosureProtectsManifestConfigAndLayers 2026-10-22T08:24:29.800325709Z --- PASS: TestPrune_SubjectClosureProtectsManifestConfigAndLayers (0.00s) 2026-10-22T08:24:29.800349197Z === RUN TestPrune_MissingSubjectFailsClosed 2026-10-22T08:24:29.800375091Z --- PASS: TestPrune_MissingSubjectFailsClosed (0.00s) 2026-10-22T08:24:29.800399818Z === RUN TestPrune_SubjectCycleTerminatesAndProtectsClosure 2026-10-22T08:24:29.800418584Z --- PASS: TestPrune_SubjectCycleTerminatesAndProtectsClosure (0.00s) 2026-10-22T08:24:29.800436375Z === RUN TestPrune_ExternalRepositoryDigestRootDoesNotDisablePruning 2026-10-22T08:24:29.800460648Z --- PASS: TestPrune_ExternalRepositoryDigestRootDoesNotDisablePruning (0.00s) 2026-10-22T08:24:29.800479339Z === RUN TestPrune_UnresolvedDigestRootFailsClosed 2026-10-22T08:24:29.800498008Z --- PASS: TestPrune_UnresolvedDigestRootFailsClosed (0.00s) 2026-10-22T08:24:29.800515045Z === RUN TestPrune_BlobClaimedByDigestRootSurvives 2026-10-22T08:24:29.800536467Z --- PASS: TestPrune_BlobClaimedByDigestRootSurvives (0.00s) 2026-10-22T08:24:29.800559188Z === RUN TestPrune_BlobWithoutModTimeStaysUnknown 2026-10-22T08:24:29.800580213Z --- PASS: TestPrune_BlobWithoutModTimeStaysUnknown (0.00s) 2026-10-22T08:24:29.800603575Z === RUN TestPrune_MalformedTagFailsClosed 2026-10-22T08:24:29.800625727Z --- PASS: TestPrune_MalformedTagFailsClosed (0.00s) 2026-10-22T08:24:29.800648472Z === RUN TestPrune_SecondExecutionIsIdempotent 2026-10-22T08:24:29.800667952Z --- PASS: TestPrune_SecondExecutionIsIdempotent (0.00s) 2026-10-22T08:24:29.800692141Z === RUN TestPrune_RuntimeDeletionRunsOutsideRegistryLock 2026-10-22T08:24:29.800712104Z --- PASS: TestPrune_RuntimeDeletionRunsOutsideRegistryLock (0.00s) 2026-10-22T08:24:29.800736142Z === RUN TestPrune_SelectiveMixedBatch 2026-10-22T08:24:29.800752817Z --- PASS: TestPrune_SelectiveMixedBatch (0.00s) 2026-10-22T08:24:29.800768789Z === RUN TestPrune_DryRunPlansWithoutDeleting 2026-10-22T08:24:29.800788211Z --- PASS: TestPrune_DryRunPlansWithoutDeleting (0.00s) 2026-10-22T08:24:29.800813806Z === RUN TestPrune_ZeroEligibleSucceeds 2026-10-22T08:24:29.800837234Z --- PASS: TestPrune_ZeroEligibleSucceeds (0.00s) 2026-10-22T08:24:29.800862087Z === RUN TestPrune_MissingChildManifestMakesUnreferencedBlobsUnknown 2026-10-22T08:24:29.800884079Z --- PASS: TestPrune_MissingChildManifestMakesUnreferencedBlobsUnknown (0.00s) 2026-10-22T08:24:29.800906574Z === RUN TestPrune_SharedBlobStaysProtectedThroughClosure 2026-10-22T08:24:29.800924919Z --- PASS: TestPrune_SharedBlobStaysProtectedThroughClosure (0.00s) 2026-10-22T08:24:29.800952424Z === RUN TestPrune_RegistryDeletionFailureIsIsolated 2026-10-22T08:24:29.800970989Z --- PASS: TestPrune_RegistryDeletionFailureIsIsolated (0.00s) 2026-10-22T08:24:29.800995701Z === RUN TestPrune_RuntimeDeletionFailureIsIsolated 2026-10-22T08:24:29.801014373Z --- PASS: TestPrune_RuntimeDeletionFailureIsIsolated (0.00s) 2026-10-22T08:24:29.801041274Z === RUN TestPrune_KeepLastZeroSkipsRegistry 2026-10-22T08:24:29.801059867Z --- PASS: TestPrune_KeepLastZeroSkipsRegistry (0.00s) 2026-10-22T08:24:29.801082523Z === RUN TestPrune_RegistryOnlySkipsRuntime 2026-10-22T08:24:29.801101825Z --- PASS: TestPrune_RegistryOnlySkipsRuntime (0.00s) 2026-10-22T08:24:29.801128855Z === RUN TestPrune_RequiresProtectionStore 2026-10-22T08:24:29.801146439Z --- PASS: TestPrune_RequiresProtectionStore (0.00s) 2026-10-22T08:24:29.801171994Z === RUN TestPrune_ProtectionSnapshotFailureFailsClosed 2026-10-22T08:24:29.801195603Z --- PASS: TestPrune_ProtectionSnapshotFailureFailsClosed (0.00s) 2026-10-22T08:24:29.801215106Z === RUN TestPrune_RuntimeInventoryGapMakesCandidatesUnknown 2026-10-22T08:24:29.801242076Z --- PASS: TestPrune_RuntimeInventoryGapMakesCandidatesUnknown (0.00s) 2026-10-22T08:24:29.801260162Z === RUN TestService_ListImages_ReturnsAllImages 2026-10-22T08:24:29.801282137Z --- PASS: TestService_ListImages_ReturnsAllImages (0.00s) 2026-10-22T08:24:29.801303372Z === RUN TestService_ListImages_EmptyWhenNoImages 2026-10-22T08:24:29.801341116Z --- PASS: TestService_ListImages_EmptyWhenNoImages (0.00s) 2026-10-22T08:24:29.801368478Z === RUN TestService_ListImages_SkipsPlaceholderTagsInMixedImage 2026-10-22T08:24:29.801389304Z --- PASS: TestService_ListImages_SkipsPlaceholderTagsInMixedImage (0.00s) 2026-10-22T08:24:29.801407828Z === RUN TestService_ListImages_ReturnsErrorWhenRuntimeFails 2026-10-22T08:24:29.801428543Z --- PASS: TestService_ListImages_ReturnsErrorWhenRuntimeFails (0.00s) 2026-10-22T08:24:29.801447194Z === RUN TestService_ListImages_IncludesRegistryTagsNotPresentInRuntime 2026-10-22T08:24:29.801468979Z --- PASS: TestService_ListImages_IncludesRegistryTagsNotPresentInRuntime (0.00s) 2026-10-22T08:24:29.801487333Z === RUN TestSplitRepoTag 2026-10-22T08:24:29.801510084Z === RUN TestSplitRepoTag/repository_and_tag 2026-10-22T08:24:29.801527934Z === RUN TestSplitRepoTag/sha-like_tag_stays_a_tag 2026-10-22T08:24:29.801545289Z === RUN TestSplitRepoTag/registry_port_and_tag 2026-10-22T08:24:29.801562897Z === RUN TestSplitRepoTag/registry_port_without_tag 2026-10-22T08:24:29.801594752Z === RUN TestSplitRepoTag/digest_reference_not_split_as_tag 2026-10-22T08:24:29.801615977Z === RUN TestSplitRepoTag/missing_tag 2026-10-22T08:24:29.801639556Z === RUN TestSplitRepoTag/trailing_colon 2026-10-22T08:24:29.801659922Z --- PASS: TestSplitRepoTag (0.00s) 2026-10-22T08:24:29.801696396Z --- PASS: TestSplitRepoTag/repository_and_tag (0.00s) 2026-10-22T08:24:29.801729668Z --- PASS: TestSplitRepoTag/sha-like_tag_stays_a_tag (0.00s) 2026-10-22T08:24:29.801762666Z --- PASS: TestSplitRepoTag/registry_port_and_tag (0.00s) 2026-10-22T08:24:29.801794438Z --- PASS: TestSplitRepoTag/registry_port_without_tag (0.00s) 2026-10-22T08:24:29.801828322Z --- PASS: TestSplitRepoTag/digest_reference_not_split_as_tag (0.00s) 2026-10-22T08:24:29.801856564Z --- PASS: TestSplitRepoTag/missing_tag (0.00s) 2026-10-22T08:24:29.801889198Z --- PASS: TestSplitRepoTag/trailing_colon (0.00s) 2026-10-22T08:24:29.80190429Z PASS 2026-10-22T08:24:29.801926436Z ok github.com/bnema/gordon/internal/usecase/images 1.026s 2026-10-22T08:24:29.801943961Z === RUN TestAccessLogExporter_AttributesOwnedHostToAppService 2026-10-22T08:24:29.801965973Z --- PASS: TestAccessLogExporter_AttributesOwnedHostToAppService (0.00s) 2026-10-22T08:24:29.801987312Z === RUN TestAccessLogExporter_UnownedHostIsGordon 2026-10-22T08:24:29.802012555Z --- PASS: TestAccessLogExporter_UnownedHostIsGordon (0.00s) 2026-10-22T08:24:29.802030992Z === RUN TestAccessLogExporter_ReturnsLocalSinkError 2026-10-22T08:24:29.802038829Z --- PASS: TestAccessLogExporter_ReturnsLocalSinkError (0.00s) 2026-10-22T08:24:29.802054265Z === RUN TestAccessLogExporter_DropsQueryAttribute 2026-10-22T08:24:29.802070035Z --- PASS: TestAccessLogExporter_DropsQueryAttribute (0.00s) 2026-10-22T08:24:29.802086944Z === RUN TestAccessLogExporter_SanitizesInvalidUTF8 2026-10-22T08:24:29.802094568Z --- PASS: TestAccessLogExporter_SanitizesInvalidUTF8 (0.00s) 2026-10-22T08:24:29.802103151Z === RUN TestCollector_FollowsOnlyExportableContainers 2026-10-22T08:24:29.802115358Z --- PASS: TestCollector_FollowsOnlyExportableContainers (0.00s) 2026-10-22T08:24:29.802132825Z === RUN TestCollector_StopsFollowerWhenServiceOptsOut 2026-10-22T08:24:29.802140875Z --- PASS: TestCollector_StopsFollowerWhenServiceOptsOut (0.00s) 2026-10-22T08:24:29.8021464Z === RUN TestCollector_ExportsLinesWithSourceIdentity 2026-10-22T08:24:29.802152718Z --- PASS: TestCollector_ExportsLinesWithSourceIdentity (0.00s) 2026-10-22T08:24:29.802169559Z === RUN TestCollector_ResumesAfterLastLineOnReconnect 2026-10-22T08:24:29.802187153Z --- PASS: TestCollector_ResumesAfterLastLineOnReconnect (0.00s) 2026-10-22T08:24:29.802209527Z === RUN TestCollector_ReconcileWrapsStateErrors 2026-10-22T08:24:29.802229244Z --- PASS: TestCollector_ReconcileWrapsStateErrors (0.00s) 2026-10-22T08:24:29.802252826Z === RUN TestCollector_RecreatedFollowResumesFromSavedCursor 2026-10-22T08:24:29.802269999Z --- PASS: TestCollector_RecreatedFollowResumesFromSavedCursor (0.00s) 2026-10-22T08:24:29.802278272Z === RUN TestCollector_RetiresCursorWhenIDLeavesActive 2026-10-22T08:24:29.80228793Z --- PASS: TestCollector_RetiresCursorWhenIDLeavesActive (0.00s) 2026-10-22T08:24:29.802294597Z PASS 2026-10-22T08:24:29.802307685Z ok github.com/bnema/gordon/internal/usecase/logexport 1.022s 2026-10-22T08:24:29.802320391Z === RUN TestService_GetProcessLogs 2026-10-22T08:24:29.802331938Z === RUN TestService_GetProcessLogs/returns_lines_from_log_file 2026-10-22T08:24:29.802341687Z === RUN TestService_GetProcessLogs/returns_empty_slice_for_non-existent_file 2026-10-22T08:24:29.802348739Z === RUN TestService_GetProcessLogs/returns_error_when_log_file_path_not_configured 2026-10-22T08:24:29.802362524Z === RUN TestService_GetProcessLogs/returns_all_lines_when_fewer_than_requested 2026-10-22T08:24:29.80237289Z === RUN TestService_GetProcessLogs/falls_back_to_journalctl_when_file_logging_disabled 2026-10-22T08:24:29.802387668Z --- PASS: TestService_GetProcessLogs (0.02s) 2026-10-22T08:24:29.802410418Z --- PASS: TestService_GetProcessLogs/returns_lines_from_log_file (0.00s) 2026-10-22T08:24:29.802433262Z --- PASS: TestService_GetProcessLogs/returns_empty_slice_for_non-existent_file (0.00s) 2026-10-22T08:24:29.802461102Z --- PASS: TestService_GetProcessLogs/returns_error_when_log_file_path_not_configured (0.00s) 2026-10-22T08:24:29.802486461Z --- PASS: TestService_GetProcessLogs/returns_all_lines_when_fewer_than_requested (0.00s) 2026-10-22T08:24:29.802513214Z --- PASS: TestService_GetProcessLogs/falls_back_to_journalctl_when_file_logging_disabled (0.01s) 2026-10-22T08:24:29.802526328Z === RUN TestService_FollowProcessLogs 2026-10-22T08:24:29.802538361Z === RUN TestService_FollowProcessLogs/streams_lines_and_respects_context_cancellation 2026-10-22T08:24:29.80255035Z --- PASS: TestService_FollowProcessLogs (0.10s) 2026-10-22T08:24:29.802576142Z --- PASS: TestService_FollowProcessLogs/streams_lines_and_respects_context_cancellation (0.10s) 2026-10-22T08:24:29.802591187Z === RUN TestService_GetContainerLogs 2026-10-22T08:24:29.802603828Z === RUN TestService_GetContainerLogs/returns_error_when_container_not_found 2026-10-22T08:24:29.8026181Z === RUN TestService_GetContainerLogs/rejects_raw_Docker_ID_without_calling_the_runtime 2026-10-22T08:24:29.802632038Z === RUN TestService_GetContainerLogs/rejects_foreign_container_ID_without_calling_the_runtime 2026-10-22T08:24:29.802647279Z === RUN TestService_GetContainerLogs/rejects_stale_container_ID_without_calling_the_runtime 2026-10-22T08:24:29.802672745Z === RUN TestService_GetContainerLogs/calls_runtime_with_correct_container_ID 2026-10-22T08:24:29.802686866Z --- PASS: TestService_GetContainerLogs (0.00s) 2026-10-22T08:24:29.802711447Z --- PASS: TestService_GetContainerLogs/returns_error_when_container_not_found (0.00s) 2026-10-22T08:24:29.802737082Z --- PASS: TestService_GetContainerLogs/rejects_raw_Docker_ID_without_calling_the_runtime (0.00s) 2026-10-22T08:24:29.802766036Z --- PASS: TestService_GetContainerLogs/rejects_foreign_container_ID_without_calling_the_runtime (0.00s) 2026-10-22T08:24:29.802790838Z --- PASS: TestService_GetContainerLogs/rejects_stale_container_ID_without_calling_the_runtime (0.00s) 2026-10-22T08:24:29.802825973Z --- PASS: TestService_GetContainerLogs/calls_runtime_with_correct_container_ID (0.00s) 2026-10-22T08:24:29.802850524Z === RUN TestService_FollowContainerLogs 2026-10-22T08:24:29.802868321Z === RUN TestService_FollowContainerLogs/returns_error_when_container_not_found 2026-10-22T08:24:29.802884251Z === RUN TestService_FollowContainerLogs/rejects_raw_container_ID_without_calling_the_runtime 2026-10-22T08:24:29.802902138Z --- PASS: TestService_FollowContainerLogs (0.00s) 2026-10-22T08:24:29.802929738Z --- PASS: TestService_FollowContainerLogs/returns_error_when_container_not_found (0.00s) 2026-10-22T08:24:29.802958406Z --- PASS: TestService_FollowContainerLogs/rejects_raw_container_ID_without_calling_the_runtime (0.00s) 2026-10-22T08:24:29.802970432Z === RUN TestTailLines 2026-10-22T08:24:29.802987805Z === RUN TestTailLines/returns_correct_last_N_lines 2026-10-22T08:24:29.80300031Z === RUN TestTailLines/returns_all_lines_when_n_exceeds_line_count 2026-10-22T08:24:29.803011683Z === RUN TestTailLines/returns_empty_slice_for_empty_file 2026-10-22T08:24:29.80302497Z === RUN TestTailLines/returns_empty_slice_when_n_is_zero 2026-10-22T08:24:29.803035517Z --- PASS: TestTailLines (0.00s) 2026-10-22T08:24:29.803052425Z --- PASS: TestTailLines/returns_correct_last_N_lines (0.00s) 2026-10-22T08:24:29.803072764Z --- PASS: TestTailLines/returns_all_lines_when_n_exceeds_line_count (0.00s) 2026-10-22T08:24:29.803094152Z --- PASS: TestTailLines/returns_empty_slice_for_empty_file (0.00s) 2026-10-22T08:24:29.803116552Z --- PASS: TestTailLines/returns_empty_slice_when_n_is_zero (0.00s) 2026-10-22T08:24:29.803128457Z PASS 2026-10-22T08:24:29.803138961Z ok github.com/bnema/gordon/internal/usecase/logs 1.130s 2026-10-22T08:24:29.803150289Z === RUN TestService_GetCertificate_KnownDomain 2026-10-22T08:24:29.803167476Z 2026-10-22T08:24:13Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:29.803189022Z 2026-10-22T08:24:13Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:13Z 2026-10-22T08:24:29.803202667Z --- PASS: TestService_GetCertificate_KnownDomain (0.00s) 2026-10-22T08:24:29.803219785Z === RUN TestService_GetCertificate_AdditionalDomain 2026-10-22T08:24:29.803231994Z 2026-10-22T08:24:13Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:29.803244756Z 2026-10-22T08:24:13Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:13Z 2026-10-22T08:24:29.803260032Z --- PASS: TestService_GetCertificate_AdditionalDomain (0.00s) 2026-10-22T08:24:29.803270474Z === RUN TestService_SetAdditionalDomains_ReplacesAuthorization 2026-10-22T08:24:29.803282268Z 2026-10-22T08:24:13Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:29.803300729Z 2026-10-22T08:24:13Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:13Z 2026-10-22T08:24:29.80331403Z --- PASS: TestService_SetAdditionalDomains_ReplacesAuthorization (0.00s) 2026-10-22T08:24:29.803328623Z === RUN TestService_SetAdditionalDomains_RevokesConcurrentIssuance 2026-10-22T08:24:29.8033422Z 2026-10-22T08:24:13Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:29.803354747Z 2026-10-22T08:24:13Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:13Z 2026-10-22T08:24:29.803365185Z --- PASS: TestService_SetAdditionalDomains_RevokesConcurrentIssuance (0.02s) 2026-10-22T08:24:29.803374307Z === RUN TestService_GetCertificate_WrapsIssuanceError 2026-10-22T08:24:29.803388963Z 2026-10-22T08:24:13Z ERR failed to issue leaf certificate error="issuer unavailable" domain=broken.example.com layer=usecase usecase=IssueCertificate 2026-10-22T08:24:29.803399564Z --- PASS: TestService_GetCertificate_WrapsIssuanceError (0.00s) 2026-10-22T08:24:29.803410255Z === RUN TestService_GetCertificate_NeverTLSHostDenied 2026-10-22T08:24:29.803423094Z 2026-10-22T08:24:13Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:29.803436258Z 2026-10-22T08:24:13Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:13Z 2026-10-22T08:24:29.803448985Z --- PASS: TestService_GetCertificate_NeverTLSHostDenied (0.00s) 2026-10-22T08:24:29.803460772Z === RUN TestService_GetCertificate_UnknownDomain 2026-10-22T08:24:29.803476213Z 2026-10-22T08:24:13Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:29.803505334Z 2026-10-22T08:24:13Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:13Z 2026-10-22T08:24:29.803518513Z --- PASS: TestService_GetCertificate_UnknownDomain (0.00s) 2026-10-22T08:24:29.803528952Z === RUN TestService_GetCertificate_Caching 2026-10-22T08:24:29.803547936Z 2026-10-22T08:24:13Z INF generated new root CA cn="Gordon Internal CA - 2026 ECC Root" 2026-10-22T08:24:29.803561485Z 2026-10-22T08:24:13Z INF generated new intermediate CA cn="Gordon Internal CA - ECC Intermediate" expires=2026-10-29T08:24:13Z 2026-10-22T08:24:29.803571144Z --- PASS: TestService_GetCertificate_Caching (0.00s) 2026-10-22T08:24:29.803581564Z PASS 2026-10-22T08:24:29.803593523Z ok github.com/bnema/gordon/internal/usecase/pki 1.058s 2026-10-22T08:24:29.803608291Z === RUN TestService_GetTarget_FromCache 2026-10-22T08:24:29.803618037Z --- PASS: TestService_GetTarget_FromCache (0.00s) 2026-10-22T08:24:29.803635249Z === RUN TestService_GetTarget_CanonicalizesHostForLookup 2026-10-22T08:24:29.803648086Z --- PASS: TestService_GetTarget_CanonicalizesHostForLookup (0.00s) 2026-10-22T08:24:29.803659874Z === RUN TestService_GetTarget_RejectsInvalidHostAuthority 2026-10-22T08:24:29.803673931Z --- PASS: TestService_GetTarget_RejectsInvalidHostAuthority (0.00s) 2026-10-22T08:24:29.803685614Z === RUN TestService_GetTarget_AppBackend 2026-10-22T08:24:29.803694586Z --- PASS: TestService_GetTarget_AppBackend (0.00s) 2026-10-22T08:24:29.80370315Z === RUN TestService_GetTarget_AppBackendUnresolved 2026-10-22T08:24:29.803716214Z --- PASS: TestService_GetTarget_AppBackendUnresolved (0.00s) 2026-10-22T08:24:29.803726796Z === RUN TestService_GetTarget_NoProvider 2026-10-22T08:24:29.803735696Z --- PASS: TestService_GetTarget_NoProvider (0.00s) 2026-10-22T08:24:29.803746237Z === RUN TestService_GetTarget_NoStaleAppBackendAfterReplacement 2026-10-22T08:24:29.803758817Z --- PASS: TestService_GetTarget_NoStaleAppBackendAfterReplacement (0.00s) 2026-10-22T08:24:29.803767589Z === RUN TestService_GetTarget_ExternalRoute 2026-10-22T08:24:29.803777714Z --- PASS: TestService_GetTarget_ExternalRoute (0.00s) 2026-10-22T08:24:29.803787932Z === RUN TestService_GetTarget_ExternalRoute_Cached 2026-10-22T08:24:29.803799157Z --- PASS: TestService_GetTarget_ExternalRoute_Cached (0.00s) 2026-10-22T08:24:29.80380831Z === RUN TestService_GetTarget_ExternalRoute_SSRFBlocked 2026-10-22T08:24:29.80381723Z === RUN TestService_GetTarget_ExternalRoute_SSRFBlocked/localhost 2026-10-22T08:24:29.803838794Z 2026-10-22T08:24:13Z WRN SSRF protection: blocked external route to internal network error="request to internal/blocked network not allowed" domain=ssrf.example.com host=localhost layer=usecase usecase=GetTarget 2026-10-22T08:24:29.803852214Z === RUN TestService_GetTarget_ExternalRoute_SSRFBlocked/loopback_IP 2026-10-22T08:24:29.803868906Z 2026-10-22T08:24:13Z WRN SSRF protection: blocked external route to internal network error="request to internal/blocked network not allowed" domain=ssrf.example.com host=127.0.0.1 layer=usecase usecase=GetTarget 2026-10-22T08:24:29.803880608Z === RUN TestService_GetTarget_ExternalRoute_SSRFBlocked/private_network_10.x 2026-10-22T08:24:29.803898297Z 2026-10-22T08:24:13Z WRN SSRF protection: blocked external route to internal network error="request to internal/blocked network not allowed" domain=ssrf.example.com host=10.0.0.1 layer=usecase usecase=GetTarget 2026-10-22T08:24:29.803909341Z === RUN TestService_GetTarget_ExternalRoute_SSRFBlocked/private_network_172.x 2026-10-22T08:24:29.803928421Z 2026-10-22T08:24:13Z WRN SSRF protection: blocked external route to internal network error="request to internal/blocked network not allowed" domain=ssrf.example.com host=172.16.0.1 layer=usecase usecase=GetTarget 2026-10-22T08:24:29.803941559Z === RUN TestService_GetTarget_ExternalRoute_SSRFBlocked/private_network_192.168.x 2026-10-22T08:24:29.803965165Z 2026-10-22T08:24:13Z WRN SSRF protection: blocked external route to internal network error="request to internal/blocked network not allowed" domain=ssrf.example.com host=192.168.1.1 layer=usecase usecase=GetTarget 2026-10-22T08:24:29.803981267Z === RUN TestService_GetTarget_ExternalRoute_SSRFBlocked/AWS_metadata 2026-10-22T08:24:29.804002094Z 2026-10-22T08:24:13Z WRN SSRF protection: blocked external route to internal network error="request to internal/blocked network not allowed" domain=ssrf.example.com host=169.254.169.254 layer=usecase usecase=GetTarget 2026-10-22T08:24:29.804017886Z --- PASS: TestService_GetTarget_ExternalRoute_SSRFBlocked (0.00s) 2026-10-22T08:24:29.804040985Z --- PASS: TestService_GetTarget_ExternalRoute_SSRFBlocked/localhost (0.00s) 2026-10-22T08:24:29.804065308Z --- PASS: TestService_GetTarget_ExternalRoute_SSRFBlocked/loopback_IP (0.00s) 2026-10-22T08:24:29.80408768Z --- PASS: TestService_GetTarget_ExternalRoute_SSRFBlocked/private_network_10.x (0.00s) 2026-10-22T08:24:29.804108972Z --- PASS: TestService_GetTarget_ExternalRoute_SSRFBlocked/private_network_172.x (0.00s) 2026-10-22T08:24:29.804132624Z --- PASS: TestService_GetTarget_ExternalRoute_SSRFBlocked/private_network_192.168.x (0.00s) 2026-10-22T08:24:29.804151582Z --- PASS: TestService_GetTarget_ExternalRoute_SSRFBlocked/AWS_metadata (0.00s) 2026-10-22T08:24:29.804163939Z === RUN TestService_GetTarget_ExternalRoute_InvalidTarget 2026-10-22T08:24:29.804180906Z 2026-10-22T08:24:13Z ERR invalid external route target error="address not-valid-format: missing port in address" domain=invalid.example.com layer=usecase target=not-valid-format usecase=GetTarget 2026-10-22T08:24:29.804191995Z --- PASS: TestService_GetTarget_ExternalRoute_InvalidTarget (0.00s) 2026-10-22T08:24:29.804247071Z === RUN TestService_GetTarget_ExternalRoute_InvalidPort 2026-10-22T08:24:29.804259274Z === RUN TestService_GetTarget_ExternalRoute_InvalidPort/not_a_number 2026-10-22T08:24:29.804276814Z 2026-10-22T08:24:13Z ERR invalid port in external route error="strconv.Atoi: parsing \"abc\": invalid syntax" domain=invalid.example.com layer=usecase target=localhost:abc usecase=GetTarget 2026-10-22T08:24:29.804289133Z === RUN TestService_GetTarget_ExternalRoute_InvalidPort/zero 2026-10-22T08:24:29.804298886Z === RUN TestService_GetTarget_ExternalRoute_InvalidPort/too_high 2026-10-22T08:24:29.804308068Z --- PASS: TestService_GetTarget_ExternalRoute_InvalidPort (0.00s) 2026-10-22T08:24:29.80432643Z --- PASS: TestService_GetTarget_ExternalRoute_InvalidPort/not_a_number (0.00s) 2026-10-22T08:24:29.804344051Z --- PASS: TestService_GetTarget_ExternalRoute_InvalidPort/zero (0.00s) 2026-10-22T08:24:29.80436199Z --- PASS: TestService_GetTarget_ExternalRoute_InvalidPort/too_high (0.00s) 2026-10-22T08:24:29.804370978Z === RUN TestService_RegisterTarget 2026-10-22T08:24:29.804381325Z --- PASS: TestService_RegisterTarget (0.00s) 2026-10-22T08:24:29.804389973Z === RUN TestService_UnregisterTarget 2026-10-22T08:24:29.804398957Z --- PASS: TestService_UnregisterTarget (0.00s) 2026-10-22T08:24:29.804407565Z === RUN TestService_RefreshTargets 2026-10-22T08:24:29.804420158Z --- PASS: TestService_RefreshTargets (0.00s) 2026-10-22T08:24:29.804428919Z === RUN TestService_UpdateConfig 2026-10-22T08:24:29.804439131Z --- PASS: TestService_UpdateConfig (0.00s) 2026-10-22T08:24:29.804449459Z === RUN TestService_InvalidateTarget 2026-10-22T08:24:29.804465073Z --- PASS: TestService_InvalidateTarget (0.00s) 2026-10-22T08:24:29.804474562Z === RUN TestService_IsKnownHost_AppBackend 2026-10-22T08:24:29.80448316Z --- PASS: TestService_IsKnownHost_AppBackend (0.00s) 2026-10-22T08:24:29.804493336Z === RUN TestRegistryInFlightTracking 2026-10-22T08:24:29.804510026Z --- PASS: TestRegistryInFlightTracking (0.00s) 2026-10-22T08:24:29.804522015Z === RUN TestDrainRegistryInFlight 2026-10-22T08:24:29.804533317Z --- PASS: TestDrainRegistryInFlight (0.01s) 2026-10-22T08:24:29.80454602Z === RUN TestDrainRegistryInFlightTimeout 2026-10-22T08:24:29.804556692Z --- PASS: TestDrainRegistryInFlightTimeout (0.03s) 2026-10-22T08:24:29.804565327Z === RUN TestService_ProxyConfig_ReflectsUpdates 2026-10-22T08:24:29.804576238Z --- PASS: TestService_ProxyConfig_ReflectsUpdates (0.00s) 2026-10-22T08:24:29.804587294Z === RUN TestService_IsRegistryDomain 2026-10-22T08:24:29.804598684Z --- PASS: TestService_IsRegistryDomain (0.00s) 2026-10-22T08:24:29.804611447Z === RUN TestService_IsRegistryDomain_EmptyConfig 2026-10-22T08:24:29.80462445Z --- PASS: TestService_IsRegistryDomain_EmptyConfig (0.00s) 2026-10-22T08:24:29.804633584Z === RUN TestService_TrackInFlight 2026-10-22T08:24:29.804642231Z --- PASS: TestService_TrackInFlight (0.00s) 2026-10-22T08:24:29.804653685Z === RUN TestService_TrackRegistryRequest 2026-10-22T08:24:29.804676394Z --- PASS: TestService_TrackRegistryRequest (0.00s) 2026-10-22T08:24:29.804687673Z === RUN TestIsBlockedTarget_IPAddresses 2026-10-22T08:24:29.804696983Z === RUN TestIsBlockedTarget_IPAddresses/IPv4_loopback_127.0.0.1 2026-10-22T08:24:29.804707942Z === RUN TestIsBlockedTarget_IPAddresses/IPv4_loopback_127.0.0.2 2026-10-22T08:24:29.804720328Z === RUN TestIsBlockedTarget_IPAddresses/IPv4_loopback_127.255.255.255 2026-10-22T08:24:29.804731609Z === RUN TestIsBlockedTarget_IPAddresses/10.0.0.0/8_network 2026-10-22T08:24:29.804740938Z === RUN TestIsBlockedTarget_IPAddresses/10.0.0.0/8_network_edge 2026-10-22T08:24:29.804751799Z === RUN TestIsBlockedTarget_IPAddresses/172.16.0.0/12_network_start 2026-10-22T08:24:29.804763734Z === RUN TestIsBlockedTarget_IPAddresses/172.16.0.0/12_network_middle 2026-10-22T08:24:29.804773484Z === RUN TestIsBlockedTarget_IPAddresses/172.16.0.0/12_network_end 2026-10-22T08:24:29.804782421Z === RUN TestIsBlockedTarget_IPAddresses/192.168.0.0/16_network 2026-10-22T08:24:29.804794594Z === RUN TestIsBlockedTarget_IPAddresses/192.168.0.0/16_network_edge 2026-10-22T08:24:29.804806782Z === RUN TestIsBlockedTarget_IPAddresses/AWS_metadata_endpoint 2026-10-22T08:24:29.804816313Z === RUN TestIsBlockedTarget_IPAddresses/Link-local_address 2026-10-22T08:24:29.804824858Z === RUN TestIsBlockedTarget_IPAddresses/IPv6_loopback 2026-10-22T08:24:29.804834993Z === RUN TestIsBlockedTarget_IPAddresses/IPv6_unique_local_fc00 2026-10-22T08:24:29.804848589Z === RUN TestIsBlockedTarget_IPAddresses/IPv6_unique_local_fd00 2026-10-22T08:24:29.804859448Z === RUN TestIsBlockedTarget_IPAddresses/IPv6_link-local 2026-10-22T08:24:29.804868238Z === RUN TestIsBlockedTarget_IPAddresses/Google_DNS 2026-10-22T08:24:29.804883575Z === RUN TestIsBlockedTarget_IPAddresses/Cloudflare_DNS 2026-10-22T08:24:29.80490509Z === RUN TestIsBlockedTarget_IPAddresses/Public_IP 2026-10-22T08:24:29.804922942Z === RUN TestIsBlockedTarget_IPAddresses/Public_IPv6 2026-10-22T08:24:29.804949439Z === RUN TestIsBlockedTarget_IPAddresses/Just_outside_172.16.0.0/12 2026-10-22T08:24:29.804970425Z === RUN TestIsBlockedTarget_IPAddresses/Just_outside_172.16.0.0/12_upper 2026-10-22T08:24:29.80498794Z --- PASS: TestIsBlockedTarget_IPAddresses (0.00s) 2026-10-22T08:24:29.805028971Z --- PASS: TestIsBlockedTarget_IPAddresses/IPv4_loopback_127.0.0.1 (0.00s) 2026-10-22T08:24:29.805071675Z --- PASS: TestIsBlockedTarget_IPAddresses/IPv4_loopback_127.0.0.2 (0.00s) 2026-10-22T08:24:29.805115819Z --- PASS: TestIsBlockedTarget_IPAddresses/IPv4_loopback_127.255.255.255 (0.00s) 2026-10-22T08:24:29.805154874Z --- PASS: TestIsBlockedTarget_IPAddresses/10.0.0.0/8_network (0.00s) 2026-10-22T08:24:29.805194694Z --- PASS: TestIsBlockedTarget_IPAddresses/10.0.0.0/8_network_edge (0.00s) 2026-10-22T08:24:29.80523231Z --- PASS: TestIsBlockedTarget_IPAddresses/172.16.0.0/12_network_start (0.00s) 2026-10-22T08:24:29.805268604Z --- PASS: TestIsBlockedTarget_IPAddresses/172.16.0.0/12_network_middle (0.00s) 2026-10-22T08:24:29.805305252Z --- PASS: TestIsBlockedTarget_IPAddresses/172.16.0.0/12_network_end (0.00s) 2026-10-22T08:24:29.80533994Z --- PASS: TestIsBlockedTarget_IPAddresses/192.168.0.0/16_network (0.00s) 2026-10-22T08:24:29.805376347Z --- PASS: TestIsBlockedTarget_IPAddresses/192.168.0.0/16_network_edge (0.00s) 2026-10-22T08:24:29.805419336Z --- PASS: TestIsBlockedTarget_IPAddresses/AWS_metadata_endpoint (0.00s) 2026-10-22T08:24:29.805454119Z --- PASS: TestIsBlockedTarget_IPAddresses/Link-local_address (0.00s) 2026-10-22T08:24:29.805488916Z --- PASS: TestIsBlockedTarget_IPAddresses/IPv6_loopback (0.00s) 2026-10-22T08:24:29.805523115Z --- PASS: TestIsBlockedTarget_IPAddresses/IPv6_unique_local_fc00 (0.00s) 2026-10-22T08:24:29.805558014Z --- PASS: TestIsBlockedTarget_IPAddresses/IPv6_unique_local_fd00 (0.00s) 2026-10-22T08:24:29.805592085Z --- PASS: TestIsBlockedTarget_IPAddresses/IPv6_link-local (0.00s) 2026-10-22T08:24:29.805625875Z --- PASS: TestIsBlockedTarget_IPAddresses/Google_DNS (0.00s) 2026-10-22T08:24:29.80565776Z --- PASS: TestIsBlockedTarget_IPAddresses/Cloudflare_DNS (0.00s) 2026-10-22T08:24:29.805693978Z --- PASS: TestIsBlockedTarget_IPAddresses/Public_IP (0.00s) 2026-10-22T08:24:29.805727128Z --- PASS: TestIsBlockedTarget_IPAddresses/Public_IPv6 (0.00s) 2026-10-22T08:24:29.805757319Z --- PASS: TestIsBlockedTarget_IPAddresses/Just_outside_172.16.0.0/12 (0.00s) 2026-10-22T08:24:29.805793302Z --- PASS: TestIsBlockedTarget_IPAddresses/Just_outside_172.16.0.0/12_upper (0.00s) 2026-10-22T08:24:29.805808662Z === RUN TestIsBlockedTarget_Hostnames 2026-10-22T08:24:29.805830747Z === RUN TestIsBlockedTarget_Hostnames/localhost 2026-10-22T08:24:29.805853281Z === RUN TestIsBlockedTarget_Hostnames/google.com 2026-10-22T08:24:29.805879722Z === RUN TestIsBlockedTarget_Hostnames/non-existent_domain 2026-10-22T08:24:29.805907848Z --- PASS: TestIsBlockedTarget_Hostnames (0.05s) 2026-10-22T08:24:29.80594124Z --- PASS: TestIsBlockedTarget_Hostnames/localhost (0.00s) 2026-10-22T08:24:29.805963294Z --- PASS: TestIsBlockedTarget_Hostnames/google.com (0.02s) 2026-10-22T08:24:29.805989432Z --- PASS: TestIsBlockedTarget_Hostnames/non-existent_domain (0.03s) 2026-10-22T08:24:29.806006977Z === RUN TestValidateExternalRouteTarget 2026-10-22T08:24:29.806025406Z === RUN TestValidateExternalRouteTarget/loopback_IP 2026-10-22T08:24:29.806044716Z === RUN TestValidateExternalRouteTarget/private_network 2026-10-22T08:24:29.806054227Z === RUN TestValidateExternalRouteTarget/AWS_metadata 2026-10-22T08:24:29.806060239Z === RUN TestValidateExternalRouteTarget/localhost 2026-10-22T08:24:29.806073025Z === RUN TestValidateExternalRouteTarget/public_IP 2026-10-22T08:24:29.806089583Z --- PASS: TestValidateExternalRouteTarget (0.00s) 2026-10-22T08:24:29.806119048Z --- PASS: TestValidateExternalRouteTarget/loopback_IP (0.00s) 2026-10-22T08:24:29.806143005Z --- PASS: TestValidateExternalRouteTarget/private_network (0.00s) 2026-10-22T08:24:29.806164163Z --- PASS: TestValidateExternalRouteTarget/AWS_metadata (0.00s) 2026-10-22T08:24:29.806185069Z --- PASS: TestValidateExternalRouteTarget/localhost (0.00s) 2026-10-22T08:24:29.806211203Z --- PASS: TestValidateExternalRouteTarget/public_IP (0.00s) 2026-10-22T08:24:29.806223379Z === RUN TestResolveAndValidateHost_IPAddresses 2026-10-22T08:24:29.806239874Z === RUN TestResolveAndValidateHost_IPAddresses/public_IP_returned_as-is 2026-10-22T08:24:29.806254654Z === RUN TestResolveAndValidateHost_IPAddresses/blocked_loopback_IP 2026-10-22T08:24:29.806268482Z === RUN TestResolveAndValidateHost_IPAddresses/blocked_private_IP 2026-10-22T08:24:29.80627848Z === RUN TestResolveAndValidateHost_IPAddresses/blocked_metadata_IP 2026-10-22T08:24:29.806289902Z --- PASS: TestResolveAndValidateHost_IPAddresses (0.00s) 2026-10-22T08:24:29.8063397Z --- PASS: TestResolveAndValidateHost_IPAddresses/public_IP_returned_as-is (0.00s) 2026-10-22T08:24:29.806377979Z --- PASS: TestResolveAndValidateHost_IPAddresses/blocked_loopback_IP (0.00s) 2026-10-22T08:24:29.806407778Z --- PASS: TestResolveAndValidateHost_IPAddresses/blocked_private_IP (0.00s) 2026-10-22T08:24:29.806446541Z --- PASS: TestResolveAndValidateHost_IPAddresses/blocked_metadata_IP (0.00s) 2026-10-22T08:24:29.806464422Z === RUN TestResolveAndValidateHost_Hostname 2026-10-22T08:24:29.806481846Z --- PASS: TestResolveAndValidateHost_Hostname (0.01s) 2026-10-22T08:24:29.806493289Z === RUN TestIsBlockedIP 2026-10-22T08:24:29.806502612Z === RUN TestIsBlockedIP/127.0.0.1 2026-10-22T08:24:29.806518163Z === RUN TestIsBlockedIP/10.0.0.1 2026-10-22T08:24:29.806539682Z === RUN TestIsBlockedIP/172.16.0.1 2026-10-22T08:24:29.806549738Z === RUN TestIsBlockedIP/192.168.1.1 2026-10-22T08:24:29.806565826Z === RUN TestIsBlockedIP/169.254.169.254 2026-10-22T08:24:29.806575174Z === RUN TestIsBlockedIP/0.0.0.0 2026-10-22T08:24:29.806582006Z === RUN TestIsBlockedIP/8.8.8.8 2026-10-22T08:24:29.806586577Z === RUN TestIsBlockedIP/1.1.1.1 2026-10-22T08:24:29.806590993Z === RUN TestIsBlockedIP/203.0.113.1 2026-10-22T08:24:29.806596148Z --- PASS: TestIsBlockedIP (0.00s) 2026-10-22T08:24:29.80661193Z --- PASS: TestIsBlockedIP/127.0.0.1 (0.00s) 2026-10-22T08:24:29.806628253Z --- PASS: TestIsBlockedIP/10.0.0.1 (0.00s) 2026-10-22T08:24:29.806643465Z --- PASS: TestIsBlockedIP/172.16.0.1 (0.00s) 2026-10-22T08:24:29.806676257Z --- PASS: TestIsBlockedIP/192.168.1.1 (0.00s) 2026-10-22T08:24:29.806700041Z --- PASS: TestIsBlockedIP/169.254.169.254 (0.00s) 2026-10-22T08:24:29.80672015Z --- PASS: TestIsBlockedIP/0.0.0.0 (0.00s) 2026-10-22T08:24:29.806740447Z --- PASS: TestIsBlockedIP/8.8.8.8 (0.00s) 2026-10-22T08:24:29.806761149Z --- PASS: TestIsBlockedIP/1.1.1.1 (0.00s) 2026-10-22T08:24:29.806775944Z --- PASS: TestIsBlockedIP/203.0.113.1 (0.00s) 2026-10-22T08:24:29.806783811Z PASS 2026-10-22T08:24:29.806804102Z ok github.com/bnema/gordon/internal/usecase/proxy 1.130s 2026-10-22T08:24:29.806818987Z === RUN TestClassifyResource 2026-10-22T08:24:29.806831354Z === RUN TestClassifyResource/nil 2026-10-22T08:24:29.80684071Z === RUN TestClassifyResource/foreign 2026-10-22T08:24:29.806849023Z === RUN TestClassifyResource/managed_only 2026-10-22T08:24:29.806859019Z === RUN TestClassifyResource/managed_false 2026-10-22T08:24:29.806871319Z === RUN TestClassifyResource/service 2026-10-22T08:24:29.806881003Z === RUN TestClassifyResource/service_name 2026-10-22T08:24:29.806890248Z === RUN TestClassifyResource/app_wins_over_service 2026-10-22T08:24:29.806899541Z --- PASS: TestClassifyResource (0.00s) 2026-10-22T08:24:29.806918378Z --- PASS: TestClassifyResource/nil (0.00s) 2026-10-22T08:24:29.806940216Z --- PASS: TestClassifyResource/foreign (0.00s) 2026-10-22T08:24:29.806957657Z --- PASS: TestClassifyResource/managed_only (0.00s) 2026-10-22T08:24:29.806972915Z --- PASS: TestClassifyResource/managed_false (0.00s) 2026-10-22T08:24:29.806987153Z --- PASS: TestClassifyResource/service (0.00s) 2026-10-22T08:24:29.807001991Z --- PASS: TestClassifyResource/service_name (0.00s) 2026-10-22T08:24:29.807026396Z --- PASS: TestClassifyResource/app_wins_over_service (0.00s) 2026-10-22T08:24:29.807040781Z === RUN TestPlanRegistryTagsRetentionWindow 2026-10-22T08:24:29.807056416Z --- PASS: TestPlanRegistryTagsRetentionWindow (0.00s) 2026-10-22T08:24:29.807067937Z === RUN TestPlanRegistryTagsLatestCountsSeparately 2026-10-22T08:24:29.807081527Z --- PASS: TestPlanRegistryTagsLatestCountsSeparately (0.00s) 2026-10-22T08:24:29.807093827Z === RUN TestPlanRegistryTagsEqualTimestampsAreDeterministic 2026-10-22T08:24:29.807103428Z --- PASS: TestPlanRegistryTagsEqualTimestampsAreDeterministic (0.00s) 2026-10-22T08:24:29.807112934Z === RUN TestPlanRegistryTagsProtectedRootsSurviveRetention 2026-10-22T08:24:29.807122002Z --- PASS: TestPlanRegistryTagsProtectedRootsSurviveRetention (0.00s) 2026-10-22T08:24:29.807132757Z === RUN TestPlanRegistryTagsFailClosed 2026-10-22T08:24:29.807146858Z --- PASS: TestPlanRegistryTagsFailClosed (0.00s) 2026-10-22T08:24:29.807156336Z === RUN TestPlanRegistryTagsKeepLastZeroSkips 2026-10-22T08:24:29.807165978Z --- PASS: TestPlanRegistryTagsKeepLastZeroSkips (0.00s) 2026-10-22T08:24:29.807179356Z === RUN TestPlanRegistryTagsRejectsInvalidIdentity 2026-10-22T08:24:29.807188934Z --- PASS: TestPlanRegistryTagsRejectsInvalidIdentity (0.00s) 2026-10-22T08:24:29.807199281Z === RUN TestPlanRuntimeImagesMixedBatch 2026-10-22T08:24:29.807213686Z --- PASS: TestPlanRuntimeImagesMixedBatch (0.00s) 2026-10-22T08:24:29.807230751Z === RUN TestPlanRuntimeImagesForgedLabelsNeverAuthorizeDeletion 2026-10-22T08:24:29.807244958Z --- PASS: TestPlanRuntimeImagesForgedLabelsNeverAuthorizeDeletion (0.00s) 2026-10-22T08:24:29.807257545Z === RUN TestPlanRuntimeImagesAnyMatchingClaimProtects 2026-10-22T08:24:29.807269968Z --- PASS: TestPlanRuntimeImagesAnyMatchingClaimProtects (0.00s) 2026-10-22T08:24:29.807279145Z === RUN TestPlanRuntimeImagesReleasedClaimIsEligible 2026-10-22T08:24:29.807301872Z --- PASS: TestPlanRuntimeImagesReleasedClaimIsEligible (0.00s) 2026-10-22T08:24:29.807313491Z === RUN TestPlanRuntimeImagesAttachedClaimProtects 2026-10-22T08:24:29.807322974Z --- PASS: TestPlanRuntimeImagesAttachedClaimProtects (0.00s) 2026-10-22T08:24:29.807336152Z === RUN TestPlanRuntimeImagesProtectionRootsAndUnknowns 2026-10-22T08:24:29.807347749Z --- PASS: TestPlanRuntimeImagesProtectionRootsAndUnknowns (0.00s) 2026-10-22T08:24:29.80735701Z === RUN TestPlanRuntimeImagesProtectsUnknownIdentity 2026-10-22T08:24:29.807367938Z --- PASS: TestPlanRuntimeImagesProtectsUnknownIdentity (0.00s) 2026-10-22T08:24:29.807379564Z === RUN TestPlanVolumesProtectsEverythingExceptReleased 2026-10-22T08:24:29.807389025Z --- PASS: TestPlanVolumesProtectsEverythingExceptReleased (0.00s) 2026-10-22T08:24:29.807399737Z === RUN TestPlanVolumesReleasedRequiresAgreeingLabels 2026-10-22T08:24:29.807419171Z === RUN TestPlanVolumesReleasedRequiresAgreeingLabels/labels_agree_by_name 2026-10-22T08:24:29.807432283Z === RUN TestPlanVolumesReleasedRequiresAgreeingLabels/labels_agree_by_uuid 2026-10-22T08:24:29.807442803Z === RUN TestPlanVolumesReleasedRequiresAgreeingLabels/missing_managed_marker 2026-10-22T08:24:29.80747962Z === RUN TestPlanVolumesReleasedRequiresAgreeingLabels/missing_app_label 2026-10-22T08:24:29.807511061Z === RUN TestPlanVolumesReleasedRequiresAgreeingLabels/contradicting_app 2026-10-22T08:24:29.807523797Z === RUN TestPlanVolumesReleasedRequiresAgreeingLabels/contradicting_service 2026-10-22T08:24:29.807550383Z === RUN TestPlanVolumesReleasedRequiresAgreeingLabels/no_labels 2026-10-22T08:24:29.807571613Z === RUN TestPlanVolumesReleasedRequiresAgreeingLabels/missing_incarnation_stamp 2026-10-22T08:24:29.807589985Z --- PASS: TestPlanVolumesReleasedRequiresAgreeingLabels (0.00s) 2026-10-22T08:24:29.807618235Z --- PASS: TestPlanVolumesReleasedRequiresAgreeingLabels/labels_agree_by_name (0.00s) 2026-10-22T08:24:29.80764301Z --- PASS: TestPlanVolumesReleasedRequiresAgreeingLabels/labels_agree_by_uuid (0.00s) 2026-10-22T08:24:29.807670897Z --- PASS: TestPlanVolumesReleasedRequiresAgreeingLabels/missing_managed_marker (0.00s) 2026-10-22T08:24:29.807693609Z --- PASS: TestPlanVolumesReleasedRequiresAgreeingLabels/missing_app_label (0.00s) 2026-10-22T08:24:29.807717509Z --- PASS: TestPlanVolumesReleasedRequiresAgreeingLabels/contradicting_app (0.00s) 2026-10-22T08:24:29.807740082Z --- PASS: TestPlanVolumesReleasedRequiresAgreeingLabels/contradicting_service (0.00s) 2026-10-22T08:24:29.807762955Z --- PASS: TestPlanVolumesReleasedRequiresAgreeingLabels/no_labels (0.00s) 2026-10-22T08:24:29.807783353Z --- PASS: TestPlanVolumesReleasedRequiresAgreeingLabels/missing_incarnation_stamp (0.00s) 2026-10-22T08:24:29.807802723Z === RUN TestPlanVolumesFailClosedOnIncompleteOwnership 2026-10-22T08:24:29.807813735Z --- PASS: TestPlanVolumesFailClosedOnIncompleteOwnership (0.00s) 2026-10-22T08:24:29.807826452Z === RUN TestPlanVolumesZeroDeletionIsSuccess 2026-10-22T08:24:29.807845468Z --- PASS: TestPlanVolumesZeroDeletionIsSuccess (0.00s) 2026-10-22T08:24:29.807855485Z === RUN TestPlanVolumesOrderIsDeterministic 2026-10-22T08:24:29.807864269Z --- PASS: TestPlanVolumesOrderIsDeterministic (0.00s) 2026-10-22T08:24:29.807876661Z === RUN TestPlansProduceValidPlanEntries 2026-10-22T08:24:29.807889887Z --- PASS: TestPlansProduceValidPlanEntries (0.00s) 2026-10-22T08:24:29.807899146Z PASS 2026-10-22T08:24:29.807915272Z ok github.com/bnema/gordon/internal/usecase/pruneguard 1.014s 2026-10-22T08:24:29.807925375Z === RUN TestResolveEffectiveChallenge 2026-10-22T08:24:29.807935351Z === RUN TestResolveEffectiveChallenge/disabled_returns_auto_mode_with_none_source 2026-10-22T08:24:29.80795127Z === RUN TestResolveEffectiveChallenge/disabled_preserves_configured_challenge_in_ConfiguredMode 2026-10-22T08:24:29.807966791Z === RUN TestResolveEffectiveChallenge/disabled_preserves_cloudflare-dns-01_in_ConfiguredMode 2026-10-22T08:24:29.8079794Z === RUN TestResolveEffectiveChallenge/disabled_with_unparseable_challenge_defaults_ConfiguredMode_to_auto 2026-10-22T08:24:29.807990145Z === RUN TestResolveEffectiveChallenge/enabled_requires_non-empty_email 2026-10-22T08:24:29.808018543Z === RUN TestResolveEffectiveChallenge/enabled_requires_valid_tls_port_in_1..65535 2026-10-22T08:24:29.808031259Z === RUN TestResolveEffectiveChallenge/auto_with_cloudflare_token_returns_dns-01 2026-10-22T08:24:29.808042722Z === RUN TestResolveEffectiveChallenge/auto_without_token_returns_http-01 2026-10-22T08:24:29.808069439Z === RUN TestResolveEffectiveChallenge/forced_cloudflare-dns-01_requires_token 2026-10-22T08:24:29.808117397Z === RUN TestResolveEffectiveChallenge/http-01_requires_valid_http_port_in_1..65535 2026-10-22T08:24:29.808148134Z === RUN TestResolveEffectiveChallenge/cloudflare-dns-01_preserves_resolver_errors 2026-10-22T08:24:29.808178074Z === RUN TestResolveEffectiveChallenge/nil_resolver_in_auto_mode_returns_http-01 2026-10-22T08:24:29.808207327Z === RUN TestResolveEffectiveChallenge/forced_cloudflare-dns-01_with_nil_resolver_returns_missing_token 2026-10-22T08:24:29.808232992Z --- PASS: TestResolveEffectiveChallenge (0.00s) 2026-10-22T08:24:29.80827962Z --- PASS: TestResolveEffectiveChallenge/disabled_returns_auto_mode_with_none_source (0.00s) 2026-10-22T08:24:29.808324485Z --- PASS: TestResolveEffectiveChallenge/disabled_preserves_configured_challenge_in_ConfiguredMode (0.00s) 2026-10-22T08:24:29.808373587Z --- PASS: TestResolveEffectiveChallenge/disabled_preserves_cloudflare-dns-01_in_ConfiguredMode (0.00s) 2026-10-22T08:24:29.808427398Z --- PASS: TestResolveEffectiveChallenge/disabled_with_unparseable_challenge_defaults_ConfiguredMode_to_auto (0.00s) 2026-10-22T08:24:29.808473453Z --- PASS: TestResolveEffectiveChallenge/enabled_requires_non-empty_email (0.00s) 2026-10-22T08:24:29.808521919Z --- PASS: TestResolveEffectiveChallenge/enabled_requires_valid_tls_port_in_1..65535 (0.00s) 2026-10-22T08:24:29.808569887Z --- PASS: TestResolveEffectiveChallenge/auto_with_cloudflare_token_returns_dns-01 (0.00s) 2026-10-22T08:24:29.808614871Z --- PASS: TestResolveEffectiveChallenge/auto_without_token_returns_http-01 (0.00s) 2026-10-22T08:24:29.80866123Z --- PASS: TestResolveEffectiveChallenge/forced_cloudflare-dns-01_requires_token (0.00s) 2026-10-22T08:24:29.808707954Z --- PASS: TestResolveEffectiveChallenge/http-01_requires_valid_http_port_in_1..65535 (0.00s) 2026-10-22T08:24:29.808754295Z --- PASS: TestResolveEffectiveChallenge/cloudflare-dns-01_preserves_resolver_errors (0.00s) 2026-10-22T08:24:29.808803083Z --- PASS: TestResolveEffectiveChallenge/nil_resolver_in_auto_mode_returns_http-01 (0.00s) 2026-10-22T08:24:29.808855559Z --- PASS: TestResolveEffectiveChallenge/forced_cloudflare-dns-01_with_nil_resolver_returns_missing_token (0.00s) 2026-10-22T08:24:29.808882911Z === RUN TestDefaultDNSConfig 2026-10-22T08:24:29.808909046Z --- PASS: TestDefaultDNSConfig (0.00s) 2026-10-22T08:24:29.808927463Z === RUN TestDNSConfigValidateNormalizesResolvers 2026-10-22T08:24:29.808942959Z --- PASS: TestDNSConfigValidateNormalizesResolvers (0.00s) 2026-10-22T08:24:29.808961362Z === RUN TestDNSConfigValidate 2026-10-22T08:24:29.808978792Z === RUN TestDNSConfigValidate/valid 2026-10-22T08:24:29.80899667Z === RUN TestDNSConfigValidate/empty_resolvers 2026-10-22T08:24:29.809015667Z === RUN TestDNSConfigValidate/resolver_missing_port 2026-10-22T08:24:29.809033638Z === RUN TestDNSConfigValidate/whitespace-only_resolver 2026-10-22T08:24:29.809052372Z === RUN TestDNSConfigValidate/malformed_resolver_port 2026-10-22T08:24:29.809067808Z === RUN TestDNSConfigValidate/zero_timeout 2026-10-22T08:24:29.809083114Z === RUN TestDNSConfigValidate/zero_polling_interval 2026-10-22T08:24:29.809102173Z === RUN TestDNSConfigValidate/polling_interval_equals_timeout 2026-10-22T08:24:29.809122506Z --- PASS: TestDNSConfigValidate (0.00s) 2026-10-22T08:24:29.809153579Z --- PASS: TestDNSConfigValidate/valid (0.00s) 2026-10-22T08:24:29.809192205Z --- PASS: TestDNSConfigValidate/empty_resolvers (0.00s) 2026-10-22T08:24:29.809232272Z --- PASS: TestDNSConfigValidate/resolver_missing_port (0.00s) 2026-10-22T08:24:29.809269752Z --- PASS: TestDNSConfigValidate/whitespace-only_resolver (0.00s) 2026-10-22T08:24:29.809296773Z --- PASS: TestDNSConfigValidate/malformed_resolver_port (0.00s) 2026-10-22T08:24:29.809320126Z --- PASS: TestDNSConfigValidate/zero_timeout (0.00s) 2026-10-22T08:24:29.809347583Z --- PASS: TestDNSConfigValidate/zero_polling_interval (0.00s) 2026-10-22T08:24:29.809375423Z --- PASS: TestDNSConfigValidate/polling_interval_equals_timeout (0.00s) 2026-10-22T08:24:29.809389059Z === RUN TestHTTP01Challenges 2026-10-22T08:24:29.809404343Z === RUN TestHTTP01Challenges/full_lifecycle 2026-10-22T08:24:29.809417846Z === RUN TestHTTP01Challenges/concurrent_access_is_correct 2026-10-22T08:24:29.809431663Z --- PASS: TestHTTP01Challenges (0.00s) 2026-10-22T08:24:29.809455225Z --- PASS: TestHTTP01Challenges/full_lifecycle (0.00s) 2026-10-22T08:24:29.809484479Z --- PASS: TestHTTP01Challenges/concurrent_access_is_correct (0.00s) 2026-10-22T08:24:29.809498772Z === RUN TestHTTP01ChallengesRejectUnsafeToken 2026-10-22T08:24:29.809513916Z === RUN TestHTTP01ChallengesRejectUnsafeToken/path_traversal_token_../secret_is_rejected 2026-10-22T08:24:29.809529457Z === RUN TestHTTP01ChallengesRejectUnsafeToken/token_with_slash_is_rejected 2026-10-22T08:24:29.809545598Z === RUN TestHTTP01ChallengesRejectUnsafeToken/token_with_backslash_is_rejected 2026-10-22T08:24:29.8095606Z === RUN TestHTTP01ChallengesRejectUnsafeToken/empty_token_is_rejected 2026-10-22T08:24:29.809574616Z === RUN TestHTTP01ChallengesRejectUnsafeToken/'..'_token_is_rejected 2026-10-22T08:24:29.809588641Z === RUN TestHTTP01ChallengesRejectUnsafeToken/empty_keyAuth_is_silently_ignored 2026-10-22T08:24:29.809603428Z === RUN TestHTTP01ChallengesRejectUnsafeToken/valid_tokens_are_accepted_and_retrievable 2026-10-22T08:24:29.809619078Z --- PASS: TestHTTP01ChallengesRejectUnsafeToken (0.00s) 2026-10-22T08:24:29.809653814Z --- PASS: TestHTTP01ChallengesRejectUnsafeToken/path_traversal_token_../secret_is_rejected (0.00s) 2026-10-22T08:24:29.80968694Z --- PASS: TestHTTP01ChallengesRejectUnsafeToken/token_with_slash_is_rejected (0.00s) 2026-10-22T08:24:29.809720745Z --- PASS: TestHTTP01ChallengesRejectUnsafeToken/token_with_backslash_is_rejected (0.00s) 2026-10-22T08:24:29.809750052Z --- PASS: TestHTTP01ChallengesRejectUnsafeToken/empty_token_is_rejected (0.00s) 2026-10-22T08:24:29.809779964Z --- PASS: TestHTTP01ChallengesRejectUnsafeToken/'..'_token_is_rejected (0.00s) 2026-10-22T08:24:29.809813421Z --- PASS: TestHTTP01ChallengesRejectUnsafeToken/empty_keyAuth_is_silently_ignored (0.00s) 2026-10-22T08:24:29.809847748Z --- PASS: TestHTTP01ChallengesRejectUnsafeToken/valid_tokens_are_accepted_and_retrievable (0.00s) 2026-10-22T08:24:29.809865633Z === RUN TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup 2026-10-22T08:24:29.809883585Z === RUN TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup/GetCertificate_returns_cert_for_app_example_com 2026-10-22T08:24:29.809901041Z === RUN TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup/GetCertificate_returns_cert_for_api_prod_example_com 2026-10-22T08:24:29.8099202Z === RUN TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup/GetCertificate_returns_cert_for_example_com 2026-10-22T08:24:29.809940286Z === RUN TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup/GetCertificate_returns_cert_for_management_host 2026-10-22T08:24:29.809958796Z === RUN TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup/GetCertificate_returns_nil_for_unknown_wildcard_sibling 2026-10-22T08:24:29.809975432Z === RUN TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup/GetCertificate_returns_nil_for_unrelated_host 2026-10-22T08:24:29.80999141Z --- PASS: TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup (0.33s) 2026-10-22T08:24:29.8100342Z --- PASS: TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup/GetCertificate_returns_cert_for_app_example_com (0.00s) 2026-10-22T08:24:29.810077408Z --- PASS: TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup/GetCertificate_returns_cert_for_api_prod_example_com (0.00s) 2026-10-22T08:24:29.810119496Z --- PASS: TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup/GetCertificate_returns_cert_for_example_com (0.00s) 2026-10-22T08:24:29.81016224Z --- PASS: TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup/GetCertificate_returns_cert_for_management_host (0.00s) 2026-10-22T08:24:29.81020648Z --- PASS: TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup/GetCertificate_returns_nil_for_unknown_wildcard_sibling (0.00s) 2026-10-22T08:24:29.810247727Z --- PASS: TestPublicTLSIntegration_DNS01WildcardStatusAndCertificateLookup/GetCertificate_returns_nil_for_unrelated_host (0.00s) 2026-10-22T08:24:29.810264413Z === RUN TestPublicTLSIntegration_HTTP01PerRouteChallengeFlow 2026-10-22T08:24:29.810278735Z --- PASS: TestPublicTLSIntegration_HTTP01PerRouteChallengeFlow (0.06s) 2026-10-22T08:24:29.810293912Z === RUN TestPublicTLSIntegration_MissingRequiredCertReportsCoverageError 2026-10-22T08:24:29.810310531Z --- PASS: TestPublicTLSIntegration_MissingRequiredCertReportsCoverageError (0.00s) 2026-10-22T08:24:29.810323249Z === RUN TestShouldRenew 2026-10-22T08:24:29.810337322Z === RUN TestShouldRenew/cert_with_NotAfter_45_days_from_now_should_not_renew 2026-10-22T08:24:29.81035284Z === RUN TestShouldRenew/cert_with_NotAfter_10_days_from_now_should_renew 2026-10-22T08:24:29.810366883Z === RUN TestShouldRenew/expired_cert_should_renew 2026-10-22T08:24:29.810382793Z === RUN TestShouldRenew/cert_with_zero_NotAfter_should_renew 2026-10-22T08:24:29.810395644Z --- PASS: TestShouldRenew (0.00s) 2026-10-22T08:24:29.810426155Z --- PASS: TestShouldRenew/cert_with_NotAfter_45_days_from_now_should_not_renew (0.00s) 2026-10-22T08:24:29.810464759Z --- PASS: TestShouldRenew/cert_with_NotAfter_10_days_from_now_should_renew (0.00s) 2026-10-22T08:24:29.810491947Z --- PASS: TestShouldRenew/expired_cert_should_renew (0.00s) 2026-10-22T08:24:29.810520332Z --- PASS: TestShouldRenew/cert_with_zero_NotAfter_should_renew (0.00s) 2026-10-22T08:24:29.810535354Z === RUN TestRenewDueCertificatesRequiresDependencies 2026-10-22T08:24:29.810549169Z --- PASS: TestRenewDueCertificatesRequiresDependencies (0.00s) 2026-10-22T08:24:29.810561017Z === RUN TestRenewalLoopStops 2026-10-22T08:24:29.810573457Z --- PASS: TestRenewalLoopStops (0.01s) 2026-10-22T08:24:29.810587445Z === RUN TestRenewalLoop_ReconcilesMissingCertificatesOnTick 2026-10-22T08:24:29.810603648Z --- PASS: TestRenewalLoop_ReconcilesMissingCertificatesOnTick (0.10s) 2026-10-22T08:24:29.810617553Z === RUN TestRenewDueCertificatesSavesAndUpdatesCache 2026-10-22T08:24:29.810632724Z --- PASS: TestRenewDueCertificatesSavesAndUpdatesCache (0.34s) 2026-10-22T08:24:29.810646586Z === RUN TestServiceReconcileLimitsMissingObtainsPerRun 2026-10-22T08:24:29.810694624Z --- PASS: TestServiceReconcileLimitsMissingObtainsPerRun (0.53s) 2026-10-22T08:24:29.810710872Z === RUN TestServiceSetAdditionalHosts_ImmediatelyRevokesRemovedManagementDomain 2026-10-22T08:24:29.810726117Z --- PASS: TestServiceSetAdditionalHosts_ImmediatelyRevokesRemovedManagementDomain (0.07s) 2026-10-22T08:24:29.810742914Z === RUN TestServiceSetAdditionalHosts_ReconcileReplacesManagementDomain 2026-10-22T08:24:29.810770952Z --- PASS: TestServiceSetAdditionalHosts_ReconcileReplacesManagementDomain (0.18s) 2026-10-22T08:24:29.810824804Z === RUN TestServiceReconcileRotatesBatchAfterFailedObtain 2026-10-22T08:24:29.81085175Z --- PASS: TestServiceReconcileRotatesBatchAfterFailedObtain (0.12s) 2026-10-22T08:24:29.81087033Z === RUN TestServiceLoadUsesZeroCursorWhenLoadStateFails 2026-10-22T08:24:29.810894452Z 2026-10-22T08:24:16Z WRN failed to load certificate store state; using in-memory ACME obtain cursor error="state unreadable" 2026-10-22T08:24:29.810917467Z --- PASS: TestServiceLoadUsesZeroCursorWhenLoadStateFails (0.16s) 2026-10-22T08:24:29.810938368Z === RUN TestServiceReconcileUsesInMemoryCursorWhenPersistFails 2026-10-22T08:24:29.810962553Z --- PASS: TestServiceReconcileUsesInMemoryCursorWhenPersistFails (0.11s) 2026-10-22T08:24:29.810982862Z === RUN TestServiceReconcilePersistsBatchCursorAcrossRestart 2026-10-22T08:24:29.81101268Z --- PASS: TestServiceReconcilePersistsBatchCursorAcrossRestart (0.21s) 2026-10-22T08:24:29.811039343Z === RUN TestServiceReconcileObtainsMissingHTTP01Cert 2026-10-22T08:24:29.811061771Z --- PASS: TestServiceReconcileObtainsMissingHTTP01Cert (0.04s) 2026-10-22T08:24:29.81108776Z === RUN TestServiceReconcile_SerializesConcurrentRuns 2026-10-22T08:24:29.811106846Z --- PASS: TestServiceReconcile_SerializesConcurrentRuns (0.19s) 2026-10-22T08:24:29.81112554Z === RUN TestServiceReconcileResolvesMissingEffectiveChallenge 2026-10-22T08:24:29.811149635Z --- PASS: TestServiceReconcileResolvesMissingEffectiveChallenge (0.00s) 2026-10-22T08:24:29.811169132Z === RUN TestServiceStatusReportsCoverage 2026-10-22T08:24:29.811191164Z --- PASS: TestServiceStatusReportsCoverage (0.03s) 2026-10-22T08:24:29.811213534Z === RUN TestServiceGetCertificateReturnsErrTLSRouteNotCovered 2026-10-22T08:24:29.811244825Z --- PASS: TestServiceGetCertificateReturnsErrTLSRouteNotCovered (0.00s) 2026-10-22T08:24:29.811272399Z === RUN TestServiceReconcileDNS01BrokenResolverReturnsErrTLSRouteNotCovered 2026-10-22T08:24:29.811299671Z --- PASS: TestServiceReconcileDNS01BrokenResolverReturnsErrTLSRouteNotCovered (0.00s) 2026-10-22T08:24:29.811319544Z === RUN TestServiceLoadParsesPEMIntoTLSCertificate 2026-10-22T08:24:29.811348304Z --- PASS: TestServiceLoadParsesPEMIntoTLSCertificate (0.07s) 2026-10-22T08:24:29.811368287Z === RUN TestServiceStatusReportsRouteErrorAfterObtainFailure 2026-10-22T08:24:29.811388048Z --- PASS: TestServiceStatusReportsRouteErrorAfterObtainFailure (0.00s) 2026-10-22T08:24:29.811409352Z === RUN TestServiceStatusCoverageUsesServingCertDespiteTransientError 2026-10-22T08:24:29.811429976Z --- PASS: TestServiceStatusCoverageUsesServingCertDespiteTransientError (0.20s) 2026-10-22T08:24:29.811452382Z === RUN TestServiceStatusRedactsSensitiveStrings 2026-10-22T08:24:29.811499384Z service_test.go:1118: sanitized LastError: "failed to obtain: token=redacted provider said invalid" 2026-10-22T08:24:29.811528554Z --- PASS: TestServiceStatusRedactsSensitiveStrings (0.20s) 2026-10-22T08:24:29.811551105Z === RUN TestSanitizeError_Empty 2026-10-22T08:24:29.811574521Z --- PASS: TestSanitizeError_Empty (0.00s) 2026-10-22T08:24:29.811599214Z === RUN TestSanitizeError_NoSensitiveData 2026-10-22T08:24:29.81162448Z --- PASS: TestSanitizeError_NoSensitiveData (0.00s) 2026-10-22T08:24:29.811643889Z === RUN TestSanitizeError_KeyEqValue 2026-10-22T08:24:29.811668495Z --- PASS: TestSanitizeError_KeyEqValue (0.00s) 2026-10-22T08:24:29.811690136Z === RUN TestSanitizeError_KeyEqQuotedValue 2026-10-22T08:24:29.811712643Z --- PASS: TestSanitizeError_KeyEqQuotedValue (0.00s) 2026-10-22T08:24:29.811735967Z === RUN TestSanitizeError_KeyEqSingleQuotedValue 2026-10-22T08:24:29.81175633Z --- PASS: TestSanitizeError_KeyEqSingleQuotedValue (0.00s) 2026-10-22T08:24:29.811785492Z === RUN TestSanitizeError_JSONKeyValue 2026-10-22T08:24:29.811797697Z --- PASS: TestSanitizeError_JSONKeyValue (0.00s) 2026-10-22T08:24:29.811812671Z === RUN TestSanitizeError_YAMLKeyValue 2026-10-22T08:24:29.81183065Z --- PASS: TestSanitizeError_YAMLKeyValue (0.00s) 2026-10-22T08:24:29.811852237Z === RUN TestSanitizeError_CaseInsensitive 2026-10-22T08:24:29.811877859Z --- PASS: TestSanitizeError_CaseInsensitive (0.00s) 2026-10-22T08:24:29.811895723Z === RUN TestSanitizeError_MixedFormats 2026-10-22T08:24:29.811921217Z --- PASS: TestSanitizeError_MixedFormats (0.00s) 2026-10-22T08:24:29.811946036Z === RUN TestSanitizeError_PreservesSafeContext 2026-10-22T08:24:29.811972897Z --- PASS: TestSanitizeError_PreservesSafeContext (0.00s) 2026-10-22T08:24:29.811997477Z === RUN TestDeriveTargets_HTTP01PerRoute 2026-10-22T08:24:29.812024048Z --- PASS: TestDeriveTargets_HTTP01PerRoute (0.00s) 2026-10-22T08:24:29.812048713Z === RUN TestDeriveTargets_DNS01WildcardBases 2026-10-22T08:24:29.812072777Z --- PASS: TestDeriveTargets_DNS01WildcardBases (0.00s) 2026-10-22T08:24:29.812098176Z === RUN TestDeriveTargets_IncludesAdditionalHosts 2026-10-22T08:24:29.812123166Z --- PASS: TestDeriveTargets_IncludesAdditionalHosts (0.00s) 2026-10-22T08:24:29.812147108Z === RUN TestDeriveTargets_IncludesExternalRoutes 2026-10-22T08:24:29.812169983Z --- PASS: TestDeriveTargets_IncludesExternalRoutes (0.00s) 2026-10-22T08:24:29.812187873Z === RUN TestDeriveTargets_SkipsNeverTLSHosts 2026-10-22T08:24:29.812200743Z --- PASS: TestDeriveTargets_SkipsNeverTLSHosts (0.00s) 2026-10-22T08:24:29.812213934Z === RUN TestDeriveTargets_DNS01NilResolver_ReturnsError 2026-10-22T08:24:29.812227382Z --- PASS: TestDeriveTargets_DNS01NilResolver_ReturnsError (0.00s) 2026-10-22T08:24:29.812244789Z === RUN TestDeriveTargets_DNS01MismatchedZone_ReturnsError 2026-10-22T08:24:29.812261272Z --- PASS: TestDeriveTargets_DNS01MismatchedZone_ReturnsError (0.00s) 2026-10-22T08:24:29.812275952Z === RUN TestDeriveTargets_DuplicateCanonicalization 2026-10-22T08:24:29.81228951Z --- PASS: TestDeriveTargets_DuplicateCanonicalization (0.00s) 2026-10-22T08:24:29.812300159Z PASS 2026-10-22T08:24:29.812313323Z ok github.com/bnema/gordon/internal/usecase/publictls 4.006s 2026-10-22T08:24:29.812325951Z === RUN TestService_GetManifest_Success 2026-10-22T08:24:29.812338599Z --- PASS: TestService_GetManifest_Success (0.00s) 2026-10-22T08:24:29.812353103Z === RUN TestService_GetManifest_NotFound 2026-10-22T08:24:29.812375389Z 2026-10-22T08:24:15Z ERR failed to get manifest error="manifest not found" layer=usecase name=myapp reference=notexists usecase=GetManifest 2026-10-22T08:24:29.812391719Z --- PASS: TestService_GetManifest_NotFound (0.00s) 2026-10-22T08:24:29.812404496Z === RUN TestService_PutManifest_Success 2026-10-22T08:24:29.812428463Z 2026-10-22T08:24:15Z INF manifest stored digest=sha256:c5d902c53b4afcf32ad746fd9d696431650d3fbe8f7b10ca10519543fefd772c layer=usecase name=myapp reference=latest usecase=PutManifest 2026-10-22T08:24:29.812444032Z --- PASS: TestService_PutManifest_Success (0.00s) 2026-10-22T08:24:29.812461256Z === RUN TestService_PutManifest_RecordsPushMetrics 2026-10-22T08:24:29.812485609Z 2026-10-22T08:24:15Z INF manifest stored digest=sha256:c5d902c53b4afcf32ad746fd9d696431650d3fbe8f7b10ca10519543fefd772c layer=usecase name=myapp reference=latest usecase=PutManifest 2026-10-22T08:24:29.812503987Z --- PASS: TestService_PutManifest_RecordsPushMetrics (0.00s) 2026-10-22T08:24:29.812517591Z === RUN TestService_PutManifest_RejectsUnownedBlob 2026-10-22T08:24:29.812548024Z 2026-10-22T08:24:15Z ERR manifest references unowned content error="manifest references a blob the repository does not own: sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4" layer=usecase name=attacker reference=latest usecase=PutManifest 2026-10-22T08:24:29.812569995Z --- PASS: TestService_PutManifest_RejectsUnownedBlob (0.00s) 2026-10-22T08:24:29.81258421Z === RUN TestService_PutManifest_RejectsUnknownChildManifest 2026-10-22T08:24:29.812612203Z 2026-10-22T08:24:15Z ERR manifest references unowned content error="manifest references a blob the repository does not own: sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4" layer=usecase name=index reference=latest usecase=PutManifest 2026-10-22T08:24:29.812630798Z --- PASS: TestService_PutManifest_RejectsUnknownChildManifest (0.00s) 2026-10-22T08:24:29.812647595Z === RUN TestService_PutManifest_RejectsMalformedChildDigest 2026-10-22T08:24:29.812686162Z 2026-10-22T08:24:15Z ERR manifest references unowned content error="manifest references a blob the repository does not own: digest contains path traversal sequence" layer=usecase name=index reference=latest usecase=PutManifest 2026-10-22T08:24:29.812707976Z --- PASS: TestService_PutManifest_RejectsMalformedChildDigest (0.00s) 2026-10-22T08:24:29.812722856Z === RUN TestService_PutManifest_SHA512DigestDoesNotPublishEvent 2026-10-22T08:24:29.812760467Z 2026-10-22T08:24:15Z INF manifest stored digest=sha512:cfd0db72176a365d8b6d1b633dfc6d5c842fa936a2b777d81422fa9a72a64dab07889db3054394dd7d850b0e5028c8044fa7edf79f53b30cd1855f28747144ac layer=usecase name=myapp reference=sha512:cfd0db72176a365d8b6d1b633dfc6d5c842fa936a2b777d81422fa9a72a64dab07889db3054394dd7d850b0e5028c8044fa7edf79f53b30cd1855f28747144ac usecase=PutManifest 2026-10-22T08:24:29.812789818Z --- PASS: TestService_PutManifest_SHA512DigestDoesNotPublishEvent (0.00s) 2026-10-22T08:24:29.812800853Z === RUN TestService_PutManifest_RejectsDigestMismatch 2026-10-22T08:24:29.81281085Z --- PASS: TestService_PutManifest_RejectsDigestMismatch (0.00s) 2026-10-22T08:24:29.812826966Z === RUN TestService_GetBlobPath_RequiresRepositoryOwnership 2026-10-22T08:24:29.812841534Z --- PASS: TestService_GetBlobPath_RequiresRepositoryOwnership (0.00s) 2026-10-22T08:24:29.812857012Z === RUN TestService_GetBlobPath_IgnoresManifestReferences 2026-10-22T08:24:29.81287417Z --- PASS: TestService_GetBlobPath_IgnoresManifestReferences (0.00s) 2026-10-22T08:24:29.812889084Z === RUN TestService_GetBlobPath_OwnershipLookupError 2026-10-22T08:24:29.812916005Z 2026-10-22T08:24:15Z ERR failed to verify blob ownership error="ownership lookup failed" digest=sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 layer=usecase name=busy usecase=GetBlobPath 2026-10-22T08:24:29.812934618Z --- PASS: TestService_GetBlobPath_OwnershipLookupError (0.00s) 2026-10-22T08:24:29.812948034Z === RUN TestService_PutManifest_StorageError 2026-10-22T08:24:29.812971341Z 2026-10-22T08:24:15Z ERR failed to store manifest error="storage full" layer=usecase name=myapp reference=latest usecase=PutManifest 2026-10-22T08:24:29.812987021Z --- PASS: TestService_PutManifest_StorageError (0.00s) 2026-10-22T08:24:29.813000316Z === RUN TestService_PutManifest_EventPublishError 2026-10-22T08:24:29.813027617Z 2026-10-22T08:24:15Z WRN failed to publish image pushed event error="event bus error" layer=usecase name=myapp reference=latest usecase=PutManifest 2026-10-22T08:24:29.813055804Z 2026-10-22T08:24:15Z INF manifest stored digest=sha256:c5d902c53b4afcf32ad746fd9d696431650d3fbe8f7b10ca10519543fefd772c layer=usecase name=myapp reference=latest usecase=PutManifest 2026-10-22T08:24:29.813074116Z --- PASS: TestService_PutManifest_EventPublishError (0.00s) 2026-10-22T08:24:29.813088206Z === RUN TestService_PutManifest_NilEventBus 2026-10-22T08:24:29.813117378Z 2026-10-22T08:24:15Z INF manifest stored digest=sha256:c5d902c53b4afcf32ad746fd9d696431650d3fbe8f7b10ca10519543fefd772c layer=usecase name=myapp reference=latest usecase=PutManifest 2026-10-22T08:24:29.813134144Z --- PASS: TestService_PutManifest_NilEventBus (0.00s) 2026-10-22T08:24:29.813148277Z === RUN TestService_DeleteManifest_Success 2026-10-22T08:24:29.813169206Z 2026-10-22T08:24:15Z INF manifest deleted layer=usecase name=myapp reference=latest usecase=DeleteManifest 2026-10-22T08:24:29.814751911Z --- PASS: TestService_DeleteManifest_Success (0.00s) 2026-10-22T08:24:29.81477704Z === RUN TestService_DeleteManifest_Error 2026-10-22T08:24:29.814805469Z 2026-10-22T08:24:15Z ERR failed to delete manifest error="manifest not found" layer=usecase name=myapp reference=latest usecase=DeleteManifest 2026-10-22T08:24:29.814828695Z --- PASS: TestService_DeleteManifest_Error (0.00s) 2026-10-22T08:24:29.814845307Z === RUN TestService_GetBlob_Success 2026-10-22T08:24:29.814861045Z --- PASS: TestService_GetBlob_Success (0.00s) 2026-10-22T08:24:29.81487911Z === RUN TestService_GetBlob_NotFound 2026-10-22T08:24:29.814908269Z 2026-10-22T08:24:15Z ERR failed to get blob error="blob not found" digest=sha256:notexists layer=usecase usecase=GetBlob 2026-10-22T08:24:29.81492963Z --- PASS: TestService_GetBlob_NotFound (0.00s) 2026-10-22T08:24:29.814945076Z === RUN TestService_PutBlob_Success 2026-10-22T08:24:29.814969746Z 2026-10-22T08:24:15Z INF blob stored digest=sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 layer=usecase size_bytes=12 usecase=PutBlob 2026-10-22T08:24:29.814998021Z --- PASS: TestService_PutBlob_Success (0.00s) 2026-10-22T08:24:29.815015677Z === RUN TestService_PutBlob_Error 2026-10-22T08:24:29.815047498Z 2026-10-22T08:24:15Z ERR failed to store blob error="storage full" digest=sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 layer=usecase size_bytes=12 usecase=PutBlob 2026-10-22T08:24:29.815066233Z --- PASS: TestService_PutBlob_Error (0.00s) 2026-10-22T08:24:29.815081584Z === RUN TestService_BlobExists 2026-10-22T08:24:29.815101557Z --- PASS: TestService_BlobExists (0.00s) 2026-10-22T08:24:29.815116551Z === RUN TestService_StartUpload_Success 2026-10-22T08:24:29.81514367Z 2026-10-22T08:24:15Z INF blob upload started layer=usecase name=myapp usecase=StartUpload uuid=1234567890-myapp 2026-10-22T08:24:29.815165117Z --- PASS: TestService_StartUpload_Success (0.00s) 2026-10-22T08:24:29.815183008Z === RUN TestService_StartUpload_Error 2026-10-22T08:24:29.815215472Z 2026-10-22T08:24:15Z ERR failed to start blob upload error="cannot create upload" layer=usecase name=myapp usecase=StartUpload 2026-10-22T08:24:29.815234233Z --- PASS: TestService_StartUpload_Error (0.00s) 2026-10-22T08:24:29.815250637Z === RUN TestService_AppendBlobChunk_PassesMaxBlobSize 2026-10-22T08:24:29.815270244Z --- PASS: TestService_AppendBlobChunk_PassesMaxBlobSize (0.00s) 2026-10-22T08:24:29.815287258Z === RUN TestService_AppendBlobChunk_MaxBlobSizeExceeded 2026-10-22T08:24:29.815312769Z 2026-10-22T08:24:15Z ERR failed to append blob chunk error="blob size exceeds maximum" layer=usecase name=myapp usecase=AppendBlobChunk uuid=upload-id 2026-10-22T08:24:29.815341019Z --- PASS: TestService_AppendBlobChunk_MaxBlobSizeExceeded (0.00s) 2026-10-22T08:24:29.815359139Z === RUN TestService_FinishUpload_Success 2026-10-22T08:24:29.815391857Z 2026-10-22T08:24:15Z INF blob upload finished digest=sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 layer=usecase name=myapp usecase=FinishUpload uuid=1234567890-myapp 2026-10-22T08:24:29.815426971Z --- PASS: TestService_FinishUpload_Success (0.00s) 2026-10-22T08:24:29.815464633Z === RUN TestService_FinishUploadMarksBlobPending 2026-10-22T08:24:29.81549626Z 2026-10-22T08:24:15Z INF blob upload finished digest=sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 layer=usecase name=myapp usecase=FinishUpload uuid=1234567890-myapp 2026-10-22T08:24:29.815536569Z --- PASS: TestService_FinishUploadMarksBlobPending (0.00s) 2026-10-22T08:24:29.815556605Z === RUN TestService_FinishUploadBlocksRegistryPruning 2026-10-22T08:24:29.815604839Z 2026-10-22T08:24:15Z INF blob upload finished digest=sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 layer=usecase name=myapp usecase=FinishUpload uuid=1234567890-myapp 2026-10-22T08:24:29.81562823Z --- PASS: TestService_FinishUploadBlocksRegistryPruning (0.10s) 2026-10-22T08:24:29.815645874Z === RUN TestService_FinishUpload_Error 2026-10-22T08:24:29.815695918Z 2026-10-22T08:24:15Z ERR failed to finish blob upload error="digest mismatch" digest=sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 layer=usecase name=myapp usecase=FinishUpload uuid=1234567890-myapp 2026-10-22T08:24:29.815717758Z --- PASS: TestService_FinishUpload_Error (0.00s) 2026-10-22T08:24:29.81574154Z === RUN TestService_CancelUpload_Success 2026-10-22T08:24:29.815767287Z 2026-10-22T08:24:15Z INF blob upload cancelled layer=usecase name=myapp usecase=CancelUpload uuid=1234567890-myapp 2026-10-22T08:24:29.81580084Z --- PASS: TestService_CancelUpload_Success (0.00s) 2026-10-22T08:24:29.815829057Z === RUN TestService_CancelUpload_Error 2026-10-22T08:24:29.815857138Z 2026-10-22T08:24:15Z ERR failed to cancel blob upload error="upload not found" layer=usecase name=myapp usecase=CancelUpload uuid=1234567890-myapp 2026-10-22T08:24:29.815896812Z --- PASS: TestService_CancelUpload_Error (0.00s) 2026-10-22T08:24:29.815916447Z === RUN TestService_ListTags_Success 2026-10-22T08:24:29.815932577Z --- PASS: TestService_ListTags_Success (0.00s) 2026-10-22T08:24:29.815967824Z === RUN TestService_ListTags_Error 2026-10-22T08:24:29.815993618Z 2026-10-22T08:24:15Z ERR failed to list tags error="repository not found" layer=usecase name=myapp usecase=ListTags 2026-10-22T08:24:29.816029431Z --- PASS: TestService_ListTags_Error (0.00s) 2026-10-22T08:24:29.816049234Z === RUN TestService_ListRepositories_Success 2026-10-22T08:24:29.816065766Z --- PASS: TestService_ListRepositories_Success (0.00s) 2026-10-22T08:24:29.816101363Z === RUN TestService_ListRepositories_Error 2026-10-22T08:24:29.816135301Z 2026-10-22T08:24:15Z ERR failed to list repositories error="storage error" layer=usecase usecase=ListRepositories 2026-10-22T08:24:29.816174755Z --- PASS: TestService_ListRepositories_Error (0.00s) 2026-10-22T08:24:29.816194464Z === RUN TestPutManifest_PublishesEventForTagReference 2026-10-22T08:24:29.816212373Z --- PASS: TestPutManifest_PublishesEventForTagReference (0.00s) 2026-10-22T08:24:29.816246142Z PASS 2026-10-22T08:24:29.816264596Z ok github.com/bnema/gordon/internal/usecase/registry 1.132s 2026-10-22T08:24:29.816283764Z === RUN TestStateTracksPublishesAndExpiresPendingBlobs 2026-10-22T08:24:29.816312492Z --- PASS: TestStateTracksPublishesAndExpiresPendingBlobs (0.00s) 2026-10-22T08:24:29.816330501Z PASS 2026-10-22T08:24:29.816347488Z ok github.com/bnema/gordon/internal/usecase/registrystate 1.009s 2026-10-22T08:24:29.81637763Z === RUN TestToDomainRejectsDuplicateServiceNames 2026-10-22T08:24:29.816396345Z --- PASS: TestToDomainRejectsDuplicateServiceNames (0.00s) 2026-10-22T08:24:29.816415243Z === RUN TestToDomainRejectsServiceNamesWithDuplicateRuntimeIdentifier 2026-10-22T08:24:29.816448715Z --- PASS: TestToDomainRejectsServiceNamesWithDuplicateRuntimeIdentifier (0.00s) 2026-10-22T08:24:29.816468745Z === RUN TestConfigToDomainRejectsNonPositiveReadinessTimeout 2026-10-22T08:24:29.81648733Z === RUN TestConfigToDomainRejectsNonPositiveReadinessTimeout/0s 2026-10-22T08:24:29.81650622Z === RUN TestConfigToDomainRejectsNonPositiveReadinessTimeout/-1s 2026-10-22T08:24:29.816530365Z --- PASS: TestConfigToDomainRejectsNonPositiveReadinessTimeout (0.00s) 2026-10-22T08:24:29.816575283Z --- PASS: TestConfigToDomainRejectsNonPositiveReadinessTimeout/0s (0.00s) 2026-10-22T08:24:29.816612748Z --- PASS: TestConfigToDomainRejectsNonPositiveReadinessTimeout/-1s (0.00s) 2026-10-22T08:24:29.816648921Z === RUN TestConfigToDomainRejectsExplicitNoCleanupAction 2026-10-22T08:24:29.81666759Z --- PASS: TestConfigToDomainRejectsExplicitNoCleanupAction (0.00s) 2026-10-22T08:24:29.816683625Z === RUN TestConfigToDomainMapsExplicitPublicPorts 2026-10-22T08:24:29.81672324Z --- PASS: TestConfigToDomainMapsExplicitPublicPorts (0.00s) 2026-10-22T08:24:29.816744811Z === RUN TestResolveVolumeMountsUsesExplicitVolumesAsIs 2026-10-22T08:24:29.816761231Z --- PASS: TestResolveVolumeMountsUsesExplicitVolumesAsIs (0.00s) 2026-10-22T08:24:29.816798096Z === RUN TestResolveVolumeMountsUsesImageDiscoveredVolumesWhenExplicitOmitted 2026-10-22T08:24:29.816820141Z --- PASS: TestResolveVolumeMountsUsesImageDiscoveredVolumesWhenExplicitOmitted (0.00s) 2026-10-22T08:24:29.816840398Z === RUN TestResolveVolumeMountsReturnsEmptyForStatelessImage 2026-10-22T08:24:29.816877385Z --- PASS: TestResolveVolumeMountsReturnsEmptyForStatelessImage (0.00s) 2026-10-22T08:24:29.816903193Z === RUN TestManagedServiceVolumeNameIsDeterministicAndGordonCompatible 2026-10-22T08:24:29.81692491Z --- PASS: TestManagedServiceVolumeNameIsDeterministicAndGordonCompatible (0.00s) 2026-10-22T08:24:29.816942151Z PASS 2026-10-22T08:24:29.816960425Z ok github.com/bnema/gordon/internal/usecase/services 1.013s 2026-10-22T08:24:29.81697881Z === RUN TestBuildSmartTCPRoutesDefaultToEdge 2026-10-22T08:24:29.816996626Z --- PASS: TestBuildSmartTCPRoutesDefaultToEdge (0.00s) 2026-10-22T08:24:29.817015232Z === RUN TestBuildManagedRoutesUseOnlyCustomSmartTCPEntrypoint 2026-10-22T08:24:29.81705139Z --- PASS: TestBuildManagedRoutesUseOnlyCustomSmartTCPEntrypoint (0.00s) 2026-10-22T08:24:29.817076596Z === RUN TestBuildRouteEntrypointPrefersEdge 2026-10-22T08:24:29.817095923Z --- PASS: TestBuildRouteEntrypointPrefersEdge (0.00s) 2026-10-22T08:24:29.817119901Z === RUN TestBuildRoutesRejectAmbiguousRouteEntrypoints 2026-10-22T08:24:29.817140239Z --- PASS: TestBuildRoutesRejectAmbiguousRouteEntrypoints (0.00s) 2026-10-22T08:24:29.817169294Z === RUN TestBuildExternalRoutesUseResolvedRouteEntryPoint 2026-10-22T08:24:29.817198598Z --- PASS: TestBuildExternalRoutesUseResolvedRouteEntryPoint (0.00s) 2026-10-22T08:24:29.817217253Z === RUN TestBuildRawFallbackConfigMapsToEntryPoint 2026-10-22T08:24:29.817236883Z --- PASS: TestBuildRawFallbackConfigMapsToEntryPoint (0.00s) 2026-10-22T08:24:29.81727288Z === RUN TestBuildSmartTCPRoutesRequireCompatibleEdge 2026-10-22T08:24:29.817302387Z --- PASS: TestBuildSmartTCPRoutesRequireCompatibleEdge (0.00s) 2026-10-22T08:24:29.817320683Z === RUN TestBuildDefaultsAndHTTPRoutes 2026-10-22T08:24:29.817339725Z --- PASS: TestBuildDefaultsAndHTTPRoutes (0.00s) 2026-10-22T08:24:29.817367111Z === RUN TestBuildCustomEntryPointTrustedCIDRs 2026-10-22T08:24:29.817385002Z --- PASS: TestBuildCustomEntryPointTrustedCIDRs (0.00s) 2026-10-22T08:24:29.81740303Z === RUN TestBuildExplicitTCPUDPTLSRouterResolution 2026-10-22T08:24:29.817430233Z --- PASS: TestBuildExplicitTCPUDPTLSRouterResolution (0.00s) 2026-10-22T08:24:29.817447236Z === RUN TestBuildRejectsStaticServiceRef 2026-10-22T08:24:29.817464341Z --- PASS: TestBuildRejectsStaticServiceRef (0.00s) 2026-10-22T08:24:29.817494217Z === RUN TestBuildRejectsTLSHTTPRouteConflict 2026-10-22T08:24:29.817511438Z --- PASS: TestBuildRejectsTLSHTTPRouteConflict (0.00s) 2026-10-22T08:24:29.817551187Z === RUN TestBuildOptionsParsing 2026-10-22T08:24:29.817571528Z --- PASS: TestBuildOptionsParsing (0.00s) 2026-10-22T08:24:29.817588307Z === RUN TestBuildHTTPOptions 2026-10-22T08:24:29.817615947Z --- PASS: TestBuildHTTPOptions (0.00s) 2026-10-22T08:24:29.817633524Z === RUN TestBuildRejectsAmbiguousNetworkServices 2026-10-22T08:24:29.817652498Z === RUN TestBuildRejectsAmbiguousNetworkServices/duplicate_service_name 2026-10-22T08:24:29.817680766Z === RUN TestBuildRejectsAmbiguousNetworkServices/duplicate_port_name 2026-10-22T08:24:29.817701496Z === RUN TestBuildRejectsAmbiguousNetworkServices/unused_invalid_port_rejected 2026-10-22T08:24:29.817722215Z === RUN TestBuildRejectsAmbiguousNetworkServices/unused_invalid_protocol_rejected 2026-10-22T08:24:29.817753356Z --- PASS: TestBuildRejectsAmbiguousNetworkServices (0.00s) 2026-10-22T08:24:29.817800622Z --- PASS: TestBuildRejectsAmbiguousNetworkServices/duplicate_service_name (0.00s) 2026-10-22T08:24:29.817839598Z --- PASS: TestBuildRejectsAmbiguousNetworkServices/duplicate_port_name (0.00s) 2026-10-22T08:24:29.817901852Z --- PASS: TestBuildRejectsAmbiguousNetworkServices/unused_invalid_port_rejected (0.00s) 2026-10-22T08:24:29.817944305Z --- PASS: TestBuildRejectsAmbiguousNetworkServices/unused_invalid_protocol_rejected (0.00s) 2026-10-22T08:24:29.817973658Z === RUN TestBuildResolvesStandaloneServiceBackend 2026-10-22T08:24:29.817992715Z --- PASS: TestBuildResolvesStandaloneServiceBackend (0.00s) 2026-10-22T08:24:29.818036335Z === RUN TestBuildRejectsInvalidStandaloneServiceRefs 2026-10-22T08:24:29.818055642Z === RUN TestBuildRejectsInvalidStandaloneServiceRefs/unknown_service 2026-10-22T08:24:29.818085198Z === RUN TestBuildRejectsInvalidStandaloneServiceRefs/unknown_port 2026-10-22T08:24:29.818111016Z === RUN TestBuildRejectsInvalidStandaloneServiceRefs/disabled_service 2026-10-22T08:24:29.818142111Z === RUN TestBuildRejectsInvalidStandaloneServiceRefs/protocol_mismatch 2026-10-22T08:24:29.818162046Z === RUN TestBuildRejectsInvalidStandaloneServiceRefs/missing_publish 2026-10-22T08:24:29.818193373Z === RUN TestBuildRejectsInvalidStandaloneServiceRefs/invalid_publish 2026-10-22T08:24:29.81822316Z --- PASS: TestBuildRejectsInvalidStandaloneServiceRefs (0.00s) 2026-10-22T08:24:29.818262609Z --- PASS: TestBuildRejectsInvalidStandaloneServiceRefs/unknown_service (0.00s) 2026-10-22T08:24:29.818323913Z --- PASS: TestBuildRejectsInvalidStandaloneServiceRefs/unknown_port (0.00s) 2026-10-22T08:24:29.818363026Z --- PASS: TestBuildRejectsInvalidStandaloneServiceRefs/disabled_service (0.00s) 2026-10-22T08:24:29.818426262Z --- PASS: TestBuildRejectsInvalidStandaloneServiceRefs/protocol_mismatch (0.00s) 2026-10-22T08:24:29.818465573Z --- PASS: TestBuildRejectsInvalidStandaloneServiceRefs/missing_publish (0.00s) 2026-10-22T08:24:29.818522757Z --- PASS: TestBuildRejectsInvalidStandaloneServiceRefs/invalid_publish (0.00s) 2026-10-22T08:24:29.818545252Z === RUN TestBuildWrapsStandaloneServiceValidationErrorsWithServiceName 2026-10-22T08:24:29.818565929Z --- PASS: TestBuildWrapsStandaloneServiceValidationErrorsWithServiceName (0.00s) 2026-10-22T08:24:29.818595274Z === RUN TestBuildEnforcesPrivateStandaloneServicePortRouting 2026-10-22T08:24:29.818634173Z === RUN TestBuildEnforcesPrivateStandaloneServicePortRouting/rcon_defaults_private_and_allows_exact_trusted_cidrs 2026-10-22T08:24:29.818669731Z === RUN TestBuildEnforcesPrivateStandaloneServicePortRouting/private_port_rejects_service_port_without_trusted_cidrs 2026-10-22T08:24:29.818711727Z === RUN TestBuildEnforcesPrivateStandaloneServicePortRouting/rcon_rejects_both_service_and_entrypoint_without_trusted_cidrs 2026-10-22T08:24:29.818736885Z === RUN TestBuildEnforcesPrivateStandaloneServicePortRouting/explicit_private_non-rcon_rejects_service_port_without_trusted_cidrs 2026-10-22T08:24:29.818776603Z === RUN TestBuildEnforcesPrivateStandaloneServicePortRouting/private_port_rejects_entrypoint_without_trusted_cidrs 2026-10-22T08:24:29.818811246Z === RUN TestBuildEnforcesPrivateStandaloneServicePortRouting/private_port_rejects_non-matching_trusted_cidrs 2026-10-22T08:24:29.818832672Z === RUN TestBuildEnforcesPrivateStandaloneServicePortRouting/private_port_compares_canonical_trusted_cidrs 2026-10-22T08:24:29.818868413Z === RUN TestBuildEnforcesPrivateStandaloneServicePortRouting/explicit_public_rcon_is_allowed_without_trusted_cidrs 2026-10-22T08:24:29.818896379Z === RUN TestBuildEnforcesPrivateStandaloneServicePortRouting/explicit_public_non-rcon_is_allowed_without_trusted_cidrs 2026-10-22T08:24:29.818933936Z --- PASS: TestBuildEnforcesPrivateStandaloneServicePortRouting (0.00s) 2026-10-22T08:24:29.818993316Z --- PASS: TestBuildEnforcesPrivateStandaloneServicePortRouting/rcon_defaults_private_and_allows_exact_trusted_cidrs (0.00s) 2026-10-22T08:24:29.819050083Z --- PASS: TestBuildEnforcesPrivateStandaloneServicePortRouting/private_port_rejects_service_port_without_trusted_cidrs (0.00s) 2026-10-22T08:24:29.819111153Z --- PASS: TestBuildEnforcesPrivateStandaloneServicePortRouting/rcon_rejects_both_service_and_entrypoint_without_trusted_cidrs (0.00s) 2026-10-22T08:24:29.819175191Z --- PASS: TestBuildEnforcesPrivateStandaloneServicePortRouting/explicit_private_non-rcon_rejects_service_port_without_trusted_cidrs (0.00s) 2026-10-22T08:24:29.819235267Z --- PASS: TestBuildEnforcesPrivateStandaloneServicePortRouting/private_port_rejects_entrypoint_without_trusted_cidrs (0.00s) 2026-10-22T08:24:29.819293761Z --- PASS: TestBuildEnforcesPrivateStandaloneServicePortRouting/private_port_rejects_non-matching_trusted_cidrs (0.00s) 2026-10-22T08:24:29.819359266Z --- PASS: TestBuildEnforcesPrivateStandaloneServicePortRouting/private_port_compares_canonical_trusted_cidrs (0.00s) 2026-10-22T08:24:29.819413064Z --- PASS: TestBuildEnforcesPrivateStandaloneServicePortRouting/explicit_public_rcon_is_allowed_without_trusted_cidrs (0.00s) 2026-10-22T08:24:29.819472287Z --- PASS: TestBuildEnforcesPrivateStandaloneServicePortRouting/explicit_public_non-rcon_is_allowed_without_trusted_cidrs (0.00s) 2026-10-22T08:24:29.819492266Z === RUN TestBuildRejectsInvalidServiceRefs 2026-10-22T08:24:29.819509467Z === RUN TestBuildRejectsInvalidServiceRefs/unknown_service 2026-10-22T08:24:29.819549286Z === RUN TestBuildRejectsInvalidServiceRefs/unknown_port 2026-10-22T08:24:29.819580178Z === RUN TestBuildRejectsInvalidServiceRefs/protocol_mismatch 2026-10-22T08:24:29.81959956Z --- PASS: TestBuildRejectsInvalidServiceRefs (0.00s) 2026-10-22T08:24:29.819645804Z --- PASS: TestBuildRejectsInvalidServiceRefs/unknown_service (0.00s) 2026-10-22T08:24:29.8196813Z --- PASS: TestBuildRejectsInvalidServiceRefs/unknown_port (0.00s) 2026-10-22T08:24:29.819728182Z --- PASS: TestBuildRejectsInvalidServiceRefs/protocol_mismatch (0.00s) 2026-10-22T08:24:29.819751357Z PASS 2026-10-22T08:24:29.819792874Z ok github.com/bnema/gordon/internal/usecase/traffic 1.020s 2026-10-22T08:24:29.819812446Z === RUN TestService_ListVolumes 2026-10-22T08:24:29.819830328Z --- PASS: TestService_ListVolumes (0.00s) 2026-10-22T08:24:29.819857256Z === RUN TestService_ListVolumes_PropagatesError 2026-10-22T08:24:29.81987721Z --- PASS: TestService_ListVolumes_PropagatesError (0.00s) 2026-10-22T08:24:29.819888471Z === RUN TestService_PruneVolumes_RemovesOnlyExplicitlyReleasedVolumes 2026-10-22T08:24:29.819913442Z --- PASS: TestService_PruneVolumes_RemovesOnlyExplicitlyReleasedVolumes (0.00s) 2026-10-22T08:24:29.81993837Z === RUN TestService_PruneVolumes_UnknownAndContradictoryVolumesSurvive 2026-10-22T08:24:29.819961407Z --- PASS: TestService_PruneVolumes_UnknownAndContradictoryVolumesSurvive (0.00s) 2026-10-22T08:24:29.819998191Z === RUN TestService_PruneVolumes_DryRunPlansWithoutDeleting 2026-10-22T08:24:29.820026995Z --- PASS: TestService_PruneVolumes_DryRunPlansWithoutDeleting (0.00s) 2026-10-22T08:24:29.820046488Z === RUN TestService_PruneVolumes_ZeroDeletionSucceeds 2026-10-22T08:24:29.82006489Z --- PASS: TestService_PruneVolumes_ZeroDeletionSucceeds (0.00s) 2026-10-22T08:24:29.820092541Z === RUN TestService_PruneVolumes_FailedRemovalIsIsolated 2026-10-22T08:24:29.820112144Z --- PASS: TestService_PruneVolumes_FailedRemovalIsIsolated (0.00s) 2026-10-22T08:24:29.820131596Z === RUN TestService_PruneVolumes_IncompleteInventoryProtectsEverything 2026-10-22T08:24:29.820164517Z --- PASS: TestService_PruneVolumes_IncompleteInventoryProtectsEverything (0.00s) 2026-10-22T08:24:29.82019291Z === RUN TestService_PruneVolumes_RequiresPrunePorts 2026-10-22T08:24:29.820213077Z --- PASS: TestService_PruneVolumes_RequiresPrunePorts (0.00s) 2026-10-22T08:24:29.820232265Z === RUN TestService_PruneVolumes_ProtectionSnapshotFailureFailsClosed 2026-10-22T08:24:29.820267834Z --- PASS: TestService_PruneVolumes_ProtectionSnapshotFailureFailsClosed (0.00s) 2026-10-22T08:24:29.820284978Z PASS 2026-10-22T08:24:29.820313497Z ok github.com/bnema/gordon/internal/usecase/volumes 1.016s 2026-10-22T08:24:29.820330756Z === RUN TestParse 2026-10-22T08:24:29.820356947Z === RUN TestParse/bytes 2026-10-22T08:24:29.820375138Z === RUN TestParse/kilobytes 2026-10-22T08:24:29.82039005Z === RUN TestParse/megabytes 2026-10-22T08:24:29.820416879Z === RUN TestParse/gigabytes 2026-10-22T08:24:29.820433793Z === RUN TestParse/terabytes 2026-10-22T08:24:29.820450961Z === RUN TestParse/decimal_megabytes 2026-10-22T08:24:29.820478495Z === RUN TestParse/lowercase 2026-10-22T08:24:29.820495189Z === RUN TestParse/mixed_case 2026-10-22T08:24:29.820510243Z === RUN TestParse/with_spaces 2026-10-22T08:24:29.820542204Z === RUN TestParse/empty_string 2026-10-22T08:24:29.820571995Z === RUN TestParse/missing_unit 2026-10-22T08:24:29.820588874Z === RUN TestParse/missing_value 2026-10-22T08:24:29.820603806Z === RUN TestParse/invalid_value 2026-10-22T08:24:29.820635553Z === RUN TestParse/negative_value 2026-10-22T08:24:29.820665355Z === RUN TestParse/unknown_unit 2026-10-22T08:24:29.820681409Z --- PASS: TestParse (0.00s) 2026-10-22T08:24:29.820705225Z --- PASS: TestParse/bytes (0.00s) 2026-10-22T08:24:29.820747823Z --- PASS: TestParse/kilobytes (0.00s) 2026-10-22T08:24:29.820784634Z --- PASS: TestParse/megabytes (0.00s) 2026-10-22T08:24:29.820819184Z --- PASS: TestParse/gigabytes (0.00s) 2026-10-22T08:24:29.820854413Z --- PASS: TestParse/terabytes (0.00s) 2026-10-22T08:24:29.820883822Z --- PASS: TestParse/decimal_megabytes (0.00s) 2026-10-22T08:24:29.820920338Z --- PASS: TestParse/lowercase (0.00s) 2026-10-22T08:24:29.82095022Z --- PASS: TestParse/mixed_case (0.00s) 2026-10-22T08:24:29.820986783Z --- PASS: TestParse/with_spaces (0.00s) 2026-10-22T08:24:29.821015187Z --- PASS: TestParse/empty_string (0.00s) 2026-10-22T08:24:29.821051269Z --- PASS: TestParse/missing_unit (0.00s) 2026-10-22T08:24:29.821082555Z --- PASS: TestParse/missing_value (0.00s) 2026-10-22T08:24:29.821110282Z --- PASS: TestParse/invalid_value (0.00s) 2026-10-22T08:24:29.821145356Z --- PASS: TestParse/negative_value (0.00s) 2026-10-22T08:24:29.82117946Z --- PASS: TestParse/unknown_unit (0.00s) 2026-10-22T08:24:29.821199003Z PASS 2026-10-22T08:24:29.821224109Z ok github.com/bnema/gordon/pkg/bytesize 1.009s 2026-10-22T08:24:29.821247679Z === RUN TestFilterDropsGordonVariables 2026-10-22T08:24:29.821275522Z --- PASS: TestFilterDropsGordonVariables (0.00s) 2026-10-22T08:24:29.821293925Z === RUN TestCommandContextStripsGordonVariables 2026-10-22T08:24:29.821318765Z --- PASS: TestCommandContextStripsGordonVariables (0.00s) 2026-10-22T08:24:29.821350663Z PASS 2026-10-22T08:24:29.821370664Z ok github.com/bnema/gordon/pkg/childenv 1.009s 2026-10-22T08:24:29.821389879Z === RUN TestParse 2026-10-22T08:24:29.821415142Z === RUN TestParse/1_day 2026-10-22T08:24:29.821445341Z === RUN TestParse/2_days 2026-10-22T08:24:29.821459476Z === RUN TestParse/1_week 2026-10-22T08:24:29.821472256Z === RUN TestParse/2_weeks 2026-10-22T08:24:29.821482412Z === RUN TestParse/1_month 2026-10-22T08:24:29.821493544Z === RUN TestParse/3_months 2026-10-22T08:24:29.821504357Z === RUN TestParse/1_year 2026-10-22T08:24:29.821514922Z === RUN TestParse/2_years 2026-10-22T08:24:29.821531497Z === RUN TestParse/1_year_6_months 2026-10-22T08:24:29.821543811Z === RUN TestParse/2_weeks_3_days 2026-10-22T08:24:29.821558502Z === RUN TestParse/1_year_2_months_1_week 2026-10-22T08:24:29.821573683Z === RUN TestParse/1_day_12_hours 2026-10-22T08:24:29.821584684Z === RUN TestParse/2_weeks_6_hours 2026-10-22T08:24:29.821598663Z === RUN TestParse/1_month_1_day_1_hour 2026-10-22T08:24:29.82161025Z === RUN TestParse/1_year_30_minutes 2026-10-22T08:24:29.821622509Z === RUN TestParse/24_hours 2026-10-22T08:24:29.821634415Z === RUN TestParse/30_minutes 2026-10-22T08:24:29.821643315Z === RUN TestParse/1_hour_30_minutes 2026-10-22T08:24:29.821652022Z === RUN TestParse/1_second 2026-10-22T08:24:29.821660149Z === RUN TestParse/500_milliseconds 2026-10-22T08:24:29.821669929Z === RUN TestParse/1000_microseconds 2026-10-22T08:24:29.821678669Z === RUN TestParse/1000000_nanoseconds 2026-10-22T08:24:29.821687436Z === RUN TestParse/zero_duration 2026-10-22T08:24:29.821695779Z === RUN TestParse/zero_with_unit 2026-10-22T08:24:29.821703847Z === RUN TestParse/zero_hours 2026-10-22T08:24:29.821714383Z === RUN TestParse/10_years 2026-10-22T08:24:29.821725262Z === RUN TestParse/52_weeks 2026-10-22T08:24:29.821737613Z === RUN TestParse/365_days 2026-10-22T08:24:29.821748834Z === RUN TestParse/whitespace_around 2026-10-22T08:24:29.821759549Z === RUN TestParse/empty_string 2026-10-22T08:24:29.821771196Z === RUN TestParse/invalid_format 2026-10-22T08:24:29.821783121Z === RUN TestParse/invalid_unit 2026-10-22T08:24:29.821794114Z === RUN TestParse/missing_value 2026-10-22T08:24:29.821808528Z === RUN TestParse/negative_not_supported_by_Go 2026-10-22T08:24:29.821822146Z --- PASS: TestParse (0.00s) 2026-10-22T08:24:29.821839433Z --- PASS: TestParse/1_day (0.00s) 2026-10-22T08:24:29.821856925Z --- PASS: TestParse/2_days (0.00s) 2026-10-22T08:24:29.821876073Z --- PASS: TestParse/1_week (0.00s) 2026-10-22T08:24:29.821893365Z --- PASS: TestParse/2_weeks (0.00s) 2026-10-22T08:24:29.821910619Z --- PASS: TestParse/1_month (0.00s) 2026-10-22T08:24:29.821929679Z --- PASS: TestParse/3_months (0.00s) 2026-10-22T08:24:29.821947047Z --- PASS: TestParse/1_year (0.00s) 2026-10-22T08:24:29.821964612Z --- PASS: TestParse/2_years (0.00s) 2026-10-22T08:24:29.821984479Z --- PASS: TestParse/1_year_6_months (0.00s) 2026-10-22T08:24:29.822003153Z --- PASS: TestParse/2_weeks_3_days (0.00s) 2026-10-22T08:24:29.822040888Z --- PASS: TestParse/1_year_2_months_1_week (0.00s) 2026-10-22T08:24:29.822066842Z --- PASS: TestParse/1_day_12_hours (0.00s) 2026-10-22T08:24:29.822086458Z --- PASS: TestParse/2_weeks_6_hours (0.00s) 2026-10-22T08:24:29.822107877Z --- PASS: TestParse/1_month_1_day_1_hour (0.00s) 2026-10-22T08:24:29.822126596Z --- PASS: TestParse/1_year_30_minutes (0.00s) 2026-10-22T08:24:29.822144265Z --- PASS: TestParse/24_hours (0.00s) 2026-10-22T08:24:29.822163583Z --- PASS: TestParse/30_minutes (0.00s) 2026-10-22T08:24:29.822182409Z --- PASS: TestParse/1_hour_30_minutes (0.00s) 2026-10-22T08:24:29.822201805Z --- PASS: TestParse/1_second (0.00s) 2026-10-22T08:24:29.822220027Z --- PASS: TestParse/500_milliseconds (0.00s) 2026-10-22T08:24:29.822239637Z --- PASS: TestParse/1000_microseconds (0.00s) 2026-10-22T08:24:29.822261696Z --- PASS: TestParse/1000000_nanoseconds (0.00s) 2026-10-22T08:24:29.82228959Z --- PASS: TestParse/zero_duration (0.00s) 2026-10-22T08:24:29.822311183Z --- PASS: TestParse/zero_with_unit (0.00s) 2026-10-22T08:24:29.822331471Z --- PASS: TestParse/zero_hours (0.00s) 2026-10-22T08:24:29.822350403Z --- PASS: TestParse/10_years (0.00s) 2026-10-22T08:24:29.822370076Z --- PASS: TestParse/52_weeks (0.00s) 2026-10-22T08:24:29.822387355Z --- PASS: TestParse/365_days (0.00s) 2026-10-22T08:24:29.822406096Z --- PASS: TestParse/whitespace_around (0.00s) 2026-10-22T08:24:29.822425932Z --- PASS: TestParse/empty_string (0.00s) 2026-10-22T08:24:29.822443902Z --- PASS: TestParse/invalid_format (0.00s) 2026-10-22T08:24:29.822463015Z --- PASS: TestParse/invalid_unit (0.00s) 2026-10-22T08:24:29.822482794Z --- PASS: TestParse/missing_value (0.00s) 2026-10-22T08:24:29.822503928Z --- PASS: TestParse/negative_not_supported_by_Go (0.00s) 2026-10-22T08:24:29.822517587Z === RUN TestParseConstants 2026-10-22T08:24:29.822529321Z --- PASS: TestParseConstants (0.00s) 2026-10-22T08:24:29.822539985Z === RUN TestParseEquivalences 2026-10-22T08:24:29.822551425Z === RUN TestParseEquivalences/1_day_=_24_hours 2026-10-22T08:24:29.822569847Z === RUN TestParseEquivalences/1_week_=_168_hours 2026-10-22T08:24:29.822591666Z === RUN TestParseEquivalences/1_month_=_720_hours 2026-10-22T08:24:29.822611706Z === RUN TestParseEquivalences/1_year_=_8760_hours 2026-10-22T08:24:29.822626735Z --- PASS: TestParseEquivalences (0.00s) 2026-10-22T08:24:29.822657216Z --- PASS: TestParseEquivalences/1_day_=_24_hours (0.00s) 2026-10-22T08:24:29.822682804Z --- PASS: TestParseEquivalences/1_week_=_168_hours (0.00s) 2026-10-22T08:24:29.822704398Z --- PASS: TestParseEquivalences/1_month_=_720_hours (0.00s) 2026-10-22T08:24:29.82272542Z --- PASS: TestParseEquivalences/1_year_=_8760_hours (0.00s) 2026-10-22T08:24:29.822738772Z PASS 2026-10-22T08:24:29.822749312Z ok github.com/bnema/gordon/pkg/duration 1.016s 2026-10-22T08:24:29.822758274Z === RUN TestParseManifestAnnotations 2026-10-22T08:24:29.822767833Z === RUN TestParseManifestAnnotations/OCI_manifest_with_annotations 2026-10-22T08:24:29.822777946Z === RUN TestParseManifestAnnotations/OCI_manifest_without_annotations 2026-10-22T08:24:29.822788025Z === RUN TestParseManifestAnnotations/OCI_manifest_with_empty_annotations 2026-10-22T08:24:29.822803206Z === RUN TestParseManifestAnnotations/Docker_v2.2_manifest_(no_annotations_support) 2026-10-22T08:24:29.822818722Z === RUN TestParseManifestAnnotations/OCI_image_index_with_annotations 2026-10-22T08:24:29.822832506Z === RUN TestParseManifestAnnotations/Docker_manifest_list_with_annotations 2026-10-22T08:24:29.822847552Z === RUN TestParseManifestAnnotations/manifest_list_without_annotations 2026-10-22T08:24:29.822861237Z === RUN TestParseManifestAnnotations/unsupported_media_type 2026-10-22T08:24:29.822873599Z === RUN TestParseManifestAnnotations/invalid_JSON_for_OCI_manifest 2026-10-22T08:24:29.822887863Z === RUN TestParseManifestAnnotations/invalid_JSON_for_manifest_list 2026-10-22T08:24:29.822906802Z === RUN TestParseManifestAnnotations/OCI_manifest_with_special_characters_in_annotations 2026-10-22T08:24:29.822919163Z --- PASS: TestParseManifestAnnotations (0.00s) 2026-10-22T08:24:29.822942756Z --- PASS: TestParseManifestAnnotations/OCI_manifest_with_annotations (0.00s) 2026-10-22T08:24:29.823000491Z --- PASS: TestParseManifestAnnotations/OCI_manifest_without_annotations (0.00s) 2026-10-22T08:24:29.823025511Z --- PASS: TestParseManifestAnnotations/OCI_manifest_with_empty_annotations (0.00s) 2026-10-22T08:24:29.823051324Z --- PASS: TestParseManifestAnnotations/Docker_v2.2_manifest_(no_annotations_support) (0.00s) 2026-10-22T08:24:29.823075396Z --- PASS: TestParseManifestAnnotations/OCI_image_index_with_annotations (0.00s) 2026-10-22T08:24:29.823101268Z --- PASS: TestParseManifestAnnotations/Docker_manifest_list_with_annotations (0.00s) 2026-10-22T08:24:29.823125433Z --- PASS: TestParseManifestAnnotations/manifest_list_without_annotations (0.00s) 2026-10-22T08:24:29.823148079Z --- PASS: TestParseManifestAnnotations/unsupported_media_type (0.00s) 2026-10-22T08:24:29.823172696Z --- PASS: TestParseManifestAnnotations/invalid_JSON_for_OCI_manifest (0.00s) 2026-10-22T08:24:29.823195734Z --- PASS: TestParseManifestAnnotations/invalid_JSON_for_manifest_list (0.00s) 2026-10-22T08:24:29.823224652Z --- PASS: TestParseManifestAnnotations/OCI_manifest_with_special_characters_in_annotations (0.00s) 2026-10-22T08:24:29.823236887Z === RUN TestParseOCIManifestAnnotations 2026-10-22T08:24:29.82324718Z === RUN TestParseOCIManifestAnnotations/valid_OCI_manifest_with_annotations 2026-10-22T08:24:29.82325666Z === RUN TestParseOCIManifestAnnotations/OCI_manifest_with_nil_annotations 2026-10-22T08:24:29.823265552Z === RUN TestParseOCIManifestAnnotations/invalid_JSON 2026-10-22T08:24:29.823276532Z === RUN TestParseOCIManifestAnnotations/empty_manifest_data 2026-10-22T08:24:29.823285324Z --- PASS: TestParseOCIManifestAnnotations (0.00s) 2026-10-22T08:24:29.823308146Z --- PASS: TestParseOCIManifestAnnotations/valid_OCI_manifest_with_annotations (0.00s) 2026-10-22T08:24:29.823337336Z --- PASS: TestParseOCIManifestAnnotations/OCI_manifest_with_nil_annotations (0.00s) 2026-10-22T08:24:29.823371016Z --- PASS: TestParseOCIManifestAnnotations/invalid_JSON (0.00s) 2026-10-22T08:24:29.823395586Z --- PASS: TestParseOCIManifestAnnotations/empty_manifest_data (0.00s) 2026-10-22T08:24:29.823404872Z === RUN TestParseManifestListAnnotations 2026-10-22T08:24:29.823414532Z === RUN TestParseManifestListAnnotations/valid_manifest_list_with_annotations 2026-10-22T08:24:29.823429194Z === RUN TestParseManifestListAnnotations/manifest_list_with_nil_annotations 2026-10-22T08:24:29.82343897Z === RUN TestParseManifestListAnnotations/invalid_JSON 2026-10-22T08:24:29.823448625Z === RUN TestParseManifestListAnnotations/empty_manifest_list 2026-10-22T08:24:29.823454457Z --- PASS: TestParseManifestListAnnotations (0.00s) 2026-10-22T08:24:29.823480605Z --- PASS: TestParseManifestListAnnotations/valid_manifest_list_with_annotations (0.00s) 2026-10-22T08:24:29.823501585Z --- PASS: TestParseManifestListAnnotations/manifest_list_with_nil_annotations (0.00s) 2026-10-22T08:24:29.82352303Z --- PASS: TestParseManifestListAnnotations/invalid_JSON (0.00s) 2026-10-22T08:24:29.823545922Z --- PASS: TestParseManifestListAnnotations/empty_manifest_list (0.00s) 2026-10-22T08:24:29.823559292Z === RUN TestIsVersionedDeployment 2026-10-22T08:24:29.823571083Z === RUN TestIsVersionedDeployment/has_version_annotation 2026-10-22T08:24:29.823583098Z === RUN TestIsVersionedDeployment/has_empty_version_annotation 2026-10-22T08:24:29.823604648Z === RUN TestIsVersionedDeployment/no_version_annotation 2026-10-22T08:24:29.823616215Z === RUN TestIsVersionedDeployment/empty_annotations_map 2026-10-22T08:24:29.823626032Z === RUN TestIsVersionedDeployment/nil_annotations_map 2026-10-22T08:24:29.823635683Z === RUN TestIsVersionedDeployment/version_annotation_with_whitespace 2026-10-22T08:24:29.823645192Z === RUN TestIsVersionedDeployment/version_annotation_case_sensitivity 2026-10-22T08:24:29.823654677Z === RUN TestIsVersionedDeployment/multiple_version-like_annotations 2026-10-22T08:24:29.823663709Z --- PASS: TestIsVersionedDeployment (0.00s) 2026-10-22T08:24:29.823682621Z --- PASS: TestIsVersionedDeployment/has_version_annotation (0.00s) 2026-10-22T08:24:29.823707142Z --- PASS: TestIsVersionedDeployment/has_empty_version_annotation (0.00s) 2026-10-22T08:24:29.823729377Z --- PASS: TestIsVersionedDeployment/no_version_annotation (0.00s) 2026-10-22T08:24:29.823752716Z --- PASS: TestIsVersionedDeployment/empty_annotations_map (0.00s) 2026-10-22T08:24:29.82377181Z --- PASS: TestIsVersionedDeployment/nil_annotations_map (0.00s) 2026-10-22T08:24:29.82379493Z --- PASS: TestIsVersionedDeployment/version_annotation_with_whitespace (0.00s) 2026-10-22T08:24:29.823820564Z --- PASS: TestIsVersionedDeployment/version_annotation_case_sensitivity (0.00s) 2026-10-22T08:24:29.823844046Z --- PASS: TestIsVersionedDeployment/multiple_version-like_annotations (0.00s) 2026-10-22T08:24:29.823855009Z === RUN TestGetDeploymentVersion 2026-10-22T08:24:29.823872234Z === RUN TestGetDeploymentVersion/has_version_annotation 2026-10-22T08:24:29.823885217Z === RUN TestGetDeploymentVersion/version_with_semantic_versioning 2026-10-22T08:24:29.823897128Z === RUN TestGetDeploymentVersion/version_with_commit_hash 2026-10-22T08:24:29.823909213Z === RUN TestGetDeploymentVersion/version_with_special_characters 2026-10-22T08:24:29.823920608Z === RUN TestGetDeploymentVersion/empty_version_annotation 2026-10-22T08:24:29.823930202Z === RUN TestGetDeploymentVersion/version_with_only_whitespace 2026-10-22T08:24:29.82394279Z === RUN TestGetDeploymentVersion/no_version_annotation 2026-10-22T08:24:29.823953064Z === RUN TestGetDeploymentVersion/empty_annotations_map 2026-10-22T08:24:29.823962052Z === RUN TestGetDeploymentVersion/nil_annotations_map 2026-10-22T08:24:29.823973775Z === RUN TestGetDeploymentVersion/version_annotation_case_sensitivity 2026-10-22T08:24:29.823983639Z === RUN TestGetDeploymentVersion/multiple_version-like_annotations 2026-10-22T08:24:29.823993294Z === RUN TestGetDeploymentVersion/version_with_unicode_characters 2026-10-22T08:24:29.824004195Z === RUN TestGetDeploymentVersion/long_version_string 2026-10-22T08:24:29.824014986Z --- PASS: TestGetDeploymentVersion (0.00s) 2026-10-22T08:24:29.824035942Z --- PASS: TestGetDeploymentVersion/has_version_annotation (0.00s) 2026-10-22T08:24:29.824058866Z --- PASS: TestGetDeploymentVersion/version_with_semantic_versioning (0.00s) 2026-10-22T08:24:29.824082166Z --- PASS: TestGetDeploymentVersion/version_with_commit_hash (0.00s) 2026-10-22T08:24:29.824103007Z --- PASS: TestGetDeploymentVersion/version_with_special_characters (0.00s) 2026-10-22T08:24:29.824120721Z --- PASS: TestGetDeploymentVersion/empty_version_annotation (0.00s) 2026-10-22T08:24:29.824138578Z --- PASS: TestGetDeploymentVersion/version_with_only_whitespace (0.00s) 2026-10-22T08:24:29.824159834Z --- PASS: TestGetDeploymentVersion/no_version_annotation (0.00s) 2026-10-22T08:24:29.824183705Z --- PASS: TestGetDeploymentVersion/empty_annotations_map (0.00s) 2026-10-22T08:24:29.824206718Z --- PASS: TestGetDeploymentVersion/nil_annotations_map (0.00s) 2026-10-22T08:24:29.824230979Z --- PASS: TestGetDeploymentVersion/version_annotation_case_sensitivity (0.00s) 2026-10-22T08:24:29.824255751Z --- PASS: TestGetDeploymentVersion/multiple_version-like_annotations (0.00s) 2026-10-22T08:24:29.824278738Z --- PASS: TestGetDeploymentVersion/version_with_unicode_characters (0.00s) 2026-10-22T08:24:29.824300059Z --- PASS: TestGetDeploymentVersion/long_version_string (0.00s) 2026-10-22T08:24:29.824312926Z === RUN TestAnnotations_Integration 2026-10-22T08:24:29.824325225Z === RUN TestAnnotations_Integration/parse_and_check_versioned_deployment 2026-10-22T08:24:29.82433777Z === RUN TestAnnotations_Integration/parse_Docker_manifest_and_check_versioning 2026-10-22T08:24:29.82435655Z === RUN TestAnnotations_Integration/parse_manifest_list_with_version 2026-10-22T08:24:29.824366865Z === RUN TestAnnotations_Integration/round_trip_JSON_parsing 2026-10-22T08:24:29.824375552Z --- PASS: TestAnnotations_Integration (0.00s) 2026-10-22T08:24:29.824398435Z --- PASS: TestAnnotations_Integration/parse_and_check_versioned_deployment (0.00s) 2026-10-22T08:24:29.824424043Z --- PASS: TestAnnotations_Integration/parse_Docker_manifest_and_check_versioning (0.00s) 2026-10-22T08:24:29.824449536Z --- PASS: TestAnnotations_Integration/parse_manifest_list_with_version (0.00s) 2026-10-22T08:24:29.82447198Z --- PASS: TestAnnotations_Integration/round_trip_JSON_parsing (0.00s) 2026-10-22T08:24:29.82448519Z === RUN TestOCIManifest_JSON 2026-10-22T08:24:29.824496938Z === RUN TestOCIManifest_JSON/basic_OCI_manifest 2026-10-22T08:24:29.824508569Z === RUN TestOCIManifest_JSON/OCI_manifest_with_annotations 2026-10-22T08:24:29.824523903Z === RUN TestOCIManifest_JSON/OCI_manifest_with_multiple_layers 2026-10-22T08:24:29.824538077Z --- PASS: TestOCIManifest_JSON (0.00s) 2026-10-22T08:24:29.824558697Z --- PASS: TestOCIManifest_JSON/basic_OCI_manifest (0.00s) 2026-10-22T08:24:29.824580993Z --- PASS: TestOCIManifest_JSON/OCI_manifest_with_annotations (0.00s) 2026-10-22T08:24:29.824603609Z --- PASS: TestOCIManifest_JSON/OCI_manifest_with_multiple_layers (0.00s) 2026-10-22T08:24:29.82461491Z === RUN TestDockerManifest_JSON 2026-10-22T08:24:29.824626355Z === RUN TestDockerManifest_JSON/basic_Docker_manifest 2026-10-22T08:24:29.824639128Z === RUN TestDockerManifest_JSON/Docker_manifest_with_empty_layers 2026-10-22T08:24:29.824654434Z --- PASS: TestDockerManifest_JSON (0.00s) 2026-10-22T08:24:29.824691427Z --- PASS: TestDockerManifest_JSON/basic_Docker_manifest (0.00s) 2026-10-22T08:24:29.824720448Z --- PASS: TestDockerManifest_JSON/Docker_manifest_with_empty_layers (0.00s) 2026-10-22T08:24:29.824730927Z === RUN TestOCIDescriptor_JSON 2026-10-22T08:24:29.824743561Z === RUN TestOCIDescriptor_JSON/basic_descriptor 2026-10-22T08:24:29.824756275Z === RUN TestOCIDescriptor_JSON/descriptor_with_annotations 2026-10-22T08:24:29.824766604Z === RUN TestOCIDescriptor_JSON/descriptor_with_zero_size 2026-10-22T08:24:29.824775095Z --- PASS: TestOCIDescriptor_JSON (0.00s) 2026-10-22T08:24:29.824794681Z --- PASS: TestOCIDescriptor_JSON/basic_descriptor (0.00s) 2026-10-22T08:24:29.824815756Z --- PASS: TestOCIDescriptor_JSON/descriptor_with_annotations (0.00s) 2026-10-22T08:24:29.824837702Z --- PASS: TestOCIDescriptor_JSON/descriptor_with_zero_size (0.00s) 2026-10-22T08:24:29.824850311Z === RUN TestManifestList_JSON 2026-10-22T08:24:29.824868596Z === RUN TestManifestList_JSON/basic_manifest_list 2026-10-22T08:24:29.824889909Z === RUN TestManifestList_JSON/manifest_list_with_annotations 2026-10-22T08:24:29.824907964Z === RUN TestManifestList_JSON/multi-platform_manifest_list 2026-10-22T08:24:29.824927766Z --- PASS: TestManifestList_JSON (0.00s) 2026-10-22T08:24:29.824945466Z --- PASS: TestManifestList_JSON/basic_manifest_list (0.00s) 2026-10-22T08:24:29.82496668Z --- PASS: TestManifestList_JSON/manifest_list_with_annotations (0.00s) 2026-10-22T08:24:29.824984825Z --- PASS: TestManifestList_JSON/multi-platform_manifest_list (0.00s) 2026-10-22T08:24:29.824993324Z === RUN TestPlatform_JSON 2026-10-22T08:24:29.825001682Z === RUN TestPlatform_JSON/basic_platform 2026-10-22T08:24:29.825016025Z === RUN TestPlatform_JSON/platform_with_variant 2026-10-22T08:24:29.825026226Z === RUN TestPlatform_JSON/windows_platform_with_version 2026-10-22T08:24:29.825035447Z === RUN TestPlatform_JSON/platform_with_features 2026-10-22T08:24:29.825045547Z === RUN TestPlatform_JSON/complete_platform 2026-10-22T08:24:29.825058135Z === RUN TestPlatform_JSON/empty_platform 2026-10-22T08:24:29.825069787Z --- PASS: TestPlatform_JSON (0.00s) 2026-10-22T08:24:29.825086965Z --- PASS: TestPlatform_JSON/basic_platform (0.00s) 2026-10-22T08:24:29.825103951Z --- PASS: TestPlatform_JSON/platform_with_variant (0.00s) 2026-10-22T08:24:29.825121266Z --- PASS: TestPlatform_JSON/windows_platform_with_version (0.00s) 2026-10-22T08:24:29.825143407Z --- PASS: TestPlatform_JSON/platform_with_features (0.00s) 2026-10-22T08:24:29.825159664Z --- PASS: TestPlatform_JSON/complete_platform (0.00s) 2026-10-22T08:24:29.825181204Z --- PASS: TestPlatform_JSON/empty_platform (0.00s) 2026-10-22T08:24:29.825192708Z === RUN TestManifestDescriptor_JSON 2026-10-22T08:24:29.825205347Z === RUN TestManifestDescriptor_JSON/basic_manifest_descriptor 2026-10-22T08:24:29.825220908Z === RUN TestManifestDescriptor_JSON/manifest_descriptor_with_platform 2026-10-22T08:24:29.825236924Z === RUN TestManifestDescriptor_JSON/manifest_descriptor_with_annotations 2026-10-22T08:24:29.825251954Z === RUN TestManifestDescriptor_JSON/complete_manifest_descriptor 2026-10-22T08:24:29.8252665Z --- PASS: TestManifestDescriptor_JSON (0.00s) 2026-10-22T08:24:29.825287086Z --- PASS: TestManifestDescriptor_JSON/basic_manifest_descriptor (0.00s) 2026-10-22T08:24:29.825316392Z --- PASS: TestManifestDescriptor_JSON/manifest_descriptor_with_platform (0.00s) 2026-10-22T08:24:29.825343251Z --- PASS: TestManifestDescriptor_JSON/manifest_descriptor_with_annotations (0.00s) 2026-10-22T08:24:29.825366968Z --- PASS: TestManifestDescriptor_JSON/complete_manifest_descriptor (0.00s) 2026-10-22T08:24:29.825380761Z === RUN TestManifestTypes_EdgeCases 2026-10-22T08:24:29.825391045Z === RUN TestManifestTypes_EdgeCases/empty_annotations_should_be_omitted 2026-10-22T08:24:29.825400616Z === RUN TestManifestTypes_EdgeCases/nil_annotations_should_be_omitted 2026-10-22T08:24:29.825410086Z === RUN TestManifestTypes_EdgeCases/nil_platform_should_be_omitted 2026-10-22T08:24:29.825431367Z === RUN TestManifestTypes_EdgeCases/empty_string_fields_are_preserved 2026-10-22T08:24:29.825443414Z --- PASS: TestManifestTypes_EdgeCases (0.00s) 2026-10-22T08:24:29.825464023Z --- PASS: TestManifestTypes_EdgeCases/empty_annotations_should_be_omitted (0.00s) 2026-10-22T08:24:29.825487015Z --- PASS: TestManifestTypes_EdgeCases/nil_annotations_should_be_omitted (0.00s) 2026-10-22T08:24:29.825508956Z --- PASS: TestManifestTypes_EdgeCases/nil_platform_should_be_omitted (0.00s) 2026-10-22T08:24:29.825530522Z --- PASS: TestManifestTypes_EdgeCases/empty_string_fields_are_preserved (0.00s) 2026-10-22T08:24:29.825540724Z PASS 2026-10-22T08:24:29.825553151Z ok github.com/bnema/gordon/pkg/manifest 1.024s 2026-10-22T08:24:29.825584395Z === RUN TestIntegration_PushSingleLayerImage 2026-10-22T08:24:29.825596365Z === PAUSE TestIntegration_PushSingleLayerImage 2026-10-22T08:24:29.825607931Z === RUN TestIntegration_PushMultiLayerChunked 2026-10-22T08:24:29.825624403Z === PAUSE TestIntegration_PushMultiLayerChunked 2026-10-22T08:24:29.825638481Z === RUN TestIntegration_PushSkipsExistingBlobs 2026-10-22T08:24:29.825650386Z === PAUSE TestIntegration_PushSkipsExistingBlobs 2026-10-22T08:24:29.825662751Z === RUN TestIntegration_ServerRejectsOversizedChunk 2026-10-22T08:24:29.825673778Z === PAUSE TestIntegration_ServerRejectsOversizedChunk 2026-10-22T08:24:29.825682381Z === RUN TestIntegration_ManifestRoundtrip 2026-10-22T08:24:29.825692305Z === PAUSE TestIntegration_ManifestRoundtrip 2026-10-22T08:24:29.825704798Z === RUN TestNew_defaults 2026-10-22T08:24:29.825713416Z --- PASS: TestNew_defaults (0.00s) 2026-10-22T08:24:29.825723209Z === RUN TestNew_withChunkSize 2026-10-22T08:24:29.825733738Z --- PASS: TestNew_withChunkSize (0.00s) 2026-10-22T08:24:29.825748111Z === RUN TestPusher_UploadBlob 2026-10-22T08:24:29.825758473Z === RUN TestPusher_UploadBlob/small_blob_under_chunk_size 2026-10-22T08:24:29.825767485Z === RUN TestPusher_UploadBlob/exact_chunk_size 2026-10-22T08:24:29.825776538Z === RUN TestPusher_UploadBlob/large_blob_across_multiple_chunks 2026-10-22T08:24:29.82578925Z === RUN TestPusher_UploadBlob/blob_already_exists 2026-10-22T08:24:29.825801293Z === RUN TestPusher_UploadBlob/auth_header_present_on_every_request 2026-10-22T08:24:29.825810243Z --- PASS: TestPusher_UploadBlob (0.02s) 2026-10-22T08:24:29.825840718Z --- PASS: TestPusher_UploadBlob/small_blob_under_chunk_size (0.00s) 2026-10-22T08:24:29.825872196Z --- PASS: TestPusher_UploadBlob/exact_chunk_size (0.00s) 2026-10-22T08:24:29.825907915Z --- PASS: TestPusher_UploadBlob/large_blob_across_multiple_chunks (0.00s) 2026-10-22T08:24:29.825931131Z --- PASS: TestPusher_UploadBlob/blob_already_exists (0.00s) 2026-10-22T08:24:29.82595093Z --- PASS: TestPusher_UploadBlob/auth_header_present_on_every_request (0.00s) 2026-10-22T08:24:29.825963752Z === RUN TestPusher_PlainHTTP 2026-10-22T08:24:29.825972901Z --- PASS: TestPusher_PlainHTTP (0.03s) 2026-10-22T08:24:29.825980844Z === RUN TestPusher_Push 2026-10-22T08:24:29.825990368Z === RUN TestPusher_Push/single-layer_image_uploads_config_layer_and_manifest 2026-10-22T08:24:29.826009516Z === RUN TestPusher_Push/multi-layer_image_uploads_all_blobs_and_manifest 2026-10-22T08:24:29.826024654Z === RUN TestPusher_Push/existing_layer_is_skipped_while_others_upload 2026-10-22T08:24:29.826036019Z --- PASS: TestPusher_Push (0.13s) 2026-10-22T08:24:29.826056186Z --- PASS: TestPusher_Push/single-layer_image_uploads_config_layer_and_manifest (0.05s) 2026-10-22T08:24:29.826075588Z --- PASS: TestPusher_Push/multi-layer_image_uploads_all_blobs_and_manifest (0.06s) 2026-10-22T08:24:29.826098634Z --- PASS: TestPusher_Push/existing_layer_is_skipped_while_others_upload (0.02s) 2026-10-22T08:24:29.826107876Z === RUN TestPusher_Push_InvokesCleanup 2026-10-22T08:24:29.826116529Z --- PASS: TestPusher_Push_InvokesCleanup (0.02s) 2026-10-22T08:24:29.826125549Z === RUN TestPusher_WithInsecureTLS_AllowsSelfSignedCertificate 2026-10-22T08:24:29.82613462Z === PAUSE TestPusher_WithInsecureTLS_AllowsSelfSignedCertificate 2026-10-22T08:24:29.826145283Z === RUN TestPusher_WithTimeout_RespectsDeadline 2026-10-22T08:24:29.826156492Z --- PASS: TestPusher_WithTimeout_RespectsDeadline (0.10s) 2026-10-22T08:24:29.826165848Z === RUN TestUploadBlob_RejectsCrossOriginRedirect 2026-10-22T08:24:29.826180035Z --- PASS: TestUploadBlob_RejectsCrossOriginRedirect (0.00s) 2026-10-22T08:24:29.826192399Z === RUN TestUploadBlob_AuthHeaderOnlySentToSameOrigin 2026-10-22T08:24:29.826204339Z --- PASS: TestUploadBlob_AuthHeaderOnlySentToSameOrigin (0.00s) 2026-10-22T08:24:29.826216813Z === RUN TestPusher_WithAuth 2026-10-22T08:24:29.826243563Z === RUN TestPusher_WithAuth/WithAuth_header_is_sent_on_every_registry_request 2026-10-22T08:24:29.826259507Z === RUN TestPusher_WithAuth/without_WithAuth,_existing_push_behavior_is_unchanged 2026-10-22T08:24:29.826274328Z --- PASS: TestPusher_WithAuth (0.05s) 2026-10-22T08:24:29.826299457Z --- PASS: TestPusher_WithAuth/WithAuth_header_is_sent_on_every_registry_request (0.03s) 2026-10-22T08:24:29.826325168Z --- PASS: TestPusher_WithAuth/without_WithAuth,_existing_push_behavior_is_unchanged (0.02s) 2026-10-22T08:24:29.82634026Z === CONT TestIntegration_ServerRejectsOversizedChunk 2026-10-22T08:24:29.826350277Z === CONT TestIntegration_PushSkipsExistingBlobs 2026-10-22T08:24:29.826359064Z === CONT TestIntegration_ManifestRoundtrip 2026-10-22T08:24:29.82636829Z === CONT TestPusher_WithInsecureTLS_AllowsSelfSignedCertificate 2026-10-22T08:24:29.826387232Z 2026-10-22T08:24:20Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestIntegration_ServerRejectsOversizedChunk3946094406/001 2026-10-22T08:24:29.826405714Z 2026-10-22T08:24:20Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestIntegration_PushSkipsExistingBlobs813661810/001 2026-10-22T08:24:29.826424592Z 2026-10-22T08:24:20Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestIntegration_ManifestRoundtrip1390315057/001 2026-10-22T08:24:29.826439477Z 2026-10-22T08:24:20Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestIntegration_PushSkipsExistingBlobs813661810/001 2026-10-22T08:24:29.82645388Z 2026-10-22T08:24:20Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestIntegration_ManifestRoundtrip1390315057/001 2026-10-22T08:24:29.826470085Z 2026-10-22T08:24:20Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestIntegration_ServerRejectsOversizedChunk3946094406/001 2026-10-22T08:24:29.826483946Z 2026-10-22T08:24:20Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=8fb5c433-6f26-4d09-85e4-8ed676f85275 2026-10-22T08:24:29.826497912Z 2026-10-22T08:24:20Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=571ad092-7c62-41fd-b4ff-9a2f58d0bb50 2026-10-22T08:24:29.826514132Z 2026-10-22T08:24:20Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=47ae2c79-f0c8-4115-aaa4-14d7ddfbdde6 2026-10-22T08:24:29.826537526Z 2026-10-22T08:24:20Z INF blob upload cancelled adapter=filesystem layer=adapter name=testapp uuid=571ad092-7c62-41fd-b4ff-9a2f58d0bb50 2026-10-22T08:24:29.826556848Z 2026-10-22T08:24:20Z INF blob upload finished adapter=filesystem digest=sha256:abbb53a963ae5dca6c87e1a36fe3265526377ddcc33211f09209f5d7f8544352 layer=adapter name=testapp uuid=8fb5c433-6f26-4d09-85e4-8ed676f85275 2026-10-22T08:24:29.826575272Z 2026-10-22T08:24:20Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=80d99385-5011-452b-b00d-fe599f232f87 2026-10-22T08:24:29.826597838Z 2026-10-22T08:24:20Z INF blob upload finished adapter=filesystem digest=sha256:8b43bef679151da27117df4f51207867ae16e76522289926c227dcdac667e8ec layer=adapter name=testapp uuid=47ae2c79-f0c8-4115-aaa4-14d7ddfbdde6 2026-10-22T08:24:29.826617771Z 2026-10-22T08:24:20Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=8f7b1f77-38de-43e8-b591-35dc9400281a 2026-10-22T08:24:29.826640171Z 2026-10-22T08:24:20Z INF blob upload finished adapter=filesystem digest=sha256:fb1703b4992504e33cf6299b8ef7de3c327bc9a0bc341939e5cfb07cd40b5b6a layer=adapter name=testapp uuid=80d99385-5011-452b-b00d-fe599f232f87 2026-10-22T08:24:29.826670376Z 2026-10-22T08:24:20Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=f3a7a08f-790b-4b6c-9e29-18c2a2f9316a 2026-10-22T08:24:29.826695512Z 2026-10-22T08:24:20Z INF blob upload finished adapter=filesystem digest=sha256:71c0af49eff478c97ef2d6be1b3bff9028e573c461d75bc0e9b82eda94fe1967 layer=adapter name=testapp uuid=8f7b1f77-38de-43e8-b591-35dc9400281a 2026-10-22T08:24:29.826719291Z 2026-10-22T08:24:20Z INF blob upload finished adapter=filesystem digest=sha256:606186809467ca59dc791e05487dee0c46a5a004e631c4558a374e95fac684f9 layer=adapter name=testapp uuid=f3a7a08f-790b-4b6c-9e29-18c2a2f9316a 2026-10-22T08:24:29.826738274Z 2026-10-22T08:24:20Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=44245815-8d5e-49bd-9312-3f41c0a55f97 2026-10-22T08:24:29.826756878Z 2026-10-22T08:24:20Z INF manifest stored adapter=filesystem layer=adapter name=testapp reference=v1.0.0 2026-10-22T08:24:29.826780827Z 2026-10-22T08:24:20Z INF blob upload finished adapter=filesystem digest=sha256:82275b6a206bb1d30927273d79d3478346558f8f970b4cbe655de3b7fddc195b layer=adapter name=testapp uuid=44245815-8d5e-49bd-9312-3f41c0a55f97 2026-10-22T08:24:29.82679215Z --- PASS: TestIntegration_ManifestRoundtrip (0.03s) 2026-10-22T08:24:29.826801083Z === CONT TestIntegration_PushMultiLayerChunked 2026-10-22T08:24:29.826814241Z 2026-10-22T08:24:20Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestIntegration_PushMultiLayerChunked3271410520/001 2026-10-22T08:24:29.826834277Z 2026-10-22T08:24:20Z INF manifest stored adapter=filesystem layer=adapter name=testapp reference=v1.0.0 2026-10-22T08:24:29.826849342Z 2026-10-22T08:24:20Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestIntegration_PushMultiLayerChunked3271410520/001 2026-10-22T08:24:29.826865514Z 2026-10-22T08:24:20Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=7a0a80b0-04c7-4736-92b6-f7fa16813f58 2026-10-22T08:24:29.826886992Z 2026-10-22T08:24:20Z INF blob upload finished adapter=filesystem digest=sha256:18535a0faa7b1824ace1b916f347ba7eacaabf7b322f4bfab3ea3e62ed5822b1 layer=adapter name=testapp uuid=7a0a80b0-04c7-4736-92b6-f7fa16813f58 2026-10-22T08:24:29.826902269Z 2026-10-22T08:24:20Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=84a38627-bb07-47bc-bdd0-7188441a98d0 2026-10-22T08:24:29.826923055Z 2026-10-22T08:24:20Z INF blob upload finished adapter=filesystem digest=sha256:7a02c82965b74204ffdb7f21ed46b3ac16327a74b808a4e9f1993f67ebd2af68 layer=adapter name=testapp uuid=84a38627-bb07-47bc-bdd0-7188441a98d0 2026-10-22T08:24:29.826942769Z 2026-10-22T08:24:20Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=768b5dd2-fcf6-4f9e-9c76-98f7d0854393 2026-10-22T08:24:29.82695626Z 2026-10-22T08:24:20Z INF manifest stored adapter=filesystem layer=adapter name=testapp reference=v1.0.0 2026-10-22T08:24:29.826969067Z --- PASS: TestIntegration_PushSkipsExistingBlobs (0.06s) 2026-10-22T08:24:29.826979127Z === CONT TestIntegration_PushSingleLayerImage 2026-10-22T08:24:29.826992427Z 2026-10-22T08:24:20Z INF blob storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestIntegration_PushSingleLayerImage1933732659/001 2026-10-22T08:24:29.8270132Z 2026-10-22T08:24:20Z INF manifest storage initialized adapter=filesystem layer=adapter root_dir=/tmp/TestIntegration_PushSingleLayerImage1933732659/001 2026-10-22T08:24:29.827032834Z 2026-10-22T08:24:20Z INF blob upload finished adapter=filesystem digest=sha256:bd56d328acbba4b530c897c601a627f4bb1d432f58c526bb3817b0ea96d14807 layer=adapter name=testapp uuid=768b5dd2-fcf6-4f9e-9c76-98f7d0854393 2026-10-22T08:24:29.827048733Z 2026-10-22T08:24:20Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=6ddf3376-4b42-425a-a370-0b8fe407ef5a 2026-10-22T08:24:29.827071113Z 2026-10-22T08:24:20Z INF blob upload finished adapter=filesystem digest=sha256:94837c1c0bdf85e4f9e3b4a69f2b2c0e1ccb6a7097e85cacd643e6c815a05e6f layer=adapter name=testapp uuid=6ddf3376-4b42-425a-a370-0b8fe407ef5a 2026-10-22T08:24:29.82708658Z 2026-10-22T08:24:20Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=105ee9fd-76c0-4a4c-b0a6-7d7f53a6b32f 2026-10-22T08:24:29.827109291Z 2026-10-22T08:24:20Z INF manifest stored adapter=filesystem layer=adapter name=testapp reference=v1.0.0 2026-10-22T08:24:29.827131147Z 2026-10-22T08:24:20Z INF blob upload finished adapter=filesystem digest=sha256:411ef031a7c4b9be6076855cc4fb85a5c00efe286536540b77fa3ae4e7b24300 layer=adapter name=testapp uuid=105ee9fd-76c0-4a4c-b0a6-7d7f53a6b32f 2026-10-22T08:24:29.827150805Z 2026-10-22T08:24:20Z INF blob upload started adapter=filesystem layer=adapter name=testapp uuid=bfb15924-7b7a-40ee-aa11-663b464ead4b 2026-10-22T08:24:29.82716484Z --- PASS: TestIntegration_PushMultiLayerChunked (0.04s) 2026-10-22T08:24:29.827188108Z 2026-10-22T08:24:20Z INF blob upload finished adapter=filesystem digest=sha256:adb8ba7ae4440d65e2c5b8aec7a8342e9a3f8887c65d4dfbc44b76a76666fbf1 layer=adapter name=testapp uuid=bfb15924-7b7a-40ee-aa11-663b464ead4b 2026-10-22T08:24:29.827207383Z 2026-10-22T08:24:20Z INF manifest stored adapter=filesystem layer=adapter name=testapp reference=v1.0.0 2026-10-22T08:24:29.827221452Z --- PASS: TestIntegration_PushSingleLayerImage (0.01s) 2026-10-22T08:24:29.827238374Z 2026/10/22 08:24:20 http: TLS handshake error from 127.0.0.1:60340: remote error: tls: bad certificate 2026-10-22T08:24:29.827251105Z --- PASS: TestPusher_WithInsecureTLS_AllowsSelfSignedCertificate (0.11s) 2026-10-22T08:24:29.82726315Z --- PASS: TestIntegration_ServerRejectsOversizedChunk (0.51s) 2026-10-22T08:24:29.827271302Z PASS 2026-10-22T08:24:29.827287823Z ok github.com/bnema/gordon/pkg/registrypush 1.887s 2026-10-22T08:24:29.827298269Z ? github.com/bnema/gordon/pkg/runtime [no test files] 2026-10-22T08:24:29.827306626Z === RUN TestValidateImageDigest 2026-10-22T08:24:29.827315036Z --- PASS: TestValidateImageDigest (0.00s) 2026-10-22T08:24:29.827324836Z === RUN TestParseImageReference 2026-10-22T08:24:29.827335862Z === RUN TestParseImageReference/simple_image_with_latest_tag 2026-10-22T08:24:29.827345559Z === RUN TestParseImageReference/simple_image_with_custom_tag 2026-10-22T08:24:29.827358349Z === RUN TestParseImageReference/simple_image_with_digest 2026-10-22T08:24:29.82737031Z === RUN TestParseImageReference/registry_with_image_and_tag 2026-10-22T08:24:29.827389504Z === RUN TestParseImageReference/registry_with_port_and_image_and_tag 2026-10-22T08:24:29.827400384Z === RUN TestParseImageReference/registry_with_port,_image,_and_digest 2026-10-22T08:24:29.827411263Z === RUN TestParseImageReference/simple_image_without_tag_(defaults_to_latest) 2026-10-22T08:24:29.827422484Z === RUN TestParseImageReference/registry_with_image_without_tag 2026-10-22T08:24:29.827434696Z === RUN TestParseImageReference/nested_path_image_with_tag 2026-10-22T08:24:29.827446914Z === RUN TestParseImageReference/localhost_registry_with_port 2026-10-22T08:24:29.827460436Z === RUN TestParseImageReference/IP_address_registry_with_port 2026-10-22T08:24:29.82747225Z --- PASS: TestParseImageReference (0.00s) 2026-10-22T08:24:29.827494271Z --- PASS: TestParseImageReference/simple_image_with_latest_tag (0.00s) 2026-10-22T08:24:29.82751472Z --- PASS: TestParseImageReference/simple_image_with_custom_tag (0.00s) 2026-10-22T08:24:29.827538415Z --- PASS: TestParseImageReference/simple_image_with_digest (0.00s) 2026-10-22T08:24:29.82755681Z --- PASS: TestParseImageReference/registry_with_image_and_tag (0.00s) 2026-10-22T08:24:29.827576435Z --- PASS: TestParseImageReference/registry_with_port_and_image_and_tag (0.00s) 2026-10-22T08:24:29.827595906Z --- PASS: TestParseImageReference/registry_with_port,_image,_and_digest (0.00s) 2026-10-22T08:24:29.827617776Z --- PASS: TestParseImageReference/simple_image_without_tag_(defaults_to_latest) (0.00s) 2026-10-22T08:24:29.827639529Z --- PASS: TestParseImageReference/registry_with_image_without_tag (0.00s) 2026-10-22T08:24:29.827658952Z --- PASS: TestParseImageReference/nested_path_image_with_tag (0.00s) 2026-10-22T08:24:29.827681083Z --- PASS: TestParseImageReference/localhost_registry_with_port (0.00s) 2026-10-22T08:24:29.827699228Z --- PASS: TestParseImageReference/IP_address_registry_with_port (0.00s) 2026-10-22T08:24:29.827713325Z === RUN TestValidateRepositoryName 2026-10-22T08:24:29.827722947Z === RUN TestValidateRepositoryName/simple_name 2026-10-22T08:24:29.82773216Z === RUN TestValidateRepositoryName/with_hyphen 2026-10-22T08:24:29.827740655Z === RUN TestValidateRepositoryName/with_underscore 2026-10-22T08:24:29.827749314Z === RUN TestValidateRepositoryName/with_dot 2026-10-22T08:24:29.827830792Z === RUN TestValidateRepositoryName/nested_path 2026-10-22T08:24:29.82786703Z === RUN TestValidateRepositoryName/deeply_nested 2026-10-22T08:24:29.827885594Z === RUN TestValidateRepositoryName/with_numbers 2026-10-22T08:24:29.827907817Z === RUN TestValidateRepositoryName/complex_valid 2026-10-22T08:24:29.827919049Z === RUN TestValidateRepositoryName/path_traversal_simple 2026-10-22T08:24:29.827934113Z === RUN TestValidateRepositoryName/path_traversal_nested 2026-10-22T08:24:29.827948866Z === RUN TestValidateRepositoryName/path_traversal_in_middle 2026-10-22T08:24:29.82796105Z === RUN TestValidateRepositoryName/double_dot_only 2026-10-22T08:24:29.827972778Z === RUN TestValidateRepositoryName/empty 2026-10-22T08:24:29.828009331Z === RUN TestValidateRepositoryName/starts_with_hyphen 2026-10-22T08:24:29.828025167Z === RUN TestValidateRepositoryName/starts_with_dot 2026-10-22T08:24:29.828035767Z === RUN TestValidateRepositoryName/ends_with_hyphen 2026-10-22T08:24:29.828047468Z === RUN TestValidateRepositoryName/uppercase 2026-10-22T08:24:29.828057779Z === RUN TestValidateRepositoryName/special_chars 2026-10-22T08:24:29.828069929Z === RUN TestValidateRepositoryName/spaces 2026-10-22T08:24:29.828079892Z === RUN TestValidateRepositoryName/adjacent_separators 2026-10-22T08:24:29.828089654Z === RUN TestValidateRepositoryName/starts_with_slash 2026-10-22T08:24:29.828099227Z === RUN TestValidateRepositoryName/ends_with_slash 2026-10-22T08:24:29.828110607Z === RUN TestValidateRepositoryName/too_long 2026-10-22T08:24:29.828120806Z --- PASS: TestValidateRepositoryName (0.00s) 2026-10-22T08:24:29.828141525Z --- PASS: TestValidateRepositoryName/simple_name (0.00s) 2026-10-22T08:24:29.82816015Z --- PASS: TestValidateRepositoryName/with_hyphen (0.00s) 2026-10-22T08:24:29.828178075Z --- PASS: TestValidateRepositoryName/with_underscore (0.00s) 2026-10-22T08:24:29.828196822Z --- PASS: TestValidateRepositoryName/with_dot (0.00s) 2026-10-22T08:24:29.828213433Z --- PASS: TestValidateRepositoryName/nested_path (0.00s) 2026-10-22T08:24:29.828231308Z --- PASS: TestValidateRepositoryName/deeply_nested (0.00s) 2026-10-22T08:24:29.828247939Z --- PASS: TestValidateRepositoryName/with_numbers (0.00s) 2026-10-22T08:24:29.828266939Z --- PASS: TestValidateRepositoryName/complex_valid (0.00s) 2026-10-22T08:24:29.828286905Z --- PASS: TestValidateRepositoryName/path_traversal_simple (0.00s) 2026-10-22T08:24:29.828305365Z --- PASS: TestValidateRepositoryName/path_traversal_nested (0.00s) 2026-10-22T08:24:29.828324158Z --- PASS: TestValidateRepositoryName/path_traversal_in_middle (0.00s) 2026-10-22T08:24:29.828341503Z --- PASS: TestValidateRepositoryName/double_dot_only (0.00s) 2026-10-22T08:24:29.828359417Z --- PASS: TestValidateRepositoryName/empty (0.00s) 2026-10-22T08:24:29.828376964Z --- PASS: TestValidateRepositoryName/starts_with_hyphen (0.00s) 2026-10-22T08:24:29.828394122Z --- PASS: TestValidateRepositoryName/starts_with_dot (0.00s) 2026-10-22T08:24:29.828411517Z --- PASS: TestValidateRepositoryName/ends_with_hyphen (0.00s) 2026-10-22T08:24:29.82843886Z --- PASS: TestValidateRepositoryName/uppercase (0.00s) 2026-10-22T08:24:29.828475696Z --- PASS: TestValidateRepositoryName/special_chars (0.00s) 2026-10-22T08:24:29.828563719Z --- PASS: TestValidateRepositoryName/spaces (0.00s) 2026-10-22T08:24:29.8286179Z --- PASS: TestValidateRepositoryName/adjacent_separators (0.00s) 2026-10-22T08:24:29.828686291Z --- PASS: TestValidateRepositoryName/starts_with_slash (0.00s) 2026-10-22T08:24:29.828832801Z --- PASS: TestValidateRepositoryName/ends_with_slash (0.00s) 2026-10-22T08:24:29.828858903Z --- PASS: TestValidateRepositoryName/too_long (0.00s) 2026-10-22T08:24:29.828871305Z === RUN TestValidateReference 2026-10-22T08:24:29.828878133Z === RUN TestValidateReference/simple_tag 2026-10-22T08:24:29.828887893Z === RUN TestValidateReference/version_tag 2026-10-22T08:24:29.828894822Z === RUN TestValidateReference/with_hyphen 2026-10-22T08:24:29.828905511Z === RUN TestValidateReference/with_underscore 2026-10-22T08:24:29.828917681Z === RUN TestValidateReference/with_dot 2026-10-22T08:24:29.828927063Z === RUN TestValidateReference/numeric 2026-10-22T08:24:29.828936723Z === RUN TestValidateReference/alphanumeric 2026-10-22T08:24:29.828947319Z === RUN TestValidateReference/sha256_digest 2026-10-22T08:24:29.828964517Z === RUN TestValidateReference/sha512_digest 2026-10-22T08:24:29.828973357Z === RUN TestValidateReference/path_traversal 2026-10-22T08:24:29.828981514Z === RUN TestValidateReference/hidden_traversal 2026-10-22T08:24:29.828989206Z === RUN TestValidateReference/empty 2026-10-22T08:24:29.828997466Z === RUN TestValidateReference/starts_with_hyphen 2026-10-22T08:24:29.82900675Z === RUN TestValidateReference/starts_with_dot 2026-10-22T08:24:29.829017828Z === RUN TestValidateReference/too_long_tag 2026-10-22T08:24:29.829028695Z === RUN TestValidateReference/special_chars 2026-10-22T08:24:29.829040846Z === RUN TestValidateReference/spaces 2026-10-22T08:24:29.829047154Z === RUN TestValidateReference/wrong_algorithm 2026-10-22T08:24:29.829058359Z === RUN TestValidateReference/short_sha256 2026-10-22T08:24:29.829063805Z === RUN TestValidateReference/uppercase_hex 2026-10-22T08:24:29.829068481Z --- PASS: TestValidateReference (0.00s) 2026-10-22T08:24:29.82908511Z --- PASS: TestValidateReference/simple_tag (0.00s) 2026-10-22T08:24:29.829107551Z --- PASS: TestValidateReference/version_tag (0.00s) 2026-10-22T08:24:29.829124879Z --- PASS: TestValidateReference/with_hyphen (0.00s) 2026-10-22T08:24:29.829140426Z --- PASS: TestValidateReference/with_underscore (0.00s) 2026-10-22T08:24:29.829155056Z --- PASS: TestValidateReference/with_dot (0.00s) 2026-10-22T08:24:29.829170883Z --- PASS: TestValidateReference/numeric (0.00s) 2026-10-22T08:24:29.829190388Z --- PASS: TestValidateReference/alphanumeric (0.00s) 2026-10-22T08:24:29.829215535Z --- PASS: TestValidateReference/sha256_digest (0.00s) 2026-10-22T08:24:29.829231328Z --- PASS: TestValidateReference/sha512_digest (0.00s) 2026-10-22T08:24:29.829256217Z --- PASS: TestValidateReference/path_traversal (0.00s) 2026-10-22T08:24:29.82927929Z --- PASS: TestValidateReference/hidden_traversal (0.00s) 2026-10-22T08:24:29.829298588Z --- PASS: TestValidateReference/empty (0.00s) 2026-10-22T08:24:29.829319736Z --- PASS: TestValidateReference/starts_with_hyphen (0.00s) 2026-10-22T08:24:29.829342108Z --- PASS: TestValidateReference/starts_with_dot (0.00s) 2026-10-22T08:24:29.829362022Z --- PASS: TestValidateReference/too_long_tag (0.00s) 2026-10-22T08:24:29.829382229Z --- PASS: TestValidateReference/special_chars (0.00s) 2026-10-22T08:24:29.829402601Z --- PASS: TestValidateReference/spaces (0.00s) 2026-10-22T08:24:29.829418859Z --- PASS: TestValidateReference/wrong_algorithm (0.00s) 2026-10-22T08:24:29.829433698Z --- PASS: TestValidateReference/short_sha256 (0.00s) 2026-10-22T08:24:29.829448661Z --- PASS: TestValidateReference/uppercase_hex (0.00s) 2026-10-22T08:24:29.829459098Z === RUN TestValidateDigest 2026-10-22T08:24:29.829467986Z === RUN TestValidateDigest/valid_sha256 2026-10-22T08:24:29.829476156Z === RUN TestValidateDigest/valid_sha512 2026-10-22T08:24:29.829489313Z === RUN TestValidateDigest/path_traversal 2026-10-22T08:24:29.829498714Z === RUN TestValidateDigest/empty 2026-10-22T08:24:29.829507241Z === RUN TestValidateDigest/no_algorithm 2026-10-22T08:24:29.829519475Z === RUN TestValidateDigest/wrong_algorithm 2026-10-22T08:24:29.829533217Z === RUN TestValidateDigest/sha1_not_allowed 2026-10-22T08:24:29.829542128Z === RUN TestValidateDigest/short_hash 2026-10-22T08:24:29.829550497Z === RUN TestValidateDigest/uppercase_hex 2026-10-22T08:24:29.829560681Z === RUN TestValidateDigest/invalid_chars 2026-10-22T08:24:29.829575756Z === RUN TestValidateDigest/missing_colon 2026-10-22T08:24:29.829586728Z --- PASS: TestValidateDigest (0.00s) 2026-10-22T08:24:29.82960343Z --- PASS: TestValidateDigest/valid_sha256 (0.00s) 2026-10-22T08:24:29.829624052Z --- PASS: TestValidateDigest/valid_sha512 (0.00s) 2026-10-22T08:24:29.829639746Z --- PASS: TestValidateDigest/path_traversal (0.00s) 2026-10-22T08:24:29.829657056Z --- PASS: TestValidateDigest/empty (0.00s) 2026-10-22T08:24:29.829676898Z --- PASS: TestValidateDigest/no_algorithm (0.00s) 2026-10-22T08:24:29.829692752Z --- PASS: TestValidateDigest/wrong_algorithm (0.00s) 2026-10-22T08:24:29.829712981Z --- PASS: TestValidateDigest/sha1_not_allowed (0.00s) 2026-10-22T08:24:29.829732645Z --- PASS: TestValidateDigest/short_hash (0.00s) 2026-10-22T08:24:29.829749723Z --- PASS: TestValidateDigest/uppercase_hex (0.00s) 2026-10-22T08:24:29.82976437Z --- PASS: TestValidateDigest/invalid_chars (0.00s) 2026-10-22T08:24:29.829779395Z --- PASS: TestValidateDigest/missing_colon (0.00s) 2026-10-22T08:24:29.829787541Z === RUN TestValidateUUID 2026-10-22T08:24:29.829800279Z === RUN TestValidateUUID/valid_uuid_v4 2026-10-22T08:24:29.829809683Z === RUN TestValidateUUID/another_valid_uuid_v4 2026-10-22T08:24:29.829821841Z === RUN TestValidateUUID/uuid_v1_wrong_version 2026-10-22T08:24:29.829834216Z === RUN TestValidateUUID/all_zeros_not_v4 2026-10-22T08:24:29.829843571Z === RUN TestValidateUUID/wrong_variant_nibble 2026-10-22T08:24:29.829851892Z === RUN TestValidateUUID/path_traversal 2026-10-22T08:24:29.829860154Z === RUN TestValidateUUID/traversal_in_middle 2026-10-22T08:24:29.829871723Z === RUN TestValidateUUID/empty 2026-10-22T08:24:29.829882336Z === RUN TestValidateUUID/random_string 2026-10-22T08:24:29.829898375Z === RUN TestValidateUUID/old_timestamp_format 2026-10-22T08:24:29.829929921Z === RUN TestValidateUUID/uppercase_hex 2026-10-22T08:24:29.829950808Z === RUN TestValidateUUID/spaces 2026-10-22T08:24:29.829971894Z === RUN TestValidateUUID/missing_section 2026-10-22T08:24:29.829990365Z --- PASS: TestValidateUUID (0.00s) 2026-10-22T08:24:29.830029168Z --- PASS: TestValidateUUID/valid_uuid_v4 (0.00s) 2026-10-22T08:24:29.830061212Z --- PASS: TestValidateUUID/another_valid_uuid_v4 (0.00s) 2026-10-22T08:24:29.830096533Z --- PASS: TestValidateUUID/uuid_v1_wrong_version (0.00s) 2026-10-22T08:24:29.830139627Z --- PASS: TestValidateUUID/all_zeros_not_v4 (0.00s) 2026-10-22T08:24:29.83017859Z --- PASS: TestValidateUUID/wrong_variant_nibble (0.00s) 2026-10-22T08:24:29.830218933Z --- PASS: TestValidateUUID/path_traversal (0.00s) 2026-10-22T08:24:29.830259171Z --- PASS: TestValidateUUID/traversal_in_middle (0.00s) 2026-10-22T08:24:29.830289352Z --- PASS: TestValidateUUID/empty (0.00s) 2026-10-22T08:24:29.830322484Z --- PASS: TestValidateUUID/random_string (0.00s) 2026-10-22T08:24:29.830355059Z --- PASS: TestValidateUUID/old_timestamp_format (0.00s) 2026-10-22T08:24:29.830388472Z --- PASS: TestValidateUUID/uppercase_hex (0.00s) 2026-10-22T08:24:29.830418467Z --- PASS: TestValidateUUID/spaces (0.00s) 2026-10-22T08:24:29.830448402Z --- PASS: TestValidateUUID/missing_section (0.00s) 2026-10-22T08:24:29.830466878Z === RUN TestValidateDomainParam 2026-10-22T08:24:29.83048691Z === RUN TestValidateDomainParam/valid_domain 2026-10-22T08:24:29.830505655Z === RUN TestValidateDomainParam/valid_subdomain 2026-10-22T08:24:29.830524053Z === RUN TestValidateDomainParam/path_traversal 2026-10-22T08:24:29.830542954Z === RUN TestValidateDomainParam/null_byte 2026-10-22T08:24:29.830559484Z === RUN TestValidateDomainParam/newline 2026-10-22T08:24:29.830580411Z === RUN TestValidateDomainParam/carriage_return 2026-10-22T08:24:29.830599373Z === RUN TestValidateDomainParam/empty 2026-10-22T08:24:29.830617631Z === RUN TestValidateDomainParam/double_dot_in_middle 2026-10-22T08:24:29.830640506Z === RUN TestValidateDomainParam/forward_slash 2026-10-22T08:24:29.830670381Z === RUN TestValidateDomainParam/tab_character 2026-10-22T08:24:29.830698554Z --- PASS: TestValidateDomainParam (0.00s) 2026-10-22T08:24:29.83072892Z --- PASS: TestValidateDomainParam/valid_domain (0.00s) 2026-10-22T08:24:29.830759115Z --- PASS: TestValidateDomainParam/valid_subdomain (0.00s) 2026-10-22T08:24:29.830797839Z --- PASS: TestValidateDomainParam/path_traversal (0.00s) 2026-10-22T08:24:29.830834779Z --- PASS: TestValidateDomainParam/null_byte (0.00s) 2026-10-22T08:24:29.83086718Z --- PASS: TestValidateDomainParam/newline (0.00s) 2026-10-22T08:24:29.830903879Z --- PASS: TestValidateDomainParam/carriage_return (0.00s) 2026-10-22T08:24:29.830938397Z --- PASS: TestValidateDomainParam/empty (0.00s) 2026-10-22T08:24:29.83097465Z --- PASS: TestValidateDomainParam/double_dot_in_middle (0.00s) 2026-10-22T08:24:29.831012007Z --- PASS: TestValidateDomainParam/forward_slash (0.00s) 2026-10-22T08:24:29.831052Z --- PASS: TestValidateDomainParam/tab_character (0.00s) 2026-10-22T08:24:29.831070326Z === RUN TestValidatePath 2026-10-22T08:24:29.831091823Z === RUN TestValidatePath/simple 2026-10-22T08:24:29.831110255Z === RUN TestValidatePath/nested 2026-10-22T08:24:29.831131559Z === RUN TestValidatePath/with_dots_in_name 2026-10-22T08:24:29.831150946Z === RUN TestValidatePath/empty 2026-10-22T08:24:29.831168482Z === RUN TestValidatePath/path_traversal 2026-10-22T08:24:29.831186535Z === RUN TestValidatePath/hidden_traversal 2026-10-22T08:24:29.831203753Z === RUN TestValidatePath/absolute_path 2026-10-22T08:24:29.831221678Z --- PASS: TestValidatePath (0.00s) 2026-10-22T08:24:29.83124873Z --- PASS: TestValidatePath/simple (0.00s) 2026-10-22T08:24:29.831282547Z --- PASS: TestValidatePath/nested (0.00s) 2026-10-22T08:24:29.831320584Z --- PASS: TestValidatePath/with_dots_in_name (0.00s) 2026-10-22T08:24:29.831364864Z --- PASS: TestValidatePath/empty (0.00s) 2026-10-22T08:24:29.831401862Z --- PASS: TestValidatePath/path_traversal (0.00s) 2026-10-22T08:24:29.831436551Z --- PASS: TestValidatePath/hidden_traversal (0.00s) 2026-10-22T08:24:29.831470917Z --- PASS: TestValidatePath/absolute_path (0.00s) 2026-10-22T08:24:29.831493853Z === RUN TestValidatePathWithinRoot 2026-10-22T08:24:29.831519462Z === RUN TestValidatePathWithinRoot/within_root 2026-10-22T08:24:29.831547936Z === RUN TestValidatePathWithinRoot/nested_within_root 2026-10-22T08:24:29.831576188Z === RUN TestValidatePathWithinRoot/exact_root 2026-10-22T08:24:29.83160038Z === RUN TestValidatePathWithinRoot/escapes_root 2026-10-22T08:24:29.831620306Z === RUN TestValidatePathWithinRoot/traversal_escape 2026-10-22T08:24:29.831644724Z === RUN TestValidatePathWithinRoot/sibling_dir 2026-10-22T08:24:29.831665319Z --- PASS: TestValidatePathWithinRoot (0.00s) 2026-10-22T08:24:29.831700778Z --- PASS: TestValidatePathWithinRoot/within_root (0.00s) 2026-10-22T08:24:29.831736478Z --- PASS: TestValidatePathWithinRoot/nested_within_root (0.00s) 2026-10-22T08:24:29.831771448Z --- PASS: TestValidatePathWithinRoot/exact_root (0.00s) 2026-10-22T08:24:29.831802389Z --- PASS: TestValidatePathWithinRoot/escapes_root (0.00s) 2026-10-22T08:24:29.831839741Z --- PASS: TestValidatePathWithinRoot/traversal_escape (0.00s) 2026-10-22T08:24:29.8318762Z --- PASS: TestValidatePathWithinRoot/sibling_dir (0.00s) 2026-10-22T08:24:29.83189878Z PASS 2026-10-22T08:24:29.831923434Z ok github.com/bnema/gordon/pkg/validation 1.019s 2026-10-22T08:24:29.831948897Z === RUN TestSetStoresAllBuildInfo 2026-10-22T08:24:29.831973064Z --- PASS: TestSetStoresAllBuildInfo (0.00s) 2026-10-22T08:24:29.831994623Z PASS 2026-10-22T08:24:29.832020577Z ok github.com/bnema/gordon/pkg/version 1.008s 2026-10-22T08:24:29.898168987Z Post job cleanup. 2026-10-22T08:24:30.028730351Z (node:11802) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. 2026-10-22T08:24:30.028784132Z (Use `node --trace-deprecation ...` to show where the warning was created) 2026-10-22T08:24:30.031264602Z [command]/opt/hostedtoolcache/go/1.27.3/x64/bin/go env GOMODCACHE 2026-10-22T08:24:30.038431877Z [command]/opt/hostedtoolcache/go/1.27.3/x64/bin/go env GOCACHE 2026-10-22T08:24:30.038478192Z /home/runner/go/pkg/mod 2026-10-22T08:24:30.041213595Z /home/runner/.cache/go-build 2026-10-22T08:24:30.041250675Z Cache hit occurred on the primary key setup-go-Linux-x64-undefined-go-1.27.3-437aff1a951869a25a3f14777df461869b8e34e0c831a9cc78161d339cef3be7, not saving cache. 2026-10-22T08:24:30.046141691Z Post job cleanup. 2026-10-22T08:24:30.130700561Z [command]/usr/bin/git version 2026-10-22T08:24:30.133015779Z git version 2.53.0 2026-10-22T08:24:30.137331405Z Temporarily overriding HOME='/home/runner/work/_temp/3b360c25-985b-46c9-be9b-88be380a7296' before making global git config changes 2026-10-22T08:24:30.137369883Z Adding repository directory to the temporary git global config as a safe directory 2026-10-22T08:24:30.137384073Z [command]/usr/bin/git config --global --add safe.directory /home/runner/work/gordon/gordon 2026-10-22T08:24:30.142842509Z Removing SSH command configuration 2026-10-22T08:24:30.14289165Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand 2026-10-22T08:24:30.14578736Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" 2026-10-22T08:24:30.168660283Z Removing HTTP extra header 2026-10-22T08:24:30.168708756Z [command]/usr/bin/git config --local --name-only --get-regexp http\.http\:\/\/ermite\:7341\/\.extraheader 2026-10-22T08:24:30.171300946Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.http\:\/\/ermite\:7341\/\.extraheader' && git config --local --unset-all 'http.http://ermite:7341/.extraheader' || :" 2026-10-22T08:24:30.194994991Z Removing includeIf entries pointing to credentials config files 2026-10-22T08:24:30.195047634Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir: 2026-10-22T08:24:30.195068295Z includeif.gitdir:/home/runner/work/gordon/gordon/.git.path 2026-10-22T08:24:30.195093721Z includeif.gitdir:/home/runner/work/gordon/gordon/.git/worktrees/*.path 2026-10-22T08:24:30.195110996Z includeif.gitdir:/github/workspace/.git.path 2026-10-22T08:24:30.195133674Z includeif.gitdir:/github/workspace/.git/worktrees/*.path 2026-10-22T08:24:30.19726234Z [command]/usr/bin/git config --local --get-all includeif.gitdir:/home/runner/work/gordon/gordon/.git.path 2026-10-22T08:24:30.197293844Z /home/runner/work/_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config 2026-10-22T08:24:30.200277129Z [command]/usr/bin/git config --local --unset includeif.gitdir:/home/runner/work/gordon/gordon/.git.path /home/runner/work/_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config 2026-10-22T08:24:30.202564725Z [command]/usr/bin/git config --local --get-all includeif.gitdir:/home/runner/work/gordon/gordon/.git/worktrees/*.path 2026-10-22T08:24:30.202605747Z /home/runner/work/_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config 2026-10-22T08:24:30.205196243Z [command]/usr/bin/git config --local --unset includeif.gitdir:/home/runner/work/gordon/gordon/.git/worktrees/*.path /home/runner/work/_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config 2026-10-22T08:24:30.207317108Z [command]/usr/bin/git config --local --get-all includeif.gitdir:/github/workspace/.git.path 2026-10-22T08:24:30.207349103Z /github/runner_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config 2026-10-22T08:24:30.210074671Z [command]/usr/bin/git config --local --unset includeif.gitdir:/github/workspace/.git.path /github/runner_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config 2026-10-22T08:24:30.21220389Z [command]/usr/bin/git config --local --get-all includeif.gitdir:/github/workspace/.git/worktrees/*.path 2026-10-22T08:24:30.212247465Z /github/runner_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config 2026-10-22T08:24:30.214711283Z [command]/usr/bin/git config --local --unset includeif.gitdir:/github/workspace/.git/worktrees/*.path /github/runner_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config 2026-10-22T08:24:30.217397967Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url 2026-10-22T08:24:30.240032081Z Removing credentials config '/home/runner/work/_temp/git-credentials-c43cfe16-e684-47c2-9fbb-5666bbf66959.config' 2026-10-22T08:24:30.245197156Z Cleaning up orphan processes 2026-10-22T08:24:30.245821062Z ##[warning]Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/setup-go@v5. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/