provision: the simulation's failed bumps hold for root too; default 50 seeds (#336)
A failing-bump writer's bump is now refused by giving the index file a second hard link for the length of its write: safefile.OpenFile refuses a file with more than one link, for root too, so the bump fails through the production path. The chmod 0555 control/ it replaces was bypassed by root, which classed every such write as bumped and tripped the coverage guard. Outside Linux (no link check in safefile) the guard drops that class. Default -seeds is 50 (the guard's floor): 2.6 s here; checked as uid 0 under unshare -r as well. One niced 3000-seed sweep on this revision: pass, 2m44s, 5725 failed bumps.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1 file changed,
+41
−13
internal/provision/recordview_sim_test.go+41 −13
CI failed — run details
CI log
=== gate ===
.amadan/test-gate.sh
=== launchctx (0 s)
ok amadan.net/carlos/platform.git/launchctx 0.012s
? amadan.net/carlos/platform.git/launchctx/controlname [no test files]
? amadan.net/carlos/platform.git/launchctx/wireid [no test files]
=== vet (14 s)
=== gofmt (0 s)
gofmt -l .: clean
=== rest (150 s)
? github.com/carlosframework/platform/cmd/changelog [no test files]
ok github.com/carlosframework/platform/cmd/console 3.883s
ok github.com/carlosframework/platform/cmd/moveprobe 11.673s
ok github.com/carlosframework/platform/cmd/zddprobe 0.766s
ok github.com/carlosframework/platform/internal/activator 62.066s
ok github.com/carlosframework/platform/internal/agentsock 0.031s
ok github.com/carlosframework/platform/internal/alerting 0.013s
ok github.com/carlosframework/platform/internal/analytics 0.028s
ok github.com/carlosframework/platform/internal/appconfig 3.054s
ok github.com/carlosframework/platform/internal/apperr 0.199s
ok github.com/carlosframework/platform/internal/applog 0.257s
ok github.com/carlosframework/platform/internal/awsinv 0.007s
ok github.com/carlosframework/platform/internal/boxchoice 0.007s
ok github.com/carlosframework/platform/internal/boxid 0.653s
? github.com/carlosframework/platform/internal/boxid/boxidtest [no test files]
? github.com/carlosframework/platform/internal/boxid/internal/signtest [no test files]
ok github.com/carlosframework/platform/internal/boxvolumes 0.015s
ok github.com/carlosframework/platform/internal/caps 0.025s
ok github.com/carlosframework/platform/internal/certwarm 0.008s
ok github.com/carlosframework/platform/internal/cgroup 0.847s
ok github.com/carlosframework/platform/internal/changelog 0.580s
ok github.com/carlosframework/platform/internal/claimactivation 1.223s
ok github.com/carlosframework/platform/internal/clamd 0.058s
? github.com/carlosframework/platform/internal/cliflag [no test files]
? github.com/carlosframework/platform/internal/controlname [no test files]
? github.com/carlosframework/platform/internal/controlsock [no test files]
ok github.com/carlosframework/platform/internal/dbdoor 5.831s
ok github.com/carlosframework/platform/internal/dbdoor/dbdoortest 0.031s
ok github.com/carlosframework/platform/internal/dbverify 0.013s
ok github.com/carlosframework/platform/internal/dnsrec 0.013s
ok github.com/carlosframework/platform/internal/docsite 0.013s
ok github.com/carlosframework/platform/internal/domains 2.949s
ok github.com/carlosframework/platform/internal/doorkey 0.007s
ok github.com/carlosframework/platform/internal/economics 0.009s
ok github.com/carlosframework/platform/internal/edge 45.083s
? github.com/carlosframework/platform/internal/edgeproof [no test files]
ok github.com/carlosframework/platform/internal/edgesfile 0.008s
ok github.com/carlosframework/platform/internal/fleetapi 0.134s
ok github.com/carlosframework/platform/internal/gate 1.655s
ok github.com/carlosframework/platform/internal/genselect 0.015s
ok github.com/carlosframework/platform/internal/geo 0.018s
ok github.com/carlosframework/platform/internal/geoip 0.030s
ok github.com/carlosframework/platform/internal/historyreadback 0.155s
ok github.com/carlosframework/platform/internal/host 125.607s
ok github.com/carlosframework/platform/internal/hostactors 5.704s
ok github.com/carlosframework/platform/internal/hostactors/awsmembership 0.007s
ok github.com/carlosframework/platform/internal/hostbox 3.040s
ok github.com/carlosframework/platform/internal/hostclaim 0.797s
ok github.com/carlosframework/platform/internal/hostenv 0.006s
ok github.com/carlosframework/platform/internal/hostevidence 0.006s
ok github.com/carlosframework/platform/internal/hostexec 5.409s
ok github.com/carlosframework/platform/internal/hostfence 0.052s
ok github.com/carlosframework/platform/internal/hostfiles 10.317s
ok github.com/carlosframework/platform/internal/hostfloor 0.018s
ok github.com/carlosframework/platform/internal/hostguard 1.032s
ok github.com/carlosframework/platform/internal/hostops 1.938s
? github.com/carlosframework/platform/internal/hostops/fencerelease [no test files]
ok github.com/carlosframework/platform/internal/hostops/internal/fencerelease 0.002s
ok github.com/carlosframework/platform/internal/hostquarantine 0.008s
ok github.com/carlosframework/platform/internal/hostrelocate 0.667s
ok github.com/carlosframework/platform/internal/hostresolve 0.227s
ok github.com/carlosframework/platform/internal/hostwrite 0.002s
ok github.com/carlosframework/platform/internal/infraview 0.002s
ok github.com/carlosframework/platform/internal/instancectl 5.234s
ok github.com/carlosframework/platform/internal/instanceexec 2.790s
ok github.com/carlosframework/platform/internal/instancefs 0.009s
ok github.com/carlosframework/platform/internal/instancekey 0.006s
ok github.com/carlosframework/platform/internal/instanceupdates 0.010s
ok github.com/carlosframework/platform/internal/layout 1.716s
ok github.com/carlosframework/platform/internal/lbhealth 0.003s
ok github.com/carlosframework/platform/internal/lease 10.108s
ok github.com/carlosframework/platform/internal/lease/leasetest 0.570s
ok github.com/carlosframework/platform/internal/ledger 0.024s
ok github.com/carlosframework/platform/internal/mail 0.277s
ok github.com/carlosframework/platform/internal/maintenance 0.099s
ok github.com/carlosframework/platform/internal/maintenanceexec 5.560s
ok github.com/carlosframework/platform/internal/maintenanceguard 0.084s
ok github.com/carlosframework/platform/internal/metrics 0.006s
ok github.com/carlosframework/platform/internal/moves 22.345s
ok github.com/carlosframework/platform/internal/moves/archive 1.013s
ok github.com/carlosframework/platform/internal/objstore 0.307s
ok github.com/carlosframework/platform/internal/ops 0.223s
ok github.com/carlosframework/platform/internal/park 0.288s
ok github.com/carlosframework/platform/internal/plans 0.008s
ok github.com/carlosframework/platform/internal/privatefile 0.006s
2026/10/22 09:17:19 provision: listing apps/bab/blog/instances/: list refused — its records are unseen this pass
2026/10/22 09:17:19 provision: listing apps/bab/: listdirs refused — its records are unseen this pass
2026/10/22 09:17:19 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:19 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:19 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:19 provision: listing apps/bac/tito/instances/: list refused — its records are unseen this pass
2026/10/22 09:17:19 provision: listing apps/bac/tito/instances/: list refused — its records are unseen this pass
2026/10/22 09:17:19 provision: skipping record apps/bac/tito/instances/one.example.com.json: unreadable: read refused
2026/10/22 09:17:19 provision: listing apps/bac/tito/instances/: list refused — its records are unseen this pass
2026/10/22 09:17:19 provision: an app's records could not be listed: they are skipped
2026/10/22 09:17:19 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/22 09:17:19 provision: remove retired instance route shop.example: provision: claim admission unavailable
2026/10/22 09:17:19 provision: remove retired instance route shop.example: provision: claim admission unavailable
2026/10/22 09:17:19 provision: remove retired sidecar route worker.sidecar.internal: provision: claim admission unavailable
2026/10/22 09:17:19 provision: remove retired sidecar route worker.sidecar.internal: provision: claim admission unavailable
2026/10/22 09:17:19 provision: claim install acme.go.tito.io: provision: claim admission unavailable
2026/10/22 09:17:19 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:19 provision: claim install acme.go.tito.io: registry: claim row ownership changed or unknown
2026/10/22 09:17:19 provision: claim install bot.eleven.bac.sidecar.internal: provision: claim admission unavailable
2026/10/22 09:17:19 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["run"])
2026/10/22 09:17:19 provision: claim install bot.eleven.bac.sidecar.internal: registry: claim row ownership changed or unknown
2026/10/22 09:17:19 provision: refusing to mint route acme.go.tito.io (app "tito" acct "bac"): this box declares CARLOS_INBOUND=none (no-inbound) and cannot serve routed instance traffic
2026/10/22 09:17:20 provision: acme.go.tito.io: not minting this pass: the box's layout intent could not be read: no sealed config
2026/10/22 09:17:20 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: REFUSING to mint sidecar bot.eleven.bac.sidecar.internal: bot.eleven.bac.sidecar.internal-sidecar.env is staged on this box — the legacy file co-spawn and a native sidecar row are two mechanisms for one host; remove the file to migrate this host onto sidecar records
2026/10/22 09:17:20 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["run"])
2026/10/22 09:17:20 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["run"])
2026/10/22 09:17:20 provision: refusing to mint route acme.go.tito.io (app "tito" acct "bac"): this box declares CARLOS_INBOUND=none (no-inbound) and cannot serve routed instance traffic
2026/10/22 09:17:20 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: REFUSING to mint sidecar bot.eleven.bac.sidecar.internal: bot.eleven.bac.sidecar.internal-sidecar.env is staged on this box — the legacy file co-spawn and a native sidecar row are two mechanisms for one host; remove the file to migrate this host onto sidecar records
2026/10/22 09:17:20 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["run"])
2026/10/22 09:17:20 provision: acme.go.tito.io exists but is not the route this record describes (app "other"/"tito") — leaving it alone
2026/10/22 09:17:20 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: claim install acme.go.tito.io: registry: claim row ownership changed or unknown
2026/10/22 09:17:20 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: claim install acme.go.tito.io: registry: claim row ownership changed or unknown
2026/10/22 09:17:20 provision: bot.eleven.bac.sidecar.internal exists but is not a sidecar row this pass owns (kind "sidecar" provisioned false app "eleven" acct "bac") — leaving it alone
2026/10/22 09:17:20 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["run"])
2026/10/22 09:17:20 provision: claim install bot.eleven.bac.sidecar.internal: registry: claim row ownership changed or unknown
2026/10/22 09:17:20 provision: acme.go.tito.io exists but is not the route this record describes (app "other"/"tito") — leaving it alone
2026/10/22 09:17:20 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: adopted existing route acme.go.tito.io (app "tito" acct "bac") — this record now owns its channel and environment
2026/10/22 09:17:20 provision: bot.eleven.bac.sidecar.internal exists but is not a sidecar row this pass owns (kind "sidecar" provisioned false app "eleven" acct "bac") — leaving it alone
2026/10/22 09:17:20 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/22 09:17:20 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: skipping record apps/bac/tito/instances/acme.go.tito.io.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:20 provision: skipping record apps/bac/tito/instances/new.go.tito.io.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:20 provision: not removing acme.go.tito.io: its record exists but could not be read cleanly this pass
2026/10/22 09:17:20 provision: skipping record apps/bac/tito/instances/acme.go.tito.io.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:20 provision: skipping record apps/bac/tito/instances/new.go.tito.io.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:20 provision: minted instance route ra.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route rb.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route rc.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route rd.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route re.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route rf.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route rj.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route rg.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route rh.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route ri.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route rk.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route rl.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route rd.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route ra.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route rb.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route rc.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: skipping record apps/bac/tito/instances/rb.go.tito.io.json: read failed: read refused
2026/10/22 09:17:20 provision: skipping record apps/bac/tito/instances/rb.go.tito.io.json: read failed: read refused
2026/10/22 09:17:20 provision: minted instance route re.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route x.appd.example (app "appd" acct "bac")
2026/10/22 09:17:20 provision: minted instance route x.appf.example (app "appf" acct "bac")
2026/10/22 09:17:20 provision: minted instance route x.appg.example (app "appg" acct "bac")
2026/10/22 09:17:20 provision: minted instance route x.appi.example (app "appi" acct "bac")
2026/10/22 09:17:20 provision: minted instance route x.appe.example (app "appe" acct "bac")
2026/10/22 09:17:20 provision: minted instance route x.apph.example (app "apph" acct "bac")
2026/10/22 09:17:20 provision: minted instance route x.appj.example (app "appj" acct "bac")
2026/10/22 09:17:20 provision: minted instance route x.appa.example (app "appa" acct "bac")
2026/10/22 09:17:20 provision: minted instance route x.appb.example (app "appb" acct "bac")
2026/10/22 09:17:20 provision: minted instance route x.appc.example (app "appc" acct "bac")
2026/10/22 09:17:20 provision: bac/tito is in the trash — not minting instance routes for it
2026/10/22 09:17:20 provision: minted instance route r0071.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0073.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0047.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0112.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0004.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0006.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0009.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0105.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0109.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0126.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0015.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0035.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0090.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0097.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0106.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0043.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0115.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0122.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0026.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0049.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0051.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0061.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0083.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0085.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0022.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0017.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0062.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0087.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0100.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0120.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0023.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0096.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0001.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0018.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0080.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0086.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0127.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0020.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0038.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0044.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0045.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0033.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0113.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0013.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0028.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0094.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0005.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0063.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0088.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0117.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0032.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0042.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0056.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0093.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0103.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0057.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0107.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0116.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0000.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0065.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0079.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0089.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0041.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0078.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0108.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0052.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0031.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0060.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0104.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0110.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0129.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0046.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0053.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0081.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0101.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0124.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0002.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0019.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0077.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0125.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0036.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0054.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0074.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0076.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0118.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0012.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0025.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0037.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0058.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0072.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0114.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0121.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0034.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0099.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0011.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0016.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0040.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0059.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0123.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0039.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0067.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0007.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0008.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0010.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0030.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0070.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0075.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0082.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0092.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0027.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0003.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0024.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0029.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:20 provision: minted instance route r0068.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0095.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0098.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0102.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0119.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0048.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0066.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0111.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0021.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0050.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0064.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0084.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0091.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0128.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0014.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0055.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:21 provision: minted instance route r0069.go.tito.io (app "tito" acct "bac")
--- FAIL: TestPlan9B8RecordWriteCensus (0.69s)
plan9_b8_census_test.go:372: record-write census rejected 13 site(s); update the explicit inventory only after reviewing the source:
changed site internal/release/store.go:DirStore.Put: source differs from the reviewed digest
changed site internal/release/store.go:DirStore.PutFrom: source differs from the reviewed digest
changed site internal/release/store.go:S3Store.Put: source differs from the reviewed digest
changed site internal/release/store.go:S3Store.PutFrom: source differs from the reviewed digest
unlisted site internal/provision/recordview.go:RecordView.readApp [key:SidecarManifestKey]: review it, classify it, and update its explicit inventory entry
unlisted site internal/provision/recordview.go:RecordView.readScope [lit:instances,lit:sidecars]: review it, classify it, and update its explicit inventory entry
unlisted site internal/provision/recordview.go:RecordView.walk [lit:instances,lit:sidecars]: review it, classify it, and update its explicit inventory entry
unlisted site internal/provision/recordview.go:walkComplete [lit:instances,lit:sidecars]: review it, classify it, and update its explicit inventory entry
unlisted site internal/provision/recordview_store.go:ViewSnapshot.list [lit:instances,lit:sidecars]: review it, classify it, and update its explicit inventory entry
unlisted site internal/provision/recordview_store.go:ViewSnapshot.lookup [lit:instances,lit:sidecars]: review it, classify it, and update its explicit inventory entry
unlisted site internal/provision/recordview_store.go:snapStore.Put [def:Put,sel:Put]: review it, classify it, and update its explicit inventory entry
unlisted site internal/provision/recordview_store.go:snapStore.PutFrom [def:PutFrom,sel:PutObjectFrom]: review it, classify it, and update its explicit inventory entry
unlisted site internal/provision/recordview_store.go:uncachedStore.Put [def:Put]: review it, classify it, and update its explicit inventory entry
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: refusing to mint route acme.go.tito.io (app "tito" acct "bac"): this box declares CARLOS_INBOUND=none (no-inbound) and cannot serve routed instance traffic
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted instance route console.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted service route ha.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted static route site.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted service route svc.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted instance route whole.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted instance route shared.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: converged acme.go.tito.io channel stable -> edge
2026/10/22 09:17:22 provision: converged acme.go.tito.io channel edge -> canary/rehearsal
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: skipping record apps/bac/tito/instances/acme.go.tito.io.json: empty channel
2026/10/22 09:17:22 provision: not removing acme.go.tito.io: its record exists but could not be read cleanly this pass
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: converged acme.go.tito.io environment "" -> "staging"
2026/10/22 09:17:22 provision: converged acme.go.tito.io environment "staging" -> ""
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: converged acme.go.tito.io steering "" -> "latency"
2026/10/22 09:17:22 provision: converged acme.go.tito.io steering "latency" -> ""
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: converged acme.go.tito.io hibernate false -> true
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: converged acme.go.tito.io hibernate true -> false (replication "daily" cleared: only a hibernating route's rung is read)
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: converged acme.go.tito.io status-named false -> true
2026/10/22 09:17:22 provision: converged acme.go.tito.io status-named true -> false
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted service route ha.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: converged ha.go.tito.io upstreams addr "" -> "", addrs "127.0.0.1:7001,127.0.0.1:7002" -> "127.0.0.1:7001,127.0.0.1:7003" (probe "{\"path\":\"/\",\"status\":200,\"interval_ms\":2000,\"fail_after\":3,\"rise_after\":2}" -> "{\"path\":\"/\",\"status\":200,\"interval_ms\":2000,\"fail_after\":3,\"rise_after\":2}")
2026/10/22 09:17:22 provision: converged ha.go.tito.io upstreams addr "" -> "", addrs "127.0.0.1:7001,127.0.0.1:7003" -> "127.0.0.1:7003,127.0.0.1:7001" (probe "{\"path\":\"/\",\"status\":200,\"interval_ms\":2000,\"fail_after\":3,\"rise_after\":2}" -> "{\"path\":\"/\",\"status\":200,\"interval_ms\":2000,\"fail_after\":3,\"rise_after\":2}")
2026/10/22 09:17:22 provision: converged ha.go.tito.io upstreams addr "" -> "", addrs "127.0.0.1:7003,127.0.0.1:7001" -> "127.0.0.1:7003,127.0.0.1:7001" (probe "{\"path\":\"/\",\"status\":200,\"interval_ms\":2000,\"fail_after\":3,\"rise_after\":2}" -> "{\"path\":\"/healthz\",\"status\":200,\"interval_ms\":2000,\"fail_after\":3,\"rise_after\":2}")
2026/10/22 09:17:22 provision: minted service route whole.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: converged whole.go.tito.io upstreams addr "127.0.0.1:9443" -> "", addrs "" -> "127.0.0.1:9443,127.0.0.1:9444" (probe "" -> "{\"path\":\"/\",\"status\":200,\"interval_ms\":2000,\"fail_after\":3,\"rise_after\":2}")
2026/10/22 09:17:22 provision: converged whole.go.tito.io upstreams addr "" -> "", addrs "127.0.0.1:9443,127.0.0.1:9444" -> "" (probe "{\"path\":\"/\",\"status\":200,\"interval_ms\":2000,\"fail_after\":3,\"rise_after\":2}" -> "")
2026/10/22 09:17:22 provision: whole.go.tito.io: record describes a different route SHAPE than the row (kind "instance"/"service" unit ""/"" socket "/run/carlos/whole.go.tito.io.sock"/"" db "/data/whole.go.tito.io.db"/"") — not converged in place; `carlos remove whole.go.tito.io` purges this route's capability grants (registry.Delete's contract, not a bug) before the next pass re-mints it, so treat that as a last resort, not a routine fix
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: minted service route whole.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: acme.go.tito.io exists but is not the route this record describes (app "other"/"tito") — leaving it alone
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: removed retired instance route acme.go.tito.io (record gone)
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: skipping accounts/bac/account.json: malformed account manifest: invalid character 'o' in literal null (expecting 'u')
2026/10/22 09:17:22 provision: removed retired instance route acme.go.tito.io (record gone)
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: manifest bac/tito: read failed: provision: manifest bac/tito: invalid character 'o' in literal null (expecting 'u')
2026/10/22 09:17:22 provision: skipping record apps/bac/tito/instances/acme.go.tito.io.json: disagrees with its own path (host="wrong-host.go.tito.io" account="bac" app="tito")
2026/10/22 09:17:22 provision: skipping record apps/bac/tito/instances/acme$evil.go.tito.io.json: host "acme$evil.go.tito.io" is not a hostname
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: skipping record apps/bac/tito/instances/acme$evil.go.tito.io.json: host "acme$evil.go.tito.io" is not a hostname
2026/10/22 09:17:22 provision: not removing acme$evil.go.tito.io: its record exists but could not be read cleanly this pass
2026/10/22 09:17:22 provision: skipping record apps/bac/tito/instances/bad-service.go.tito.io.json: invalid shape: kind service with no addr: the platform only proxies to a service, so the record must name the upstream it proxies to
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: skipping record apps/bac/tito/instances/bad-service.go.tito.io.json: invalid shape: kind service with no addr: the platform only proxies to a service, so the record must name the upstream it proxies to
2026/10/22 09:17:22 provision: not removing bad-service.go.tito.io: its record exists but could not be read cleanly this pass
2026/10/22 09:17:22 provision: skipping record apps/bac/tito/instances/no-channel.go.tito.io.json: empty channel
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: skipping record apps/bac/tito/instances/no-channel.go.tito.io.json: empty channel
2026/10/22 09:17:22 provision: not removing no-channel.go.tito.io: its record exists but could not be read cleanly this pass
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: skipping record apps/bac/tito/instances/acme.go.tito.io.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:22 provision: not removing acme.go.tito.io: its record exists but could not be read cleanly this pass
2026/10/22 09:17:22 provision: removed retired instance route ghost.go.tito.io (record gone)
2026/10/22 09:17:22 provision: duplicate host dup.go.tito.io: keeping apps/bac/tito/instances/dup.go.tito.io.json, skipping apps/bad/tito/instances/dup.go.tito.io.json
2026/10/22 09:17:22 provision: minted instance route dup.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: bac/tito is in the trash — not minting instance routes for it
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: bac/tito is in the trash — not minting instance routes for it
2026/10/22 09:17:22 provision: removed retired instance route acme.go.tito.io (app in the trash)
2026/10/22 09:17:22 provision: minted static route site.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: bac/tito is in the trash — not minting instance routes for it
2026/10/22 09:17:22 provision: removed retired static route site.go.tito.io (app in the trash)
2026/10/22 09:17:22 provision: trash marker for bac/tito unreadable: release: malformed trash marker for bac/tito: invalid character 'n' looking for beginning of object key string — not minting for this app
2026/10/22 09:17:22 provision: bac/tito is in the trash — not minting instance routes for it
2026/10/22 09:17:22 provision: removed retired instance route acme.go.tito.io (app in the trash)
2026/10/22 09:17:22 provision: bac/tito is in the trash — not minting instance routes for it
2026/10/22 09:17:22 provision: trash marker for bac/tito unreadable: release: malformed trash marker for bac/tito: invalid character 'n' looking for beginning of object key string — not minting for this app
2026/10/22 09:17:22 provision: adopted existing route acme.go.tito.io (app "tito" acct "bac") — this record now owns its channel and environment
2026/10/22 09:17:22 provision: converged acme.go.tito.io channel stable -> edge
2026/10/22 09:17:22 provision: adopted existing route acme.go.tito.io (app "tito" acct "bac") — this record now owns its channel and environment
2026/10/22 09:17:22 provision: converged acme.go.tito.io channel canary/rehearsal -> edge
2026/10/22 09:17:22 provision: converged acme.go.tito.io environment "staging" -> ""
2026/10/22 09:17:22 provision: acme.go.tito.io exists but is not the route this record describes (app "other"/"tito") — leaving it alone
2026/10/22 09:17:22 provision: acme.go.tito.io exists but is not the route this record describes (backing "unit" (box-scoped, not expressible in a record)) — leaving it alone
2026/10/22 09:17:22 provision: acme.go.tito.io exists but is not the route this record describes (tunnel "pi-fleet" (box-scoped, not expressible in a record)) — leaving it alone
2026/10/22 09:17:22 provision: acme.go.tito.io exists but is not the route this record describes (caps "port:25" (box-scoped, not expressible in a record)) — leaving it alone
2026/10/22 09:17:22 provision: acme.go.tito.io exists but is not the route this record describes (platform (owned by the domains reconcile pass)) — leaving it alone
2026/10/22 09:17:22 provision: acme.go.tito.io exists but is not the route this record describes (canary (owned by the domains reconcile pass)) — leaving it alone
2026/10/22 09:17:22 provision: acme.go.tito.io exists but is not the route this record describes (db "/data/other.db"/"/data/acme.go.tito.io.db") — leaving it alone
2026/10/22 09:17:22 provision: adopted existing route acme.go.tito.io (app "tito" acct "bac") — this record now owns its channel and environment
2026/10/22 09:17:22 provision: removed retired instance route acme.go.tito.io (record gone)
2026/10/22 09:17:22 provision: dry-run: would mint instance route acme.go.tito.io (app "tito" acct "bac" channel "stable")
2026/10/22 09:17:22 provision: dry-run: would adopt existing route adopt.go.tito.io (app "tito" acct "bac") — this record would own its channel and environment
2026/10/22 09:17:22 provision: dry-run: would converge adopt.go.tito.io channel stable -> edge
2026/10/22 09:17:22 provision: dry-run: would converge adopt.go.tito.io environment "" -> "staging"
2026/10/22 09:17:22 provision: dry-run: would converge owned.go.tito.io channel stable -> edge
2026/10/22 09:17:22 provision: dry-run: would converge owned.go.tito.io environment "" -> "staging"
2026/10/22 09:17:22 provision: dry-run: would converge owned.go.tito.io hibernate false -> true
2026/10/22 09:17:22 provision: dry-run: would converge owned.go.tito.io seed
2026/10/22 09:17:22 provision: dry-run: would remove retired instance route gone.go.tito.io (record gone)
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: adopted existing route adopt.go.tito.io (app "tito" acct "bac") — this record now owns its channel and environment
2026/10/22 09:17:22 provision: converged adopt.go.tito.io channel stable -> edge
2026/10/22 09:17:22 provision: converged adopt.go.tito.io environment "" -> "staging"
2026/10/22 09:17:22 provision: converged owned.go.tito.io channel stable -> edge
2026/10/22 09:17:22 provision: converged owned.go.tito.io environment "" -> "staging"
2026/10/22 09:17:22 provision: converged owned.go.tito.io hibernate false -> true
2026/10/22 09:17:22 provision: removed retired instance route gone.go.tito.io (record gone)
2026/10/22 09:17:22 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:22 provision: adopted existing route story.carlosframework.com (app "story" acct "bad") — this record now owns its channel and environment
2026/10/22 09:17:22 provision: story.carlosframework.com exists but is not the route this record describes (kind "instance"/"static") — leaving it alone
2026/10/22 09:17:23 provision: minted static route site.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted service route pubs.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted service route pub.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route unit.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route exec.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted service route loop.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted service route named.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted service route priv.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted static route site.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted static route pisite.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted static route site.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: removed retired static route site.go.tito.io (record gone)
2026/10/22 09:17:23 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route acme-uk.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: converged acme.go.tito.io replicas "ie,uk" -> "uk"
2026/10/22 09:17:23 provision: converged acme.go.tito.io replicas "uk" -> ""
2026/10/22 09:17:23 provision: minted instance route acme-uk.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: converged acme-uk.go.tito.io replica mark true -> false
2026/10/22 09:17:23 provision: minted instance route router.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: acme.go.tito.io: row is on the nested layout (db "/data/instances/acme.go.tito.io/acme.go.tito.io.db" socket "/run/carlos/instances/acme.go.tito.io/app.sock"); the record's shared paths are not drift
2026/10/22 09:17:23 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route router.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route router.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: minted instance route router.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:23 provision: router.go.tito.io: not minting this pass: the box's layout intent could not be read: store down
2026/10/22 09:17:23 provision: acme.go.tito.io: not minting this pass: the box's layout intent could not be read: store down
2026/10/22 09:17:23 provision: adopted existing route acme.go.tito.io (app "tito" acct "bac") — this record now owns its channel and environment
2026/10/22 09:17:23 provision: converged acme.go.tito.io channel stable -> edge
2026/10/22 09:17:23 provision: minted instance route acme.go.tito.io held landing by mv_acme (app "tito" acct "bac")
2026/10/22 09:17:23 provision: not removing acme.go.tito.io (record gone): participant of a running operation
2026/10/22 09:17:23 provision: removed retired instance route acme.go.tito.io (record gone)
2026/10/22 09:17:23 provision: minted instance route acme.go.tito.io held landing by mv_acme (app "tito" acct "bac")
2026/10/22 09:17:23 provision: refusing to mint held route acme.go.tito.io (app "tito" acct "bac"): this box declares CARLOS_INBOUND=none (no-inbound) and cannot serve routed instance traffic
2026/10/22 09:17:23 provision: held acme.go.tito.io landing by mv_acme (was ready)
2026/10/22 09:17:23 provision: acme.go.tito.io: held restoring by rb_other, not by mv_acme; leaving it
2026/10/22 09:17:23 provision: acme.go.tito.io: the row is not this pass's (app "other" acct ""); not holding it for mv_acme
2026/10/22 09:17:23 provision: acme.go.tito.io exists but is not the route this record describes (app "other"/"tito") — leaving it alone
2026/10/22 09:17:23 provision: dry-run: would mint instance route acme.go.tito.io held landing by mv_acme (app "tito" acct "bac" channel "stable")
2026/10/22 09:17:23 provision: acme.go.tito.io: not held landing by mv_acme: the row's hold changed under this pass; the next pass judges it afresh
2026/10/22 09:17:23 provision: held acme.go.tito.io landing by mv_acme (was ready)
2026/10/22 09:17:23 provision: minted instance route acme.example.com (app "shop" acct "bac")
2026/10/22 09:17:23 provision: minted instance route plain.example.com (app "shop" acct "bac")
2026/10/22 09:17:23 provision: skipping record apps/bac/shop/instances/garbled.shop.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:23 provision: skipping record apps/bac/shop/instances/liar.shop.example.com.json: disagrees with its own path (host="other.shop.example.com" account="bac" app="shop")
2026/10/22 09:17:23 provision: skipping record apps/bac/shop/instances/garbled.shop.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:23 provision: skipping record apps/bac/shop/instances/liar.shop.example.com.json: disagrees with its own path (host="other.shop.example.com" account="bac" app="shop")
2026/10/22 09:17:23 provision: skipping record apps/bac/shop/instances/garbled.shop.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:23 provision: skipping record apps/bac/shop/instances/liar.shop.example.com.json: disagrees with its own path (host="other.shop.example.com" account="bac" app="shop")
2026/10/22 09:17:23 provision: skipping record apps/bac/shop/instances/garbled.shop.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:23 provision: listing apps/bac/shop/instances/: list refused — its records are unseen this pass
2026/10/22 09:17:24 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:24 provision: a.shop.example.com: swapped for import sd_dpfyukzfqhd4jfl52kqjnjeu6m (the original route is journaled)
2026/10/22 09:17:24 provision: a.shop.example.com: import sd_dpfyukzfqhd4jfl52kqjnjeu6m committed: its gate is cleared and its journal row dropped
2026/10/22 09:17:24 provision: a.shop.example.com: row is on the nested layout (db "/data/instances/a.shop.example.com/a.shop.example.com.db" socket "/run/carlos/instances/a.shop.example.com/app.sock"); the record's shared paths are not drift
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_5myreiko6fmcnciqxzlsmjtmxi rolled back to its original route
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_5myreiko6fmcnciqxzlsmjtmxi: the host's replica is left alone: the record apps/bac/shop/instances/a.shop.example.com.json holds the host
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_5myreiko6fmcnciqxzlsmjtmxi is cleaned up and its journal row retired
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_hr7md4xrf3xak725znyltthbvu rolled back to its original route
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_hr7md4xrf3xak725znyltthbvu: the host's replica is left alone: the record apps/bac/shop/instances/a.shop.example.com.json holds the host
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_hr7md4xrf3xak725znyltthbvu is cleaned up and its journal row retired
2026/10/22 09:17:25 provision: dry-run: would redo a.shop.example.com's swap record CAS for import sd_iupv74olxzn57jphh26dzl3yti
2026/10/22 09:17:25 provision: dry-run: would clear a.shop.example.com's import gate
2026/10/22 09:17:25 provision: dry-run: would converge a.shop.example.com seed source
2026/10/22 09:17:25 provision: a.shop.example.com: row is on the nested layout (db "/data/instances/a.shop.example.com/a.shop.example.com.db" socket "/run/carlos/instances/a.shop.example.com/app.sock"); the record's shared paths are not drift
2026/10/22 09:17:25 provision: a.shop.example.com: the import's record apps/bac/shop/instances/a.shop.example.com.json is not one this pass can use (connection reset)
2026/10/22 09:17:25 provision: a.shop.example.com: the import's record apps/bac/shop/instances/a.shop.example.com.json is not one this pass can use (provision: invalid maintenance projection or protected fields)
2026/10/22 09:17:25 provision: a.shop.example.com: the import's record apps/bac/shop/instances/a.shop.example.com.json is not one this pass can use (the record under apps/bac/shop/instances/a.shop.example.com.json is apps/bac/shop/instances/b.shop.example.com.json's)
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_zsj7lfwtrjtv57psnw4rizhkxu cannot roll back on this box: the activator is not wired; it stays journaled and gated
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_qc3oxpa5vmf3lzmm2stdwr2g3i cannot roll back on this box: the activator is not wired; it stays journaled and gated
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_65lupzxvsnovgc26up6323rjw4 is journaled, but this box cannot act on imports; its row is left alone
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_tt56jrizkwngfxqmfodnkwjm34 is journaled, but this box cannot act on imports; its row is left alone
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_yzjzjqeoiywcoe423imnplklea is journaled, but this box cannot act on imports; its row is left alone
2026/10/22 09:17:25 provision: the import journal could not be read: registry: import journal a.shop.example.com: original row: unexpected end of JSON input (no import is acted on and no route is removed this pass)
2026/10/22 09:17:25 provision: b.shop.example.com: import sd_qb3fvod54gmd2xsvwtprvqa7oi left alone this pass: the import journal could not be read
2026/10/22 09:17:25 provision: c.shop.example.com: import sd_qg7hz44vj5kuky2imscbdel7ye left alone this pass: the import journal could not be read
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_4lv4b6dit2stdepxvgor2ci3ru committed: its gate is cleared and its journal row dropped
2026/10/22 09:17:25 provision: a.shop.example.com: not converging import sd_qeouheidcxan7onz2ej6stsoba: it is swapped but not committed, and the row on this box has no import gate
2026/10/22 09:17:25 provision: a.shop.example.com: not converging import sd_qaphwt5vnjttkhxcm2pfujk7hm: it is swapped but not committed, and the row on this box has no import gate
2026/10/22 09:17:25 provision: a.shop.example.com: not converging import sd_jnhjhzeqisckn6y5r2guso7sy4: it is placed but not committed, and the row on this box has no import gate
2026/10/22 09:17:25 provision: a.shop.example.com: not converging import sd_yvlaalhwnxnyqbomd2cmglj6hy: it is placed but not committed, and the row on this box has no import gate
2026/10/22 09:17:25 provision: a.shop.example.com: row is on the nested layout (db "/data/instances/a.shop.example.com/a.shop.example.com.db" socket "/run/carlos/instances/a.shop.example.com/app.sock"); the record's shared paths are not drift
2026/10/22 09:17:25 provision: converge seed source on a.shop.example.com: constraint failed: seed_source is read-only here (1811)
2026/10/22 09:17:25 provision: a.shop.example.com: row is on the nested layout (db "/data/instances/a.shop.example.com/a.shop.example.com.db" socket "/run/carlos/instances/a.shop.example.com/app.sock"); the record's shared paths are not drift
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_4ta7f2lkbtkfrseayuhdgtbuoe committed: its gate is cleared and its journal row dropped
2026/10/22 09:17:25 provision: a.shop.example.com: row is on the nested layout (db "/data/instances/a.shop.example.com/a.shop.example.com.db" socket "/run/carlos/instances/a.shop.example.com/app.sock"); the record's shared paths are not drift
2026/10/22 09:17:25 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:25 provision: acme.go.tito.io: row is on the nested layout (db "/data/instances/acme.go.tito.io/acme.go.tito.io.db" socket "/run/carlos/instances/acme.go.tito.io/app.sock"); the record's shared paths are not drift
2026/10/22 09:17:25 provision: acme.go.tito.io: not minting a seeded instance: claim control is on for this box
2026/10/22 09:17:25 provision: acme.go.tito.io: not minting a seeded instance: this box does not mint nested (<nil>)
2026/10/22 09:17:25 provision: acme.go.tito.io: aborted seed sd_ajggdtobkvx66vqzqufkfpm7fa: this box cannot read seed markers, and places no seed; nothing local is removed
2026/10/22 09:17:25 provision: acme.go.tito.io: aborted seed sd_ajggdtobkvx66vqzqufkfpm7fa rolled back (no box had swapped it)
2026/10/22 09:17:25 provision: acme.go.tito.io: not minting a seeded instance: its record does not describe a hibernating instance
2026/10/22 09:17:25 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:25 provision: removed instance route acme.go.tito.io (its seed sd_hbltixf4pvydqtvoaogxq2r3dm was aborted); the next pass rolls it back
2026/10/22 09:17:25 provision: acme.go.tito.io: aborted seed sd_hbltixf4pvydqtvoaogxq2r3dm: this box cannot read seed markers, and places no seed; nothing local is removed
2026/10/22 09:17:25 provision: acme.go.tito.io: aborted seed sd_hbltixf4pvydqtvoaogxq2r3dm rolled back (no box had swapped it)
2026/10/22 09:17:25 provision: acme.go.tito.io: aborted seed sd_tkaeopm2saedv45vdvjvq2odoa has a row this pass may not remove; leaving the seed aborted
2026/10/22 09:17:25 provision: acme.go.tito.io: aborted seed sd_vbhn2whicj25qdlq2y4nbimroy rolled back (no box had swapped it)
2026/10/22 09:17:25 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:25 provision: removed instance route acme.go.tito.io (its seed sd_hnuydh7w7ibjnqgbbhk57irxvq was aborted); the next pass rolls it back
2026/10/22 09:17:25 provision: acme.go.tito.io: aborted seed sd_hnuydh7w7ibjnqgbbhk57irxvq has no route on this box: its local data is removed
2026/10/22 09:17:25 provision: acme.go.tito.io: aborted seed sd_hnuydh7w7ibjnqgbbhk57irxvq rolled back (no box had swapped it)
2026/10/22 09:17:25 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:25 provision: a.shop.example.com: swapped for import sd_jlwdrigmqkouaiywxrjlmqywhy (the original route is journaled)
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_jlwdrigmqkouaiywxrjlmqywhy rolled back to its original route
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_jlwdrigmqkouaiywxrjlmqywhy is cleaned up and its journal row retired
2026/10/22 09:17:25 provision: a.shop.example.com: swapped for import sd_ql5thwvifs6dtp5oecp7wfk7su (the original route is journaled)
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_ql5thwvifs6dtp5oecp7wfk7su rolled back to its original route
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_ql5thwvifs6dtp5oecp7wfk7su is cleaned up and its journal row retired
2026/10/22 09:17:25 provision: a.shop.example.com: swapped for import sd_cakbdiwbukk3ikf5zhm3h3b3iu (the original route is journaled)
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_cakbdiwbukk3ikf5zhm3h3b3iu rolled back to its original route
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_cakbdiwbukk3ikf5zhm3h3b3iu: the host's replica is left alone: its record no longer names this seed
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_cakbdiwbukk3ikf5zhm3h3b3iu is cleaned up and its journal row retired
2026/10/22 09:17:25 provision: a.shop.example.com: swapped for import sd_hhdo5bduqs6jq5im26wgloi4hy (the original route is journaled)
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_hhdo5bduqs6jq5im26wgloi4hy rollback deferred: the host is not fenced and stopped yet (<nil>)
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_hhdo5bduqs6jq5im26wgloi4hy rolled back to its original route
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_hhdo5bduqs6jq5im26wgloi4hy is cleaned up and its journal row retired
2026/10/22 09:17:25 provision: a.shop.example.com: swapped for import sd_cufi5ij5l6scyiqj6gccm4lpki (the original route is journaled)
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_cufi5ij5l6scyiqj6gccm4lpki rollback deferred: the host is not fenced and stopped yet (stop unproven)
2026/10/22 09:17:25 provision: a.shop.example.com: swapped for import sd_a5snrlptaokypxmdh4fu7lpymy (the original route is journaled)
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_a5snrlptaokypxmdh4fu7lpymy is cleaned up and its journal row retired
2026/10/22 09:17:25 provision: a.shop.example.com: swapped for import sd_4enjtuwwiqesm3qkmp5sfsqgzm (the original route is journaled)
2026/10/22 09:17:25 provision: skipping record apps/bac/shop/instances/a.shop.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:25 provision: a.shop.example.com: import sd_4enjtuwwiqesm3qkmp5sfsqgzm left alone this pass: its record could not be read
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_loorjaxu4qdjrqi3dy42eigdhe (the original route is journaled)
2026/10/22 09:17:26 provision: skipping record apps/bac/shop/instances/a.shop.example.com.json: read failed: connection reset
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_loorjaxu4qdjrqi3dy42eigdhe left alone this pass: its record could not be read
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_ndhwaxrdbahnz5becwkjfvb2ay (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_ndhwaxrdbahnz5becwkjfvb2ay: close the import gate: constraint failed: injected (1811)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_ndhwaxrdbahnz5becwkjfvb2ay rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_ndhwaxrdbahnz5becwkjfvb2ay is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_ewvd6qvtdgc5izxf2an2eaitge (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_ewvd6qvtdgc5izxf2an2eaitge: close the import gate: constraint failed: injected (1811)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_ewvd6qvtdgc5izxf2an2eaitge rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_ewvd6qvtdgc5izxf2an2eaitge is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_shs664lbfwtdc47h3tbcdk7s7e (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_shs664lbfwtdc47h3tbcdk7s7e rollback deferred: the host is not fenced and stopped yet (injected failure at fence)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_shs664lbfwtdc47h3tbcdk7s7e rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_shs664lbfwtdc47h3tbcdk7s7e is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_goayiu6hfpy3dekwv45lsfv3te (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_goayiu6hfpy3dekwv45lsfv3te rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_goayiu6hfpy3dekwv45lsfv3te is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_w5hlupsogyqqv2lu2ndz77aq5u (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_w5hlupsogyqqv2lu2ndz77aq5u: retire its instance key: injected failure at retire-key
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_w5hlupsogyqqv2lu2ndz77aq5u rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_w5hlupsogyqqv2lu2ndz77aq5u is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_o5tpqh7rvtpnfj7malnxm6wrvy (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_o5tpqh7rvtpnfj7malnxm6wrvy rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_o5tpqh7rvtpnfj7malnxm6wrvy is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_i2gfrpevmxgz5eqeumu6a3mf4i (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_i2gfrpevmxgz5eqeumu6a3mf4i: remove its local data: injected failure at remove-local
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_i2gfrpevmxgz5eqeumu6a3mf4i rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_i2gfrpevmxgz5eqeumu6a3mf4i is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_xl4lnhulhn3ft2aie5uj4uvjle (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_xl4lnhulhn3ft2aie5uj4uvjle rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_xl4lnhulhn3ft2aie5uj4uvjle is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_vvirvbsmfrs3exnpsx2o5evs7u (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_vvirvbsmfrs3exnpsx2o5evs7u: remove its local data: injected failure at remove-local-done
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_vvirvbsmfrs3exnpsx2o5evs7u rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_vvirvbsmfrs3exnpsx2o5evs7u is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_qj5s2yh6unkkg323qyoe3zkvia (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_qj5s2yh6unkkg323qyoe3zkvia rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_qj5s2yh6unkkg323qyoe3zkvia is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_zwzkg3kfdo4n5qejlmloxda26u (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_zwzkg3kfdo4n5qejlmloxda26u: restore the original route: constraint failed: injected (1811)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_zwzkg3kfdo4n5qejlmloxda26u rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_zwzkg3kfdo4n5qejlmloxda26u is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_lbh62phi7ksmi6dn6nx7u2awia (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_lbh62phi7ksmi6dn6nx7u2awia: restore the original route: constraint failed: injected (1811)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_lbh62phi7ksmi6dn6nx7u2awia rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_lbh62phi7ksmi6dn6nx7u2awia is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_7qoz4f4rc7bgnvybaqo4ttcp5y (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_7qoz4f4rc7bgnvybaqo4ttcp5y is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_jmwsgnsg4u4tcpi2oiltdl2q4m (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_jmwsgnsg4u4tcpi2oiltdl2q4m rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_jmwsgnsg4u4tcpi2oiltdl2q4m: delete its snapshot: injected failure at delete-snapshot
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_jmwsgnsg4u4tcpi2oiltdl2q4m is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_chpgljvszq4pc3pqydw2pw6aba (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_chpgljvszq4pc3pqydw2pw6aba rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_chpgljvszq4pc3pqydw2pw6aba is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_5vofokmmbvhbnoxseocudypw6u (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_5vofokmmbvhbnoxseocudypw6u rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_5vofokmmbvhbnoxseocudypw6u: delete the host's replica: injected failure at delete-replica
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_5vofokmmbvhbnoxseocudypw6u is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_rki2laococd6mdgeucetmct66q (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_rki2laococd6mdgeucetmct66q rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_rki2laococd6mdgeucetmct66q is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_l3n54zrsoaonfvv64opnmgec2m (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_l3n54zrsoaonfvv64opnmgec2m rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_l3n54zrsoaonfvv64opnmgec2m: retire its journal row: constraint failed: injected (1811)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_l3n54zrsoaonfvv64opnmgec2m is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_nbcmcbhwphjfxxpnanl37zczdu (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_nbcmcbhwphjfxxpnanl37zczdu rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_nbcmcbhwphjfxxpnanl37zczdu: retire its journal row: constraint failed: injected (1811)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_nbcmcbhwphjfxxpnanl37zczdu is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_qtxwkaz4rlrt6msa4noipkc4i4 (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_qtxwkaz4rlrt6msa4noipkc4i4 rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_qtxwkaz4rlrt6msa4noipkc4i4 is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: mark import sd_qtxwkaz4rlrt6msa4noipkc4i4 rolled back: injected failure at cas
2026/10/22 09:17:26 provision: a.shop.example.com: aborted seed sd_qtxwkaz4rlrt6msa4noipkc4i4 rolled back (no box had swapped it)
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_kqhqlwjxd4uejwwwrtwvkg6j4q (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_kqhqlwjxd4uejwwwrtwvkg6j4q rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_kqhqlwjxd4uejwwwrtwvkg6j4q is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: aborted seed sd_kqhqlwjxd4uejwwwrtwvkg6j4q rolled back (no box had swapped it)
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_f76s53nzijg5px7f6ufjk3v4ve (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_f76s53nzijg5px7f6ufjk3v4ve rollback deferred: the host is not fenced and stopped yet (<nil>)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_f76s53nzijg5px7f6ufjk3v4ve rollback deferred: the host is not fenced and stopped yet (<nil>)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_f76s53nzijg5px7f6ufjk3v4ve rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_f76s53nzijg5px7f6ufjk3v4ve is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_utrucunfupuxdow5x35qrga6wq (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_utrucunfupuxdow5x35qrga6wq rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_utrucunfupuxdow5x35qrga6wq is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_gii64hiiknccxebnqsyrywy3ry (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_gii64hiiknccxebnqsyrywy3ry rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_gii64hiiknccxebnqsyrywy3ry is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: minted instance route a.shop.example.com (app "shop" acct "bac")
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_ynd5q7axybtus57d7youv6exxi (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_ynd5q7axybtus57d7youv6exxi rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_ynd5q7axybtus57d7youv6exxi is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: minted instance route a.shop.example.com (app "shop" acct "bac")
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_zxxwrk22ymn6k7s3c5ahjvkw4y (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_zxxwrk22ymn6k7s3c5ahjvkw4y rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_zxxwrk22ymn6k7s3c5ahjvkw4y is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: minted instance route a.shop.example.com (app "shop" acct "bac")
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_h4fzuwy2ljznxtdurnkwkipugm (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_h4fzuwy2ljznxtdurnkwkipugm rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_h4fzuwy2ljznxtdurnkwkipugm is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: minted instance route a.shop.example.com (app "other" acct "bac")
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_kf7oeb3kdvpionel5xfvnbe3fa (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_kf7oeb3kdvpionel5xfvnbe3fa rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_kf7oeb3kdvpionel5xfvnbe3fa is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: minted instance route a.shop.example.com (app "other" acct "bac")
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_42rgyhsmox5fjls3tu23gm6aca (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_42rgyhsmox5fjls3tu23gm6aca rolled back to its original route
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_42rgyhsmox5fjls3tu23gm6aca is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: minted instance route a.shop.example.com (app "other" acct "bac")
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_d5dl5usabydezwo6frganyuo6e (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_d5dl5usabydezwo6frganyuo6e has no route on this box: its local data is removed and no route is put back
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_d5dl5usabydezwo6frganyuo6e is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_57h5pno7yz22fix5d42qoyy6em (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_zx7y2yqp7wdvww2s5xqe75bcdq (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_hwxheewu2i753l66q24wfdahxa (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_hwxheewu2i753l66q24wfdahxa cannot roll back on this box: the activator is not wired; it stays journaled and gated
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_ivo2wahgqvofq33x722aoychlq (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_ivo2wahgqvofq33x722aoychlq is not rolled back: the route changed under the fence, so nothing there is touched
2026/10/22 09:17:26 provision: a.shop.example.com: import "../not-a-seed" names no snapshot and no replica; only its journal row is cleaned up
2026/10/22 09:17:26 provision: a.shop.example.com: import ../not-a-seed is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_ae6jgc3hrezf5lmknnl3rw6uve (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_u7qhhevzmip6q37ofcpl4x54ka (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_l7seg7bqigjkan237ihq3sg64y (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_fwyi7kx2bgrjruhkcmnrijx5ie (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_obg2qw5oal4avflgi2ol2qi6xe (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_obg2qw5oal4avflgi2ol2qi6xe rollback deferred: the host is not fenced and stopped yet (stop evidence unreadable)
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_yyqvcyzbcfegdaag4ngqxvz5za (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_yyqvcyzbcfegdaag4ngqxvz5za has no route on this box: its local data is removed and no route is put back
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_yyqvcyzbcfegdaag4ngqxvz5za is cleaned up and its journal row retired
2026/10/22 09:17:26 provision: minted instance route a.shop.example.com (app "shop" acct "bac")
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_xtveslasubszh5uy5f3zjkct34 (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_xtveslasubszh5uy5f3zjkct34: remove its local data: injected failure at remove-local
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_xtveslasubszh5uy5f3zjkct34 is not rolled back: the route at the host is not the import's, so nothing there is touched
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_nefwc665ougfao5smtutheu5ru (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_nefwc665ougfao5smtutheu5ru: a route appeared at the host, so its local database is left and the rollback waits
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_lmak4x3pklfmwzvs4fhpvdmh4i (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_lmak4x3pklfmwzvs4fhpvdmh4i rollback deferred: no fence generation: registry busy
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_grd5227e2zvdrsfh4f4yn45aqq (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: import sd_grd5227e2zvdrsfh4f4yn45aqq rollback deferred: no fence generation: the generation source answered 0
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_voyofe7ws756ox6uj3jw6sxaxe (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_jso5drizn6xl2chsnmmu2yp23q (the original route is journaled)
2026/10/22 09:17:26 provision: a.shop.example.com: swapped for import sd_jiyenkfslxlp3zwwhktxyoj7ay (the original route is journaled)
2026/10/22 09:17:27 provision: a.shop.example.com: import deferred: this box cannot read the instance's env file
2026/10/22 09:17:27 provision: a.shop.example.com: import deferred: the instance's env file could not be read: a symlink
2026/10/22 09:17:27 provision: a.shop.example.com: swapped for import sd_nisiqsbxfnbhnsnpqgsewqqooe (the original route is journaled)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_nisiqsbxfnbhnsnpqgsewqqooe rolled back to its original route
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_nisiqsbxfnbhnsnpqgsewqqooe is cleaned up and its journal row retired
2026/10/22 09:17:27 provision: a.shop.example.com: swapped for import sd_erbbsov34sxvynetie5t734wpm (the original route is journaled)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_erbbsov34sxvynetie5t734wpm rolled back to its original route
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_erbbsov34sxvynetie5t734wpm is cleaned up and its journal row retired
2026/10/22 09:17:27 provision: a.shop.example.com: swapped for import sd_sg3c6wncdw2caevfwfm2oct6qq (the original route is journaled)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_sg3c6wncdw2caevfwfm2oct6qq rolled back to its original route
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_sg3c6wncdw2caevfwfm2oct6qq is cleaned up and its journal row retired
2026/10/22 09:17:27 provision: a.shop.example.com: swapped for import sd_i6ohus7nq4behbpw7k6nann7lu (the original route is journaled)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_i6ohus7nq4behbpw7k6nann7lu: retire its instance key: the env file is a symlink
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_i6ohus7nq4behbpw7k6nann7lu rolled back to its original route
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_i6ohus7nq4behbpw7k6nann7lu is cleaned up and its journal row retired
2026/10/22 09:17:27 provision: a.shop.example.com: swapped for import sd_7eox6ph4cd4aolprhxzsqkozwy (the original route is journaled)
2026/10/22 09:17:27 provision: a.shop.example.com: row is on the nested layout (db "/data/instances/a.shop.example.com/a.shop.example.com.db" socket "/run/carlos/instances/a.shop.example.com/app.sock"); the record's shared paths are not drift
2026/10/22 09:17:27 provision: a.shop.example.com: swapped for import sd_cu5k4skwbgn34jxu7yag5bhcaa (the original route is journaled)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_oqggwydqcdbveymowag42wgin4 refused: there is no route at a.shop.example.com to replace
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_ggzmjcluffxiuvjddrq4pxbiyi refused: the route's address is 127.0.0.1:9, not 127.0.0.1:8401
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_3rsmvlwk3s74yzosbzpz5dcgla refused: the route's address is 127.0.0.1:8401,127.0.0.1:8402, not 127.0.0.1:8401
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_vaqctr7bqkimbqpl54vlvivaae refused: the route's address is 127.0.0.1:9, not 127.0.0.1:8401
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_6zdpwukm5x7qavz3lo3rvckaby refused: the route belongs to app other
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_cbaeo2dhesqx35ocwepkyvp4cm refused: the route is filed under another account
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_z7hgf57yfotptxmflbvfrwuliq refused: the route is filed under the operator account, and no assignment maps shop to this app
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_42kv5dctexfcz3fiv7xy5cej34 refused: the route is filed under the operator account, and no assignment maps shop to this app
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_x2brb625sus2nv6ij4bafmbr44 refused: the route is filed under the operator account, and no assignment maps shop to this app
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_jxmmz2hbgfreniar7wxh47n6ja refused: the route is filed under the operator account, and no assignment maps shop to this app
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_ux7dwsijy2kwsqptgkjmodg33u refused: the route is not an address route this import can take over (socket)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_mj73es4xx5ayilnkohbecpww74 refused: the route is not an address route this import can take over (no address)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_qlybe3yqrysyfracdwq7he6d4y refused: the route is not an address route this import can take over (provisioned)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_u6rsaoqm2mwuuqap6guy55noje refused: the route is not an address route this import can take over (kind static)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_dro3xqzriqsepwueoki5l7kapq refused: the route is not an address route this import can take over (backing)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_ci6uu3m3m3bdxyqp3ie4bgaq7i refused: the route is not an address route this import can take over (tunnel)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_gsv6lp2iefd6fdyphnpsm6tiva refused: the route is not an address route this import can take over (caps)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_lquuv57vpujl3qbcmifjnilmqe refused: the route is not an address route this import can take over (platform)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_cvsyh6vadulcqchw6w2sj4mt7u refused: the route is not an address route this import can take over (canary)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_2efqtf7hclv4tsf3werube4eyu refused: the route is not an address route this import can take over (kind sidecar)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_v4wredmegzyoflavkbqighywlm refused: the route is not an address route this import can take over (region)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_gnstkgbmqxtjjg2qgxxjrs24hi refused: the route is not an address route this import can take over (fleet_box)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_dkelm5qqfdcvg4djaxjrjezunu refused: the route is not an address route this import can take over (hibernate)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_cprn3naiueiukhj5g23iuuf7du refused: the route is not an address route this import can take over (claim_owner)
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_b6sw4bv5fq7rsay5evub47qh4m refused: this box does not run instances nested
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_kawt4g2m4dgsvmjjgefw6anl4q refused: this box does not run instances nested
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_2ayveqvkeytwhqukzlcstbcgsy refused: claim control is on for this box
2026/10/22 09:17:27 provision: a.shop.example.com: swapped for import sd_ixff4lflitwrtyxuxhfbfv3v5a (the original route is journaled)
2026/10/22 09:17:27 provision: a.shop.example.com: swapped for import sd_r3cbk4wpnooyf4f6tnbf7skzte (the original route is journaled)
2026/10/22 09:17:27 provision: a.shop.example.com: import deferred: this box cannot read the legacy route assignments
2026/10/22 09:17:27 provision: a.shop.example.com: import deferred: the legacy route assignments could not be read: store down
2026/10/22 09:17:27 provision: a.shop.example.com: not swapping for import sd_zxciioh35zyoyi4jara6td56d4: its verify hash is not a sha256
2026/10/22 09:17:27 provision: a.shop.example.com: not swapping for import sd_xkh7utxgsfacflo3jhrhnjwf54: its verify hash is not a sha256
2026/10/22 09:17:27 provision: a.shop.example.com: not swapping for import sd_lzjw6v7wwtbt56evqoo3tnazsu: its verify hash is not a sha256
2026/10/22 09:17:27 provision: a.shop.example.com: not swapping for import sd_../../x: its host or seed id is malformed (seeds: not a seed id)
2026/10/22 09:17:27 provision: A.shop.example.com/..: not swapping for import sd_xxc3dieueloz2x2rc6iw3zwchq: its host or seed id is malformed (seeds: not a host)
2026/10/22 09:17:27 provision: a.shop.example.com: not swapping for import sd_ti7c6b2grpkllkitzdvl56sfg4: its record does not describe a nested, hibernating instance
2026/10/22 09:17:27 provision: a.shop.example.com: not swapping for import sd_lobnhb2qvavvdvforzsj6ad2na: its record does not describe a nested, hibernating instance
2026/10/22 09:17:27 provision: a.shop.example.com: not swapping for import sd_3jicr2nby2bb3y7lkdzdotmfcm: its record does not describe a nested, hibernating instance
2026/10/22 09:17:27 provision: a.shop.example.com: not swapping for import sd_zyvkhr2c2xmyqeosxvnw7brxhq: its record does not describe a nested, hibernating instance
2026/10/22 09:17:27 provision: a.shop.example.com: import deferred: the box's layout intent could not be read: store down
2026/10/22 09:17:27 provision: a.shop.example.com: swapped for import sd_opnlrrenhtprygxo3k7lr2dcgy (the original route is journaled)
2026/10/22 09:17:27 provision: a.shop.example.com: import deferred: the box's nested probe did not answer: ready probe timed out
2026/10/22 09:17:27 provision: a.shop.example.com: swapped for import sd_qmicmnlz4ujjeacecrluse5prq (the original route is journaled)
2026/10/22 09:17:27 provision: a.shop.example.com: swapped for import sd_thotdn64bilwq7lguxfcxm3374 (the original route is journaled)
2026/10/22 09:17:27 provision: a.shop.example.com: import deferred: the route is held by operation op_1
2026/10/22 09:17:27 provision: dry-run: would consider swapping a.shop.example.com for import sd_6l66hofdkjxeei34mah24qbtga
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_zntlrsa7yv3p7xxfpdzsq2eu7i rolled back to its original route
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_zntlrsa7yv3p7xxfpdzsq2eu7i: the host's replica is left alone: the record apps/bac/shop/instances/a.shop.example.com.json holds the host
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_zntlrsa7yv3p7xxfpdzsq2eu7i is cleaned up and its journal row retired
2026/10/22 09:17:27 provision: a.shop.example.com: import sd_kgcytygv4al3phvj2ka3sq4gr4 left alone: the import journal holds seed sd_7cbdqc72zkpvk3mv4zyeqzbkda at swapped
2026/10/22 09:17:27 provision: a.shop.example.com: not minting import sd_rf32ufpdj5m437xjwrlq77cjey: it is swapped but not committed, and only its swap makes its row
2026/10/22 09:17:27 provision: a.shop.example.com: not minting import sd_n5xtfgjv2bybwujgmnl76ifo4y: it is placed but not committed, and only its swap makes its row
2026/10/22 09:17:27 provision: a.shop.example.com: swapped for import sd_s336w3ufyepwnmaj5n77z2txzq (the original route is journaled)
2026/10/22 09:17:27 provision: a.shop.example.com: not minting import sd_s336w3ufyepwnmaj5n77z2txzq: it is swapped but not committed, and only its swap makes its row
2026/10/22 09:17:27 provision: a.shop.example.com: not minting import sd_s336w3ufyepwnmaj5n77z2txzq: it is placed but not committed, and only its swap makes its row
2026/10/22 09:17:27 provision: minted instance route a.shop.example.com (app "shop" acct "bac")
2026/10/22 09:17:27 provision: removed retired sidecar route gone.eleven.bac.sidecar.internal (record gone)
2026/10/22 09:17:27 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/22 09:17:27 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/22 09:17:27 provision: converged sidecar bot.eleven.bac.sidecar.internal args ["sidecar","run"] -> ["worker","run"]
2026/10/22 09:17:27 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/22 09:17:27 provision: converged sidecar bot.eleven.bac.sidecar.internal ceilings 300/3600 -> 60/120
2026/10/22 09:17:28 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/22 09:17:28 provision: converged sidecar bot.eleven.bac.sidecar.internal channel stable -> canary/eleven
2026/10/22 09:17:28 provision: converged sidecar bot.eleven.bac.sidecar.internal environment "other" -> "relay"
2026/10/22 09:17:28 provision: converged sidecar bot.eleven.bac.sidecar.internal hibernate true -> false
2026/10/22 09:17:28 provision: skipping sidecar record apps/bac/eleven/sidecars/bot.json: read failed: failStore: reads disabled under apps/bac/eleven/sidecars/
2026/10/22 09:17:28 provision: skipping sidecar record apps/bac/eleven/sidecars/bot.json: malformed: invalid character 'n' looking for beginning of object key string
2026/10/22 09:17:28 provision: not removing sidecar bot.eleven.bac.sidecar.internal: its record exists but could not be read cleanly this pass
2026/10/22 09:17:28 provision: skipping sidecar record apps/bac/eleven/sidecars/bot.json: empty channel
2026/10/22 09:17:28 provision: skipping sidecar record apps/bac/eleven/sidecars/held.json: empty channel
2026/10/22 09:17:28 provision: not removing sidecar held.eleven.bac.sidecar.internal: its record exists but could not be read cleanly this pass
2026/10/22 09:17:28 provision: removed retired sidecar route old.eleven.bac.sidecar.internal (record gone)
2026/10/22 09:17:28 provision: bac/eleven has sidecar records but no sidecars manifest — not minting
2026/10/22 09:17:28 provision: bac/eleven is in the trash — not minting sidecar routes for it
2026/10/22 09:17:28 provision: sidecar bot.eleven.bac.sidecar.internal is not placeable here: it asks for "no-inbound" placement and this box accepts inbound work (CARLOS_INBOUND="")
2026/10/22 09:17:28 provision: sidecar hub.relay.bac.sidecar.internal is not placeable here: it asks for "no-inbound" placement and this box accepts inbound work (CARLOS_INBOUND="")
2026/10/22 09:17:28 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/22 09:17:28 provision: minted sidecar route hub.relay.bac.sidecar.internal (app "relay" acct "bac" args ["relay"])
2026/10/22 09:17:28 provision: sidecar bot.eleven.bac.sidecar.internal is not placeable here: it asks for "no-inbound" placement and this box accepts inbound work (CARLOS_INBOUND="")
2026/10/22 09:17:28 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/22 09:17:28 provision: sidecar bot.eleven.bac.sidecar.internal is not placeable here: it asks for "no-inbound" placement and this box accepts inbound work (CARLOS_INBOUND="")
2026/10/22 09:17:28 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/22 09:17:28 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/22 09:17:28 provision: sidecar bot.eleven.bac.sidecar.internal is not placeable here: it asks for "no-inbound" placement and this box accepts inbound work (CARLOS_INBOUND="")
2026/10/22 09:17:28 provision: removed retired sidecar route bot.eleven.bac.sidecar.internal (record gone)
2026/10/22 09:17:28 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/22 09:17:28 provision: sidecar bot.eleven.bac.sidecar.internal is not placeable here: it asks for "no-inbound" placement and this box accepts inbound work (CARLOS_INBOUND="")
2026/10/22 09:17:28 provision: skipping sidecar record apps/bac/relay/sidecars/hub.json: read failed: failStore: reads disabled under apps/bac/relay/sidecars/
2026/10/22 09:17:28 provision: REFUSING to mint sidecar bot.eleven.bac.sidecar.internal: bot.eleven.bac.sidecar.internal-sidecar.env is staged on this box — the legacy file co-spawn and a native sidecar row are two mechanisms for one host; remove the file to migrate this host onto sidecar records
2026/10/22 09:17:28 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/22 09:17:28 provision: dry-run: would mint sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" channel "stable" args ["sidecar","run"])
2026/10/22 09:17:28 provision: dry-run: would remove retired sidecar route gone.eleven.bac.sidecar.internal (record gone)
2026/10/22 09:17:28 provision: bot.eleven.bac.sidecar.internal exists but is not a sidecar row this pass owns (kind "sidecar" provisioned false app "eleven" acct "bac") — leaving it alone
2026/10/22 09:17:28 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:28 provision: converged acme.go.tito.io update settings "{\"updates\":\"manual\",\"channel\":\"stable\"}" -> ""
2026/10/22 09:17:28 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:28 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:28 provision: manifest bac/tito: read failed: provision: manifest bac/tito: unexpected end of JSON input
2026/10/22 09:17:28 provision: manifest bac/tito: read failed: provision: manifest bac/tito: unexpected end of JSON input
2026/10/22 09:17:28 provision: acme.go.tito.io: not minted this pass: the app's update policy could not be read
2026/10/22 09:17:28 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/22 09:17:28 provision: manifest bac/tito: read failed: provision: manifest bac/tito: unexpected end of JSON input
2026/10/22 09:17:28 provision: acme.go.tito.io: not minted this pass: the app's update policy could not be read
2026/10/22 09:17:28 provision: minted instance route acme.go.tito.io held landing by mv_acme (app "tito" acct "bac")
2026/10/22 09:17:28 provision: record view: change index unusable (release: change index unreadable: store has no conditional read: unsupported operation): the walk records no generations
2026/10/22 09:17:28 provision: listing apps/bqd/: listdirs refused — its records are unseen this pass
2026/10/22 09:17:28 provision: listing apps/bqd/: listdirs refused — its records are unseen this pass
2026/10/22 09:17:28 provision: listing apps/bqd/: listdirs refused — its records are unseen this pass
2026/10/22 09:17:28 provision: listing apps/bqd/: listdirs refused — its records are unseen this pass
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: listing apps/bqd/: listdirs refused — its records are unseen this pass
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: record view: change index unusable (release: change index malformed: invalid character 'n' looking for beginning of object key string): walking
2026/10/22 09:17:28 provision: record view: change index unusable (release: change index malformed: invalid character 'n' looking for beginning of object key string): the walk records no generations
2026/10/22 09:17:28 provision: record view: change index unusable (get refused): walking
2026/10/22 09:17:28 provision: record view: change index unusable (get refused): the walk records no generations
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: record view: re-reading apps/bqc/shop failed: retrying on the next refresh
2026/10/22 09:17:28 provision: listing apps/bqc/shop/instances/: context canceled — its records are unseen this pass
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: record view: re-reading apps/bqc/shop failed: retrying on the next refresh
2026/10/22 09:17:28 provision: listing apps/bqc/shop/instances/: list refused — its records are unseen this pass
2026/10/22 09:17:28 provision: listing apps/bqc/shop/instances/: list refused — its records are unseen this pass
2026/10/22 09:17:28 provision: an app's records could not be listed: they are skipped
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping accounts/bqd/account.json: malformed account manifest: invalid character 'n' looking for beginning of object key string
2026/10/22 09:17:28 provision: skipping accounts/bqd/account.json: malformed account manifest: invalid character 'n' looking for beginning of object key string
2026/10/22 09:17:28 provision: skipping accounts/bqd/account.json: malformed account manifest: invalid character 'n' looking for beginning of object key string
2026/10/22 09:17:28 provision: record view: re-reading accounts/bqd failed: retrying on the next refresh
2026/10/22 09:17:28 provision: skipping accounts/bqd/account.json: read failed: list refused
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/22 09:17:28 provision: skipping record apps/bqe/store/instances/bad.store.example.com.json: malformed: provision: invalid maintenance projection or protected fields
--- FAIL: TestPlan14RootReadCensus (13.57s)
plan14_root_reads_test.go:1124: root read census: 22 discrepancies
changed root read internal/host/activation_command_linux.go:runSystemClaims; review class, task, sites and digest
changed root source envelope .
changed root source envelope cmd/console
changed root source envelope internal/edge
changed root source envelope internal/host
changed root source envelope internal/hostops
changed root source envelope internal/ops
changed root source envelope internal/provision
changed root source envelope internal/release
changed root source envelope internal/vet
stale root read internal/release/conditional_delete.go:DirStore.DeleteIfMatch
stale root read internal/release/store.go:DirStore.Put
stale root read internal/release/store.go:DirStore.PutFrom
unclassified root read internal/provision/recordview_store.go:snapStore.Open file:Open@20
unclassified root read internal/release/conditional_delete.go:DirStore.deleteIfMatchRaw file:ReadFile@244
unclassified root read internal/release/store.go:DirStore.ListETags file:WalkDir@145
unclassified root read internal/release/store.go:DirStore.putFromRaw file:Stat@462
unclassified root read internal/release/store.go:DirStore.putRaw file:Stat@443
unclassified root read internal/release/store.go:S3Store.GetIfChanged file:ReadAll@511
changed legacy declaration internal/release/conditional_delete.go:DirStore.DeleteIfMatch
changed legacy declaration internal/release/store.go:DirStore.Put
changed legacy declaration internal/release/store.go:DirStore.PutFrom
FAIL
FAIL github.com/carlosframework/platform/internal/provision 22.163s
ok github.com/carlosframework/platform/internal/publicrelease 0.014s
? github.com/carlosframework/platform/internal/regionname [no test files]
ok github.com/carlosframework/platform/internal/registry 5.615s
ok github.com/carlosframework/platform/internal/relay 7.238s
ok github.com/carlosframework/platform/internal/release 26.436s
ok github.com/carlosframework/platform/internal/rollout 3.835s
ok github.com/carlosframework/platform/internal/rolloutwords 0.005s
ok github.com/carlosframework/platform/internal/rootaws 0.007s
ok github.com/carlosframework/platform/internal/rootparticipation 0.058s
ok github.com/carlosframework/platform/internal/rootstate 0.031s
ok github.com/carlosframework/platform/internal/runs 0.598s
ok github.com/carlosframework/platform/internal/s3compat 0.005s
ok github.com/carlosframework/platform/internal/safefile 0.005s
ok github.com/carlosframework/platform/internal/schedule 2.698s
ok github.com/carlosframework/platform/internal/seeds 0.012s
ok github.com/carlosframework/platform/internal/sim/hostlife 11.247s
ok github.com/carlosframework/platform/internal/sim/litestreamfacts 3.845s
ok github.com/carlosframework/platform/internal/status 0.102s
ok github.com/carlosframework/platform/internal/steering 0.006s
ok github.com/carlosframework/platform/internal/stopevidence 0.356s
ok github.com/carlosframework/platform/internal/svcrole 0.005s
ok github.com/carlosframework/platform/internal/telemetry 0.005s
ok github.com/carlosframework/platform/internal/termfence 0.006s
ok github.com/carlosframework/platform/internal/tunnelclient 0.009s
ok github.com/carlosframework/platform/internal/unixdial 0.009s
ok github.com/carlosframework/platform/internal/updatewords 0.005s
ok github.com/carlosframework/platform/internal/usage 0.012s
ok github.com/carlosframework/platform/internal/version 0.004s
ok github.com/carlosframework/platform/internal/vet 1.664s
FAIL
=== internal_console@0 (77 s)
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:12 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:12 console: could not notify alice@keymail.dev of a CLI token issue: keymail: grant revoked or invalid
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:12 console: api instance move bab/titogo/acme.go.tito.io: storage binding: read timeout
2026/10/22 09:17:12 console: api instance move bab/titogo/acme.go.tito.io: manifest: read timeout
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:12 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: could not notify alice@keymail.dev of a CLI token issue: keymail: grant revoked or invalid
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: api system status: canary pointer: system pointer does not verify: system pointer router/canary: signature does not verify
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: app region bab/tmp-docs: (default)
2026/10/22 09:17:13 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: could not notify alice@keymail.dev of a CLI token issue: keymail: grant revoked or invalid
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: could not notify alice@keymail.dev of a CLI token issue: keymail: grant revoked or invalid
2026/10/22 09:17:13 console: api updates bab/km policy: enable refused, not every box applies update settings: ie-1: runs a binary that does not apply update settings
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: could not notify alice@keymail.dev of a CLI token issue: keymail: grant revoked or invalid
2026/10/22 09:17:13 console: api updates bab/km policy: enable refused, the box inventory could not be read: edges records: AccessDenied: s3://carlos-prod-secret-bucket/ledgers request id ABC123
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: store destroy bab/kass: objstore: empty bucket carlos-bab-kass: backend unreachable
2026/10/22 09:17:13 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:13 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:14 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:14 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:14 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:14 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:14 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:14 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:14 console: account bac names owner "not-an-address", which is not a keymail address — nobody could sign in as it, so no membership was created. Fix it with: console member --add <address> bac --role owner
2026/10/22 09:17:14 console: materialized account bac (Typo) from the bucket
2026/10/22 09:17:14 console: accounts/bac/account.json names owner "not-an-address", which is not a keymail address — materializing the account without it; give it one with `console member --add <address> bac --role owner`
2026/10/22 09:17:14 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:14 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:14 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:14 console: refused: no eligible box in uk
2026/10/22 09:17:14 console: claim request refused: no eligible box in uk: hostops: region has no box that can take this
2026/10/22 09:17:14 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:14 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:14 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:15 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:17:15 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:15 console: api relay enable: hostops: pending
2026/10/22 09:17:15 console: relay enabled bab/titogo in eu-west-1 by paul@keymail.dev (incarnation 40c4c8746227423f, op 1)
2026/10/22 09:17:16 console: relay enabled bab/titogo in eu-west-1 by paul@keymail.dev (incarnation 2197ccc793824c66, op 1)
2026/10/22 09:17:16 console: api relay adopted: hostops: pending
2026/10/22 09:17:17 console: relay enabled bab/titogo in eu-west-1 by paul@keymail.dev (incarnation 1a2f8ec97768f489, op 1)
2026/10/22 09:17:17 console: api relay disable: hostops: pending
2026/10/22 09:17:17 console: relay disabled bab/titogo by paul@keymail.dev (op 2)
2026/10/22 09:17:18 console: relay enabled bab/titogo in eu-west-1 by paul@keymail.dev (incarnation 73ec47274b877f00, op 1)
2026/10/22 09:17:18 console: relay rotate eu-west-1: bab/titogo: hostops: pending
2026/10/22 09:17:18 console: relay rotated eu-west-1 to kid k2, re-issued 0 app(s)
2026/10/22 09:17:18 console: audit relay-rotate platform: sql: no rows in result set
2026/10/22 09:17:18 console: relay rotated eu-west-1 to kid k3, re-issued 1 app(s)
2026/10/22 09:17:18 console: audit relay-rotate platform: sql: no rows in result set
2026/10/22 09:17:19 console: mail push: bab/titogo: hostops: pending
2026/10/22 09:17:25 console: relay enabled bab/titogo in eu-west-1 by paul@keymail.dev (incarnation 568437da0d786819, op 1)
2026/10/22 09:17:26 console: relay writer lease acquired (holder c33eccd92fe9f6d3)
2026/10/22 09:17:26 console: relay reconcile bab/titogo: hostops: pending
2026/10/22 09:17:29 console: relay writer lease acquired (holder c33eccd92fe9f6d3)
2026/10/22 09:17:33 console: app region bab/tmp-claim-expiry: (default)
2026/10/22 09:17:33 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:33 console: expiry pass: trash bab/tmp-claim-expiry: hostops: pending
2026/10/22 09:17:33 console: api store rotate bab/titogo: hostops: pending
2026/10/22 09:17:33 console: api swap bab/titogo: hostops: pending
2026/10/22 09:17:33 console: door keys re-sign bab/titogo: hostops: pending
2026/10/22 09:17:33 console: api instance retry bab/titogo/web.go.tito.io: hostops: pending
2026/10/22 09:17:33 console: scan drain: bab/titogo: hostops: pending
2026/10/22 09:17:34 console: ledger blob bab/titogo/prompts: hostops: pending
2026/10/22 09:17:34 console: api authorize bab/kass v1: hostops: pending
2026/10/22 09:17:34 console: ledger append bab/titogo/carbon: hostops: pending
2026/10/22 09:17:34 console: api store provision bab/titogo: hostops: pending
2026/10/22 09:17:34 console: api schedule rm bab/titogo sync: hostops: pending
2026/10/22 09:17:35 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:17:35 console: api ship titogo abc1234: hostops: pending
2026/10/22 09:17:35 console: api store grant bab/titogo (bucket ""): hostops: pending
2026/10/22 09:17:35 console: api promote kass v1 -> canary/claim: hostops: pending
2026/10/22 09:17:35 console: api store create bab/titogo: hostops: pending
2026/10/22 09:17:36 console: api sidecars wake bab/titogo/bot: hostops: pending
2026/10/22 09:17:36 console: claim request refused: hostops: pending
2026/10/22 09:17:36 console: api schedule run bab/titogo sync: hostops: pending
2026/10/22 09:17:36 console: ledger publish bab/titogo: hostops: pending
2026/10/22 09:17:36 console: scan pass: bab/titogo: hostops: pending
2026/10/22 09:17:37 console: app region bab/tmp-claim-keep: (default)
2026/10/22 09:17:37 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:37 console: lifecycle tmp-claim-keep: hostops: pending
2026/10/22 09:17:37 console: api updates install bab/titogo/acme.go.tito.io: hostops: pending
2026/10/22 09:17:37 console: service rotate bab/svc-a: hostops: pending
2026/10/22 09:17:38 console: api sidecars enable bab/titogo: hostops: pending
2026/10/22 09:17:38 console: api pipeline put bab/titogo: set: hostops: pending
2026/10/22 09:17:39 console: store destroy bab/titogo: hostops: pending
2026/10/22 09:17:39 console: api updates bab/titogo/acme.go.tito.io: hostops: pending
2026/10/22 09:17:40 console: api instances enable bab/titogo: hostops: pending
2026/10/22 09:17:40 console: api email push key bab/titogo: hostops: pending
2026/10/22 09:17:40 console: api domains paths bab/titogo ti.to: hostops: pending
2026/10/22 09:17:40 console: api config apply bab/titogo (default): hostops: pending
2026/10/22 09:17:40 console: rollback kass canary/x: hostops: pending
2026/10/22 09:17:41 console: cli token revoke paul@keymail.dev: hostops: pending
2026/10/22 09:17:41 console: ses events: logging Delivery for bab/titogo: hostops: pending
2026/10/22 09:17:41 console: ses events: recording Delivery for bab/titogo: hostops: pending
2026/10/22 09:17:41 console: api version-target set bab/titogo: hostops: pending
2026/10/22 09:17:42 console: api updates policy bab/titogo: hostops: pending
2026/10/22 09:17:42 console: api scan revoke bab/titogo: hostops: pending
2026/10/22 09:17:42 console: service revoke bab: hostops: pending
2026/10/22 09:17:43 console: api telemetry bab/titogo: hostops: pending
2026/10/22 09:17:43 console: promote kass v1 -> canary/x: hostops: pending
2026/10/22 09:17:43 console: service create bab/svc-cli: hostops: pending
2026/10/22 09:17:43 console: app region bab/tmp-claim-ttl: (default)
2026/10/22 09:17:43 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:43 console: api updates bab/titogo/acme.go.tito.io: hostops: pending
2026/10/22 09:17:43 console: lifecycle tmp-claim-ttl: hostops: pending
2026/10/22 09:17:43 console: browser retry bab/titogo/web.go.tito.io: hostops: pending
2026/10/22 09:17:43 console: api scan sweep bab/titogo: hostops: pending
2026/10/22 09:17:44 console: browser restart bab/kass/kass.carlosapp.dev: hostops: pending
2026/10/22 09:17:44 console: gate write bab/titogo/acme.go.tito.io: hostops: pending
2026/10/22 09:17:44 console: control-plane clear bab/titogo: hostops: pending
2026/10/22 09:17:44 console: trash bab/titogo: hostops: pending
2026/10/22 09:17:45 console: api instance channel bab/titogo/web.go.tito.io: hostops: pending
2026/10/22 09:17:45 console: claim restore bab/titogo: recovered (restored)
2026/10/22 09:17:45 console: browser restart bab/kass/: hostops: pending
2026/10/22 09:17:45 console: claim request refused: hostops: pending
2026/10/22 09:17:45 console: control-plane set bab/titogo: hostops: pending
2026/10/22 09:17:45 console: api instance token bab/titogo: hostops: pending
2026/10/22 09:17:45 console: control-plane clear bab/titogo: hostops: pending
2026/10/22 09:17:46 console: api features set bab/titogo: hostops: pending
2026/10/22 09:17:46 console: audit db-read titogo: hostops: pending
2026/10/22 09:17:46 console: retire kass canary/rc: hostops: pending
2026/10/22 09:17:46 console: api updates install bab/titogo/acme.go.tito.io: hostops: pending
2026/10/22 09:17:46 console: audit sidecar-delete titogo: hostops: pending
2026/10/22 09:17:46 console: production kass -> true: hostops: pending
2026/10/22 09:17:46 console: fast-track kass stable: hostops: pending
2026/10/22 09:17:47 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:17:47 console: audit instance-delete titogo: hostops: pending
2026/10/22 09:17:47 console: errors level bab/kass: hostops: pending
2026/10/22 09:17:47 console: api email push off bab/titogo: hostops: pending
2026/10/22 09:17:47 console: api email domain remove bab/titogo (titogo.bab.oncarlos.com): mail: lifecycle resource operation pending
hostops: pending
2026/10/22 09:17:48 console: api email credentials revoke bab/titogo (laptop): mail: lifecycle resource operation pending
hostops: pending
2026/10/22 09:17:48 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:48 console: pipeline settings save bab/titogo: set: hostops: pending
2026/10/22 09:17:48 console: canary kass v1 -> canary/rc: hostops: pending
2026/10/22 09:17:48 console: api config sync bab/titogo: hostops: pending
2026/10/22 09:17:48 console: api retention set bab/titogo: hostops: pending
2026/10/22 09:17:48 console: api email pause bab/titogo: mail: lifecycle resource operation pending
hostops: pending
2026/10/22 09:17:49 console: analytics setting bab/kass: hostops: pending
2026/10/22 09:17:49 console: api email enable bab/titogo: apply grant: mail: lifecycle resource operation pending
hostops: pending
2026/10/22 09:17:49 console: api email domain verify bab/titogo.bab.oncarlos.com: mail: lifecycle resource operation pending
hostops: pending
2026/10/22 09:17:49 console: api email domain ensure bab/titogo (titogo.bab.oncarlos.com): mail: lifecycle resource operation pending
hostops: pending
2026/10/22 09:17:49 console: app region bab/claim-web-new: (default)
2026/10/22 09:17:49 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:49 console: api schedule set bab/titogo sync: hostops: pending
2026/10/22 09:17:50 console: api email credentials create bab/titogo: mail: lifecycle resource operation pending
hostops: pending
2026/10/22 09:17:50 console: api rollback kass canary/x: hostops: pending
2026/10/22 09:17:50 console: api instances update bab/titogo/ha.go.tito.io: hostops: pending
2026/10/22 09:17:50 console: door key mint bab/titogo: hostops: pending
2026/10/22 09:17:50 console: api restore bab/titogo: hostops: pending
2026/10/22 09:17:50 console: api restart scope bab/kass (host kass.carlosapp.dev): hostops: pending
2026/10/22 09:17:51 console: api email declare bab/titogo: mail: lifecycle resource operation pending
hostops: pending
2026/10/22 09:17:51 console: api restart bab/titogo: hostops: pending
2026/10/22 09:17:51 console: api trash bab/titogo: hostops: pending
2026/10/22 09:17:51 console: door key revoke bab/titogo ffc67938436004ea: hostops: pending
2026/10/22 09:17:51 console: api email rotate bab/titogo: mail: lifecycle resource operation pending
hostops: pending
2026/10/22 09:17:51 console: api scan enforce bab/titogo: hostops: pending
2026/10/22 09:17:52 console: api resign bab/kass canary/x: hostops: pending
2026/10/22 09:17:52 console: api scan enqueue bab/titogo "claim-fixture.txt": hostops: pending
2026/10/22 09:17:52 console: api scan grant bab/titogo: enable: hostops: pending
2026/10/22 09:17:52 console: app region bab/tmp-claim-keep: (default)
2026/10/22 09:17:52 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:52 console: app region bab/tmp-claim-cli: (default)
2026/10/22 09:17:52 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:52 console: keep bab/tmp-claim-keep: hostops: pending
2026/10/22 09:17:52 console: reject pending change 57ced2f5521b27e4eb20f9238254d9fa: hostops: pending
2026/10/22 09:17:52 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:17:53 console: service revoke bab: hostops: pending
2026/10/22 09:17:53 console: restore bab/titogo: hostops: pending
2026/10/22 09:17:53 console: swap policy bab/kass: hostops: pending
2026/10/22 09:17:53 console: service create bab/svc-web: hostops: pending
2026/10/22 09:17:53 console: claim request refused: hostops: pending
2026/10/22 09:17:54 console: service rotate bab/svc-a: hostops: pending
2026/10/22 09:17:54 console: api scan request bab/titogo: hostops: pending
2026/10/22 09:17:54 console: confirm pending change: hostops: pending
2026/10/22 09:17:54 console: api scan callback rotate bab/titogo: deliver: hostops: pending
2026/10/22 09:17:54 console: api store rotate finish bab/titogo: hostops: pending
2026/10/22 09:17:55 console: app region bab/claim-cli-new: (default)
2026/10/22 09:17:55 console: backfilled account manifest for bab (ops)
2026/10/22 09:17:57 console: geoip published ed972738 (GeoIP2-City, manual)
2026/10/22 09:17:58 console: audit geoip off platform: sql: no rows in result set
2026/10/22 09:17:58 console: relay enabled bab/titogo in eu-west-1 by paul@keymail.dev (incarnation 2857774ab8a9d820, op 1)
2026/10/22 09:17:59 console: geoip published ed972738 (GeoIP2-City, manual)
2026/10/22 09:18:00 console: geoip published ed972738 (GeoIP2-City, manual)
2026/10/22 09:18:00 console: audit geoip publish platform: sql: no rows in result set
2026/10/22 09:18:07 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:07 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:08 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:18:11 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:11 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:12 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:12 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:14 console: audit system-update platform: sql: no rows in result set
2026/10/22 09:18:14 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:14 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:15 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:15 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:16 console: audit system-update platform: sql: no rows in result set
2026/10/22 09:18:16 console: audit store-apply : constraint failed: claim: app write not permitted (1811)
2026/10/22 09:18:16 console: audit system-update platform: sql: no rows in result set
2026/10/22 09:18:17 console: audit store-apply : constraint failed: claim: app write not permitted (1811)
2026/10/22 09:18:17 console: audit system-activation-cancel platform: sql: no rows in result set
2026/10/22 09:18:17 console: audit store-decline : constraint failed: claim: app write not permitted (1811)
2026/10/22 09:18:17 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:18:17 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:18 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:18:18 console: account telemetry bab: dirstore: invalid key "apps/bab//telemetry.json"
2026/10/22 09:18:18 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:18:18 console: audit fleet-add-box pi: sql: no rows in result set
2026/10/22 09:18:18 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:18:18 console: audit fleet-add-box pi: sql: no rows in result set
2026/10/22 09:18:18 console: audit fleet-tag-box pi: sql: no rows in result set
2026/10/22 09:18:18 console: audit seeds-floor-publish platform: sql: no rows in result set
2026/10/22 09:18:18 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:18:18 console: audit fleet-add-box pi: sql: no rows in result set
2026/10/22 09:18:18 console: audit fleet-rotate-box pi: sql: no rows in result set
2026/10/22 09:18:19 console: audit fleet-detach-box pi: sql: no rows in result set
2026/10/22 09:18:19 console: audit system-update platform: sql: no rows in result set
2026/10/22 09:18:19 console: audit system-update platform: sql: no rows in result set
2026/10/22 09:18:19 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:18:19 console: audit system-update platform: sql: no rows in result set
2026/10/22 09:18:19 console: audit system-rollback platform: sql: no rows in result set
2026/10/22 09:18:19 console: audit fleet-add-box pi: sql: no rows in result set
2026/10/22 09:18:19 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:18:19 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:19 console: audit pointer-digests-on platform: sql: no rows in result set
2026/10/22 09:18:19 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:18:19 console: audit fleet-add-box pi: sql: no rows in result set
2026/10/22 09:18:19 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:18:19 console: audit fleet-add-box pi: sql: no rows in result set
2026/10/22 09:18:20 console: audit fleet-create pi: sql: no rows in result set
2026/10/22 09:18:20 console: audit fleet-add-box pi: sql: no rows in result set
2026/10/22 09:18:20 console: audit fleet-tag-box pi: sql: no rows in result set
2026/10/22 09:18:20 console: audit fleet-rotate-box pi: sql: no rows in result set
2026/10/22 09:18:20 console: audit fleet-detach-box pi: sql: no rows in result set
2026/10/22 09:18:20 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:20 console: audit system-layout platform: sql: no rows in result set
2026/10/22 09:18:20 console: object scanning enabled deployment-wide by paul@keymail.dev
2026/10/22 09:18:20 console: audit store-apply : constraint failed: claim: app write not permitted (1811)
2026/10/22 09:18:21 console: audit store-apply : constraint failed: claim: app write not permitted (1811)
2026/10/22 09:18:21 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:21 console: audit store-apply : constraint failed: claim: app write not permitted (1811)
2026/10/22 09:18:21 console: audit store-apply : constraint failed: claim: app write not permitted (1811)
2026/10/22 09:18:21 console: audit store-approve : constraint failed: claim: app write not permitted (1811)
2026/10/22 09:18:21 console: audit store-decline : constraint failed: claim: app write not permitted (1811)
2026/10/22 09:18:21 console: audit store-apply : constraint failed: claim: app write not permitted (1811)
2026/10/22 09:18:22 console: audit analytics-setting account: sql: no rows in result set
2026/10/22 09:18:22 console: audit errors-level account: sql: no rows in result set
--- FAIL: TestClaimConsoleMutationInvariant (67.53s)
claim_invariant_test.go:360: app-scoped writer bucket/GetIfChanged is reached by no door's open run and has no reason in claimWriterReasons
claim_invariant_test.go:360: app-scoped writer bucket/ListETags is reached by no door's open run and has no reason in claimWriterReasons
2026/10/22 09:18:22 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:22 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:22 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:22 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:22 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:22 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:22 console: could not notify alice@keymail.dev of a CLI token issue: keymail: grant revoked or invalid
2026/10/22 09:18:22 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:22 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:22 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:22 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:23 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:23 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:23 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:23 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:23 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:23 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:23 console: materialized account bbw (Blog) from the bucket
2026/10/22 09:18:23 console: materialized account mdbbndjqx (Kass) from the bucket
2026/10/22 09:18:23 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:24 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:24 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:24 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:24 console: moves: acme.go.tito.io: move mv_b2tfdwhb2oczplt5wci3uaklt4 is still preparing after 6h0m0s; aborted
2026/10/22 09:18:24 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:24 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:24 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:24 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:24 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:24 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:24 console: app region bab/solo: (default)
2026/10/22 09:18:24 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:25 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:25 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:25 console: ALERT [carlos] SQL effect old on bab/demo needs the restore break-glass path
2026/10/22 09:18:25 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:25 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:25 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:25 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 provision: skipping record apps/bab/shop/instances/other.example.com.json: unreadable: slow down
2026/10/22 09:18:26 console: run sweep: some records could not be read; their runs wait for a later pass, and no orphan run is deleted on this one
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: scan queue rebuild: acct-bad: transient listing failure
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: scan queue rebuild: acct-bad/shop: transient listing failure
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000000 txid.db=0000000000000001
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000001 maxTXID=0000000000000001 size=720
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000001 txid.db=0000000000000001
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000001 txid.db=0000000000000002
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000002 maxTXID=0000000000000002 size=370
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000002 txid.db=0000000000000002
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000002 txid.db=0000000000000003
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000003 maxTXID=0000000000000003 size=454
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000003 txid.db=0000000000000003
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000003 txid.db=0000000000000004
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000004 maxTXID=0000000000000004 size=537
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000004 txid.db=0000000000000004
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000004 txid.db=0000000000000005
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000005 maxTXID=0000000000000005 size=621
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000005 txid.db=0000000000000005
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000005 txid.db=0000000000000006
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000006 maxTXID=0000000000000006 size=704
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000006 txid.db=0000000000000006
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000006 txid.db=0000000000000007
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000007 maxTXID=0000000000000007 size=788
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000007 txid.db=0000000000000007
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000007 txid.db=0000000000000008
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000008 maxTXID=0000000000000008 size=871
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000008 txid.db=0000000000000008
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000008 txid.db=0000000000000009
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000009 maxTXID=0000000000000009 size=955
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000009 txid.db=0000000000000009
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000009 txid.db=000000000000000a
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=000000000000000a maxTXID=000000000000000a size=1038
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=000000000000000a txid.db=000000000000000a
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=000000000000000a txid.db=000000000000000b
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=000000000000000b maxTXID=000000000000000b size=1124
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=000000000000000b txid.db=000000000000000b
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=000000000000000b txid.db=000000000000000c
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=000000000000000c maxTXID=000000000000000c size=1208
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=000000000000000c txid.db=000000000000000c
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=000000000000000c txid.db=000000000000000d
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=000000000000000d maxTXID=000000000000000d size=1294
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=000000000000000d txid.db=000000000000000d
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=000000000000000d txid.db=000000000000000e
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=000000000000000e maxTXID=000000000000000e size=1387
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=000000000000000e txid.db=000000000000000e
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=000000000000000e txid.db=000000000000000f
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=000000000000000f maxTXID=000000000000000f size=1481
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=000000000000000f txid.db=000000000000000f
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=000000000000000f txid.db=0000000000000010
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000010 maxTXID=0000000000000010 size=1569
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000010 txid.db=0000000000000010
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000010 txid.db=0000000000000011
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000011 maxTXID=0000000000000011 size=1661
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000011 txid.db=0000000000000011
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000011 txid.db=0000000000000012
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000012 maxTXID=0000000000000012 size=1755
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000012 txid.db=0000000000000012
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000012 txid.db=0000000000000013
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000013 maxTXID=0000000000000013 size=1843
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000013 txid.db=0000000000000013
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000013 txid.db=0000000000000014
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000014 maxTXID=0000000000000014 size=1935
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000014 txid.db=0000000000000014
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000014 txid.db=0000000000000015
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000015 maxTXID=0000000000000015 size=2031
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000015 txid.db=0000000000000015
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000015 txid.db=0000000000000016
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000016 maxTXID=0000000000000016 size=2119
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000016 txid.db=0000000000000016
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000016 txid.db=0000000000000017
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000017 maxTXID=0000000000000017 size=2216
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000017 txid.db=0000000000000017
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000017 txid.db=0000000000000018
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000018 maxTXID=0000000000000018 size=2309
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000018 txid.db=0000000000000018
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000018 txid.db=0000000000000019
2026/10/22 09:18:26 INFO ltx file uploaded system=store db=source.db replica=file level=0 minTXID=0000000000000019 maxTXID=0000000000000019 size=2403
2026/10/22 09:18:26 INFO replica sync system=store db=source.db replica=file txid.replica=0000000000000019 txid.db=0000000000000019
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 edges: box "kass-2" has an edges file under control/edges/ but no status snapshot at all, so no region outside the home is automatically eligible until it reports; said once
2026/10/22 09:18:26 console: seeds readiness: box "kass-2" in region "the home region" is unconfirmed: stale heartbeat, generated 2026-10-22T08:18:26Z
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: place bab/shop: read instances: records that do not read: [broken.example.com]
2026/10/22 09:18:26 console: place bab/shop: read instances: provision: read record apps/bab/shop/instances/plain.example.com.json: injected read failure
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: seeds pass: abandoned seed sd_qunxjxcmvf6znbykglpouomcu4 of bab/shop/canary.shop.example.com (reserving since 2026-10-22T09:08:26Z)
2026/10/22 09:18:26 console: seeds pass: deleted seeds/canary.shop.example.com/sd_qunxjxcmvf6znbykglpouomcu4/snapshot.db
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: ses events: refused topic "arn:aws:sns:eu-west-1:9:someone-else" — this deployment expects "arn:aws:sns:eu-west-1:1:carlos-mail"
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:26 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:27 console: materialized account bac (Testco) from the bucket
2026/10/22 09:18:27 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:27 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:27 console: store decision bab: no keymail grant for paul@keymail.dev — not notified (they must sign in to the console once)
2026/10/22 09:18:27 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:27 console: account telemetry bab: dirstore: invalid key "apps/bab//telemetry.json"
2026/10/22 09:18:27 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:27 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:27 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:27 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:27 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:27 console: app region bab/tmp-plain: ie (default)
2026/10/22 09:18:27 console: backfilled account manifest for bab (ops)
2026/10/22 09:18:27 console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically
2026/10/22 09:18:27 status: fleet: skipping status/boxes/zz-1.json: corrupt snapshot: invalid character 'n' looking for beginning of object key string
FAIL
FAIL github.com/carlosframework/platform/internal/console 75.630s
FAIL
=== internal_console@1 (37 s)
ok github.com/carlosframework/platform/internal/console 35.137s
=== internal_console@2 (43 s)
ok github.com/carlosframework/platform/internal/console 41.539s
=== internal_console@3 (38 s)
ok github.com/carlosframework/platform/internal/console 36.492s
=== internal_console@4 (38 s)
ok github.com/carlosframework/platform/internal/console 36.296s
=== internal_console@5 (35 s)
ok github.com/carlosframework/platform/internal/console 33.749s
=== internal_console@6 (37 s)
ok github.com/carlosframework/platform/internal/console 35.070s
=== internal_console@7 (43 s)
ok github.com/carlosframework/platform/internal/console 41.557s
=== root@0 (32 s)
ok github.com/carlosframework/platform 29.916s
=== root@1 (43 s)
ok github.com/carlosframework/platform 41.742s
=== root@2 (46 s)
ok github.com/carlosframework/platform 43.943s
FAILED: rest internal_console@0
make: *** [Makefile:19: test] Error 1
amadan: step gate failed: exit status 2
amadan: job failed at step gate — its output is above, not at the tail of this log
diff --git a/internal/provision/recordview_sim_test.go b/internal/provision/recordview_sim_test.go| index 3fedd0553..44c8c17e7 100644 |
| --- a/internal/provision/recordview_sim_test.go |
| +++ b/internal/provision/recordview_sim_test.go |
| @@ -13,6 +13,7 @@ import ( |
| "os" |
| "path/filepath" |
| "reflect" |
| + "runtime" |
| "slices" |
| "sort" |
| "strings" |
| @@ -63,12 +64,16 @@ import ( |
| // A write that bumps and is still in flight (the one interleaving a store |
| // call cannot expose: between a write and its bump) is a DirStore.PutFrom |
| // whose body reader blocks on its first Read; refreshes run while it waits. |
| -// A write whose bump fails is a real index-enabled DirStore whose bump the |
| -// filesystem refuses: control/ is read-only for the length of the write. |
| -// Whether a write bumped is never assumed: the index is read before and |
| -// after each write (writes are serialized), so a run as root, where the |
| -// read-only directory does not stop the bump, only moves writes from the |
| -// failed class to the bumped one. |
| +// A write whose bump fails is a real index-enabled DirStore whose own bump |
| +// is refused through the production path: while its write is in progress |
| +// the index file has a second hard link (outside the bucket), and safefile |
| +// refuses to open any file with more than one link, for every user, root |
| +// included. The bump's read of the index fails, so the bump gives up and the |
| +// write stands. No other reader runs at that instant except a sibling poll |
| +// fired from another reading goroutine, which then finds the index |
| +// unusable and makes the next Refresh walk, as it should. Whether a write |
| +// bumped is never assumed: the index is read before and after each write |
| +// (writes are serialized), and the write is classed by what happened. |
| // |
| // The three interleavings §8 names are scripted subtests that run before the |
| // sweep, under both ListDirs shapes: codex 2 (the backstop has listed an app |
| @@ -79,7 +84,7 @@ import ( |
| var ( |
| simSeedFlag = flag.Uint64("seed", 0, "TestRecordViewSimulation: run only this seed (0 runs the sweep)") |
| - simSeedsFlag = flag.Int("seeds", 200, "TestRecordViewSimulation: how many seeds the sweep runs") |
| + simSeedsFlag = flag.Int("seeds", 50, "TestRecordViewSimulation: how many seeds the sweep runs") |
| ) |
| // simConsumeHandedOver is the consumer's mutation switch. The moves pass |
| @@ -225,6 +230,7 @@ type sim struct { |
| acctID map[string]int64 |
| root string |
| + hold string // where holdIndex links the index |
| live *simStore // what the view reads |
| clean *viewCountingStore // the bucket as a reader sees it, for (b) |
| raw *release.DirStore // plain reads for bookkeeping |
| @@ -281,6 +287,7 @@ func newSim(t *testing.T, tmpl *simTemplate, seed uint64, bucket bool) *sim { |
| for i, a := range tmpl.acct { |
| s.acctID[a] = int64(301 + i) |
| } |
| + s.hold = filepath.Join(t.TempDir(), "changes.json") |
| s.live = &simStore{DirStore: release.NewDirStore(root), bucket: bucket, sim: s} |
| s.clean = &viewCountingStore{DirStore: release.NewDirStore(root), bucket: bucket} |
| s.raw = release.NewDirStore(root) |
| @@ -548,16 +555,24 @@ func (s *sim) begin(w simWrite) (seq int, body []byte, etag string, before uint6 |
| s.mu.Lock() |
| s.hist[w.key] = append(s.hist[w.key], simVersion{seq: seq, body: body}) |
| s.mu.Unlock() |
| - if w.w.failBump { |
| - _ = os.Chmod(filepath.Join(s.root, "control"), 0o555) |
| - } |
| return seq, body, etag, before |
| } |
| +// holdIndex gives the index file a second link, so the failing-bump |
| +// writer's bump cannot read it (safefile.OpenFile refuses a file with more |
| +// than one link). Caller holds writeMu. |
| +func (s *sim) holdIndex() { |
| + if err := os.Link(filepath.Join(s.root, filepath.FromSlash(release.ChangeIndexKey)), s.hold); err != nil { |
| + s.fail("sim: holding the index: %v", err) |
| + } |
| +} |
| + |
| // end classifies the write by what the index did, and completes it. |
| func (s *sim) end(w simWrite, seq int, before uint64, err error) { |
| if w.w.failBump { |
| - _ = os.Chmod(filepath.Join(s.root, "control"), 0o755) |
| + if err := os.Remove(s.hold); err != nil && !errors.Is(err, os.ErrNotExist) { |
| + s.fail("sim: releasing the index: %v", err) |
| + } |
| } |
| if err != nil { |
| s.fail("sim: %s write of %s: %v", w.w.name, w.key, err) |
| @@ -593,6 +608,9 @@ func (s *sim) write(w simWrite) { |
| s.writeMu.Lock() |
| defer s.writeMu.Unlock() |
| seq, body, etag, before := s.begin(w) |
| + if w.w.failBump { |
| + s.holdIndex() |
| + } |
| var err error |
| if w.del { |
| err = w.w.store.Delete(ctx, w.key) |
| @@ -647,6 +665,9 @@ func (s *sim) pausedWrite(w simWrite, during func()) { |
| s.mu.Unlock() |
| during() |
| s.paused, s.writes = false, true |
| + if w.w.failBump { |
| + s.holdIndex() // only now: the refreshes above read the index as usual |
| + } |
| close(g.release) |
| err = <-done |
| } |
| @@ -1348,13 +1369,20 @@ func TestRecordViewSimulation(t *testing.T) { |
| return |
| } |
| // A simulation that stopped exercising something would pass silently. |
| - for name, c := range map[string]int{ |
| + exercised := map[string]int{ |
| "bumped writes": total.bumped, "bypassing writes": total.bypassed, "failed bumps": total.failedBumps, |
| "writes in flight": total.paused, "triggers": total.triggers, "concurrent refreshes that waited": total.deferred, |
| "sibling polls": total.sibling, "read failures": total.readFailures, "(b) checks": total.checksB, |
| "(e) checks": total.checksE, "consumed snapshots": total.consumed, "incomplete snapshots": total.incomplete, |
| "rebuilds": total.rebuilds, |
| - } { |
| + } |
| + if runtime.GOOS != "linux" { |
| + // Only the Linux safefile refuses a file with two links, which is |
| + // how a bump is made to fail; elsewhere those writes bump. |
| + delete(exercised, "failed bumps") |
| + t.Logf("failed bumps are not exercised on %s", runtime.GOOS) |
| + } |
| + for name, c := range exercised { |
| if c == 0 { |
| t.Errorf("the sweep exercised no %s", name) |
| } |