harness: Run 11d on the narrowed fix tip f0faf8cd (v0.28.20): roll and window PASS (step 9 after a recover retry), disk freed, B4+G10 running; Run 11c's unfinished window and empty b4 log
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
8 files changed,
+1450
−0
harness/RESOURCES.md+1 −0harness/RUNLOG.md+35 −0harness/evidence/run11c/b4-g10.log+0 −0harness/evidence/run11c/window.log+618 −0harness/evidence/run11d/b4-g10.log+0 −0harness/evidence/run11d/roll.log+217 −0harness/evidence/run11d/window-9-resume.log+38 −0harness/evidence/run11d/window.log+541 −0
CI failed — run details
CI log
=== gate ===
go: downloading modernc.org/sqlite v1.55.0
go: downloading github.com/benbjohnson/litestream v0.5.14
go: downloading github.com/aws/aws-sdk-go-v2 v1.44.0
go: downloading github.com/aws/aws-sdk-go-v2/config v1.32.6
go: downloading github.com/aws/aws-sdk-go-v2/service/route53 v1.64.1
go: downloading github.com/aws/aws-sdk-go-v2/service/ec2 v1.324.0
go: downloading github.com/aws/aws-sdk-go-v2/service/sns v1.43.0
go: downloading github.com/superfly/ltx v0.5.1
go: downloading github.com/aws/aws-sdk-go-v2/service/acm v1.45.0
go: downloading github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.68.0
go: downloading github.com/aws/aws-sdk-go-v2/service/iam v1.58.2
go: downloading github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.37.0
go: downloading github.com/aws/aws-sdk-go-v2/service/s3 v1.105.0
go: downloading github.com/aws/aws-sdk-go-v2/service/sts v1.45.6
go: downloading github.com/aws/smithy-go v1.28.1
go: downloading github.com/aws/aws-sdk-go-v2/service/autoscaling v1.74.0
go: downloading github.com/oschwald/maxminddb-golang v1.13.1
go: downloading github.com/aws/aws-sdk-go-v2/credentials v1.19.6
go: downloading golang.org/x/crypto v0.53.0
go: downloading golang.org/x/sys v0.46.0
go: downloading github.com/aws/aws-sdk-go-v2/service/ssm v1.74.0
go: downloading github.com/klauspost/compress v1.18.0
go: downloading github.com/pion/logging v0.2.4
go: downloading github.com/pion/stun/v3 v3.0.1
go: downloading golang.org/x/net v0.56.0
go: downloading github.com/pion/turn/v4 v4.1.4
go: downloading github.com/aws/aws-sdk-go-v2/service/sesv2 v1.66.6
go: downloading github.com/aws/aws-sdk-go-v2/service/costexplorer v1.67.5
go: downloading github.com/pierrec/lz4/v4 v4.1.22
go: downloading github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.40
go: downloading github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.38
go: downloading github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.19
go: downloading github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.40
go: downloading github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.16
go: downloading github.com/aws/aws-sdk-go-v2/internal/ini v1.8.4
go: downloading github.com/aws/aws-sdk-go-v2/service/signin v1.0.4
go: downloading github.com/aws/aws-sdk-go-v2/service/sso v1.30.8
go: downloading github.com/aws/aws-sdk-go-v2/service/ssooidc v1.35.12
go: downloading github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.40
go: downloading github.com/prometheus/client_golang v1.17.0
go: downloading golang.org/x/sync v0.21.0
go: downloading github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.20.18
go: downloading github.com/lmittmann/tint v1.1.3
go: downloading github.com/mattn/go-isatty v0.0.20
go: downloading github.com/pion/dtls/v3 v3.0.7
go: downloading github.com/pion/transport/v3 v3.0.8
go: downloading github.com/pion/randutil v0.1.0
go: downloading github.com/pion/transport/v4 v4.0.1
go: downloading github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.14
go: downloading github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.31
go: downloading github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.23
go: downloading github.com/wlynxg/anet v0.0.5
go: downloading github.com/beorn7/perks v1.0.1
go: downloading google.golang.org/protobuf v1.36.10
go: downloading github.com/cespare/xxhash/v2 v2.3.0
go: downloading github.com/prometheus/client_model v0.5.0
go: downloading github.com/prometheus/common v0.45.0
go: downloading github.com/prometheus/procfs v0.12.0
go: downloading github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0
go: downloading golang.org/x/text v0.38.0
go: downloading modernc.org/libc v1.74.1
go: downloading modernc.org/memory v1.11.0
go: downloading github.com/dustin/go-humanize v1.0.1
go: downloading github.com/google/uuid v1.6.0
go: downloading modernc.org/mathutil v1.7.1
go: downloading github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec
cd launchctx && go vet ./... && go test ./... -count=1
ok amadan.net/carlos/platform.git/launchctx 0.011s
? amadan.net/carlos/platform.git/launchctx/controlname [no test files]
? amadan.net/carlos/platform.git/launchctx/wireid [no test files]
go vet ./...
go: downloading golang.org/x/tools v0.47.0
go: downloading golang.org/x/mod v0.37.0
gofmt -l .: clean
go test ./... -count=1 -timeout 30m
ok github.com/carlosframework/platform 320.526s
? github.com/carlosframework/platform/cmd/changelog [no test files]
ok github.com/carlosframework/platform/cmd/console 2.810s
ok github.com/carlosframework/platform/cmd/moveprobe 92.270s
ok github.com/carlosframework/platform/cmd/zddprobe 0.709s
? github.com/carlosframework/platform/harness/apps/wakecheck [no test files]
ok github.com/carlosframework/platform/internal/activator 250.703s
ok github.com/carlosframework/platform/internal/agentsock 0.018s
ok github.com/carlosframework/platform/internal/alerting 0.006s
ok github.com/carlosframework/platform/internal/analytics 0.019s
ok github.com/carlosframework/platform/internal/appconfig 2.469s
ok github.com/carlosframework/platform/internal/apperr 0.084s
ok github.com/carlosframework/platform/internal/applog 0.153s
ok github.com/carlosframework/platform/internal/awsinv 0.004s
ok github.com/carlosframework/platform/internal/boxchoice 0.005s
ok github.com/carlosframework/platform/internal/boxid 0.603s
? 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.012s
ok github.com/carlosframework/platform/internal/caps 0.018s
ok github.com/carlosframework/platform/internal/certwarm 0.002s
ok github.com/carlosframework/platform/internal/cgroup 0.704s
ok github.com/carlosframework/platform/internal/changelog 0.348s
ok github.com/carlosframework/platform/internal/claimactivation 0.831s
ok github.com/carlosframework/platform/internal/clamd 0.056s
? github.com/carlosframework/platform/internal/cliflag [no test files]
ok github.com/carlosframework/platform/internal/console 411.253s
? 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 6.478s
ok github.com/carlosframework/platform/internal/dbdoor/dbdoortest 0.012s
ok github.com/carlosframework/platform/internal/dbverify 0.005s
ok github.com/carlosframework/platform/internal/dnsrec 0.003s
ok github.com/carlosframework/platform/internal/docsite 0.005s
ok github.com/carlosframework/platform/internal/domains 2.390s
ok github.com/carlosframework/platform/internal/doorkey 0.006s
ok github.com/carlosframework/platform/internal/economics 0.005s
ok github.com/carlosframework/platform/internal/edge 45.189s
? 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.138s
ok github.com/carlosframework/platform/internal/gate 1.670s
ok github.com/carlosframework/platform/internal/genselect 0.018s
ok github.com/carlosframework/platform/internal/geo 0.028s
ok github.com/carlosframework/platform/internal/geoip 0.043s
ok github.com/carlosframework/platform/internal/historyreadback 0.160s
ok github.com/carlosframework/platform/internal/host 185.312s
ok github.com/carlosframework/platform/internal/hostactors 6.680s
ok github.com/carlosframework/platform/internal/hostactors/awsmembership 0.006s
ok github.com/carlosframework/platform/internal/hostbox 2.961s
ok github.com/carlosframework/platform/internal/hostclaim 0.571s
ok github.com/carlosframework/platform/internal/hostenv 0.005s
ok github.com/carlosframework/platform/internal/hostevidence 0.013s
ok github.com/carlosframework/platform/internal/hostexec 5.466s
ok github.com/carlosframework/platform/internal/hostfence 0.033s
ok github.com/carlosframework/platform/internal/hostfiles 10.813s
ok github.com/carlosframework/platform/internal/hostfloor 0.014s
ok github.com/carlosframework/platform/internal/hostguard 1.027s
ok github.com/carlosframework/platform/internal/hostops 1.772s
? 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.002s
ok github.com/carlosframework/platform/internal/hostrelocate 0.471s
ok github.com/carlosframework/platform/internal/hostresolve 0.150s
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.259s
ok github.com/carlosframework/platform/internal/instanceexec 2.750s
ok github.com/carlosframework/platform/internal/instancefs 0.005s
ok github.com/carlosframework/platform/internal/instancekey 0.004s
ok github.com/carlosframework/platform/internal/instanceupdates 0.007s
ok github.com/carlosframework/platform/internal/layout 1.602s
ok github.com/carlosframework/platform/internal/lbhealth 0.004s
ok github.com/carlosframework/platform/internal/lease 9.905s
ok github.com/carlosframework/platform/internal/lease/leasetest 0.012s
ok github.com/carlosframework/platform/internal/ledger 0.020s
ok github.com/carlosframework/platform/internal/mail 0.161s
ok github.com/carlosframework/platform/internal/maintenance 0.078s
ok github.com/carlosframework/platform/internal/maintenanceexec 5.694s
ok github.com/carlosframework/platform/internal/maintenanceguard 0.077s
ok github.com/carlosframework/platform/internal/metrics 0.008s
ok github.com/carlosframework/platform/internal/moves 21.779s
ok github.com/carlosframework/platform/internal/moves/archive 0.898s
ok github.com/carlosframework/platform/internal/objstore 0.181s
ok github.com/carlosframework/platform/internal/ops 0.184s
ok github.com/carlosframework/platform/internal/park 0.227s
ok github.com/carlosframework/platform/internal/privatefile 0.003s
2026/10/21 16:44:23 provision: listing apps/bab/blog/instances/: list refused — its records are unseen this pass
2026/10/21 16:44:23 provision: listing apps/bab/: listdirs refused — its records are unseen this pass
2026/10/21 16:44:23 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:23 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:23 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:23 provision: listing apps/bac/tito/instances/: list refused — its records are unseen this pass
2026/10/21 16:44:23 provision: listing apps/bac/tito/instances/: list refused — its records are unseen this pass
2026/10/21 16:44:23 provision: skipping record apps/bac/tito/instances/one.example.com.json: unreadable: read refused
2026/10/21 16:44:23 provision: listing apps/bac/tito/instances/: list refused — its records are unseen this pass
2026/10/21 16:44:23 provision: an app's records could not be listed: they are skipped
2026/10/21 16:44:23 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/21 16:44:23 provision: remove retired instance route shop.example: provision: claim admission unavailable
2026/10/21 16:44:23 provision: remove retired instance route shop.example: provision: claim admission unavailable
2026/10/21 16:44:24 provision: remove retired sidecar route worker.sidecar.internal: provision: claim admission unavailable
2026/10/21 16:44:24 provision: remove retired sidecar route worker.sidecar.internal: provision: claim admission unavailable
2026/10/21 16:44:24 provision: claim install acme.go.tito.io: provision: claim admission unavailable
2026/10/21 16:44:24 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: claim install acme.go.tito.io: registry: claim row ownership changed or unknown
2026/10/21 16:44:24 provision: claim install bot.eleven.bac.sidecar.internal: provision: claim admission unavailable
2026/10/21 16:44:24 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["run"])
2026/10/21 16:44:24 provision: claim install bot.eleven.bac.sidecar.internal: registry: claim row ownership changed or unknown
2026/10/21 16:44:24 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/21 16:44:24 provision: acme.go.tito.io: not minting this pass: the box's layout intent could not be read: no sealed config
2026/10/21 16:44:24 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 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/21 16:44:24 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["run"])
2026/10/21 16:44:24 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["run"])
2026/10/21 16:44:24 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/21 16:44:24 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 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/21 16:44:24 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["run"])
2026/10/21 16:44:24 provision: acme.go.tito.io exists but is not the route this record describes (app "other"/"tito") — leaving it alone
2026/10/21 16:44:24 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: claim install acme.go.tito.io: registry: claim row ownership changed or unknown
2026/10/21 16:44:24 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: claim install acme.go.tito.io: registry: claim row ownership changed or unknown
2026/10/21 16:44:24 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/21 16:44:24 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["run"])
2026/10/21 16:44:24 provision: claim install bot.eleven.bac.sidecar.internal: registry: claim row ownership changed or unknown
2026/10/21 16:44:24 provision: acme.go.tito.io exists but is not the route this record describes (app "other"/"tito") — leaving it alone
2026/10/21 16:44:24 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: adopted existing route acme.go.tito.io (app "tito" acct "bac") — this record now owns its channel and environment
2026/10/21 16:44:24 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/21 16:44:24 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/21 16:44:24 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: skipping record apps/bac/tito/instances/acme.go.tito.io.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/21 16:44:24 provision: skipping record apps/bac/tito/instances/new.go.tito.io.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/21 16:44:24 provision: not removing acme.go.tito.io: its record exists but could not be read cleanly this pass
2026/10/21 16:44:24 provision: skipping record apps/bac/tito/instances/acme.go.tito.io.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/21 16:44:24 provision: skipping record apps/bac/tito/instances/new.go.tito.io.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/21 16:44:24 provision: minted instance route ra.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route rb.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route rf.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route ri.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route rj.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route rc.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route rd.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route re.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route rg.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route rh.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route rk.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route rl.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route rc.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route rd.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route ra.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route rb.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: skipping record apps/bac/tito/instances/rb.go.tito.io.json: read failed: read refused
2026/10/21 16:44:24 provision: skipping record apps/bac/tito/instances/rb.go.tito.io.json: read failed: read refused
2026/10/21 16:44:24 provision: minted instance route re.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route x.appi.example (app "appi" acct "bac")
2026/10/21 16:44:24 provision: minted instance route x.appd.example (app "appd" acct "bac")
2026/10/21 16:44:24 provision: minted instance route x.appe.example (app "appe" acct "bac")
2026/10/21 16:44:24 provision: minted instance route x.apph.example (app "apph" acct "bac")
2026/10/21 16:44:24 provision: minted instance route x.appj.example (app "appj" acct "bac")
2026/10/21 16:44:24 provision: minted instance route x.appa.example (app "appa" acct "bac")
2026/10/21 16:44:24 provision: minted instance route x.appb.example (app "appb" acct "bac")
2026/10/21 16:44:24 provision: minted instance route x.appc.example (app "appc" acct "bac")
2026/10/21 16:44:24 provision: minted instance route x.appf.example (app "appf" acct "bac")
2026/10/21 16:44:24 provision: minted instance route x.appg.example (app "appg" acct "bac")
2026/10/21 16:44:24 provision: bac/tito is in the trash — not minting instance routes for it
2026/10/21 16:44:24 provision: minted instance route r0008.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0020.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0030.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0069.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0072.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0034.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0047.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0064.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0067.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0100.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0103.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0115.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0124.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0024.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0053.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0060.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0013.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0029.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0058.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0084.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0021.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0028.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0043.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0081.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0114.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0129.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0038.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0050.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0116.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0018.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0059.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0090.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0098.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0125.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0076.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0128.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0097.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0111.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0031.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0033.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0035.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0044.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0054.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0057.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0003.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0009.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0027.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0032.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0062.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0112.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0127.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0012.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0026.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0006.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0087.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0120.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0041.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0046.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0070.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0074.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0123.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0014.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0095.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0119.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0002.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0005.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0010.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0048.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0085.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0113.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0000.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0015.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0017.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0063.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0106.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0117.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0118.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0055.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0099.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0110.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0019.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0037.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0049.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0065.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0082.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0108.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0109.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0121.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0004.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0089.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0023.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0086.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0126.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0083.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0107.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0022.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0105.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0052.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0079.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0101.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0094.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0102.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0011.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0068.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0092.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0093.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0001.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0040.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0051.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0056.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0073.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0104.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0039.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0045.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0061.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0066.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0078.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0096.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0007.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0036.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0042.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0088.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0091.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0016.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0077.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0025.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0071.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0075.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0080.go.tito.io (app "tito" acct "bac")
2026/10/21 16:44:24 provision: minted instance route r0122.go.tito.io (app "tito" acct "bac")
--- FAIL: TestPlan14RootReadCensus (4.70s)
plan14_root_reads_test.go:940: root read census: 155 discrepancies
changed root read internal/hostfence/writer.go:OpenRootFenceStore; review class, task, sites and digest
changed root source envelope harness
changed root source envelope harness/apps/wakecheck
changed root source envelope harness/boxes
changed root source envelope harness/boxes/shims
changed root source envelope harness/checks
changed root source envelope harness/console
changed root source envelope harness/infra
changed root source envelope harness/infra-copies/747f699/dev
changed root source envelope harness/infra-copies/a0b3f5a/dev
changed root source envelope harness/infra-copies/a0b3f5a/scripts
changed root source envelope harness/infra-copies/pr47
changed root source envelope harness/operator
changed root source envelope harness/release
changed root source envelope harness/scenarios
changed root source envelope harness/scenarios/cohort1
changed root source envelope harness/scenarios/cohort1/blocks
changed root source envelope harness/stand-ins
changed root source envelope internal/host
changed root source envelope internal/hostfence
changed root source envelope internal/publicrelease
changed root source envelope internal/s3compat
unclassified root read harness/apps/wakecheck/main.go:main file:Exec@333,file:Exec@804,file:Open@277,file:QueryRow@870
unclassified root read harness/boxes/boxes-up.sh:external file:external@0
unclassified root read harness/boxes/dmi-shim.sh:external file:external@0
unclassified root read harness/boxes/layout-probe.sh:external file:external@0
unclassified root read harness/boxes/leo-ext4-from.sh:external file:external@0
unclassified root read harness/boxes/leo-ext4.sh:external file:external@0
unclassified root read harness/boxes/leo-swap.sh:external file:external@0
unclassified root read harness/boxes/shims/systemd-zram-setup@.service:external file:external@0
unclassified root read harness/boxes/vendor-shims.sh:external file:external@0
unclassified root read harness/checks/check2.sh:external file:external@0
unclassified root read harness/checks/check5.sh:external file:external@0
unclassified root read harness/checks/check6.sh:external file:external@0
unclassified root read harness/checks/check6b.sh:external file:external@0
unclassified root read harness/checks/check7.sh:external file:external@0
unclassified root read harness/checks/check8.sh:external file:external@0
unclassified root read harness/checks/fix5.sh:external file:external@0
unclassified root read harness/checks/run6b.sh:external file:external@0
unclassified root read harness/checks/snap-base.sh:external file:external@0
unclassified root read harness/checks/snap-boot.sh:external file:external@0
unclassified root read harness/checks/ssmsmoke.sh:external file:external@0
unclassified root read harness/console/console-ext4.sh:external file:external@0
unclassified root read harness/console/console-setup.sh:external file:external@0
unclassified root read harness/console/signin.sh:external file:external@0
unclassified root read harness/console/system-update.sh:external file:external@0
unclassified root read harness/donor-user-data.sh:external file:external@0
unclassified root read harness/evidence.sh:external file:external@0
unclassified root read harness/host-setup.sh:external file:external@0
unclassified root read harness/host-user-data.sh:external file:external@0
unclassified root read harness/hrun.sh:external file:external@0
unclassified root read harness/infra-copies/747f699/dev/host-init.sh:external file:external@0
unclassified root read harness/infra-copies/a0b3f5a/dev/host-init.sh:external file:external@0
unclassified root read harness/infra-copies/a0b3f5a/scripts/bootstrap-box.sh:external file:external@0
unclassified root read harness/infra-copies/a0b3f5a/scripts/ship-app.sh:external file:external@0
unclassified root read harness/infra-copies/a0b3f5a/scripts/update-platform-binary.sh:external file:external@0
unclassified root read harness/infra-copies/pr47/probe.sh:external file:external@0
unclassified root read harness/infra-copies/pr47/remediation.sh:external file:external@0
unclassified root read harness/infra/infra-setup.sh:external file:external@0
unclassified root read harness/operator/operator-setup.sh:external file:external@0
unclassified root read harness/release/release-setup.sh:external file:external@0
unclassified root read harness/release/release-window.sh:external file:external@0
unclassified root read harness/release/step7-operator.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/50-publish-record.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/51-open-signer.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/51-roster-resume.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/51-roster.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/61-sign.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/61a-install-channel.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/62-guard-arm.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/63-run.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/63-sophie.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/7-console-report.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/7-evidence-key.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/7-run.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/7-runtime.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/74-run.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/7a-leo.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/7a-run.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/acceptance.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/b1.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/b2-c8.leo.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/b2-list.leo.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/b2.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/b4-after.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/b4-pair.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/b4-pair2.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/b4-resume.sophie.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/b4.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/b5.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g10-preroll-bucket.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g10-preroll.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g10-preroll.leo.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g10-r16.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g10-reroll.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g10-roll.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g10-wait-cache.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g10-watch.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g10-window.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g10b-b4.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g10c-accept.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g4-roll.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g5.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/g9-check.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/p9.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/place-parent.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/pw-seed.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r10-a1-normal.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r10-console-upgrade.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r10-grow.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r10-move-precheck.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r10-move-setup.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r10-move.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r10-nest-watch.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r10-prep.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r10-report.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r9-console-e1.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r9-console.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r9-devcheck.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r9-move-precheck.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r9-move-setup.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r9-move.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r9-normal.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r9-rearm.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r9-release.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/r9-setup.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/rearm-roll.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/rearm-strict.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/rearm-strict.leo.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/rearm-strict2.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/rearm.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/rearm2.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/rearm3.host.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/reports.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/run-leo.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/w-env.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/w-identity.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/w-open-signer.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/w-sums.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/w81.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/w81b.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/w82-f4.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/w82-f5.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/w82.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/w82b.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/w84.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/blocks/w9.box.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/box-helpers.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/signer-helpers.sh:external file:external@0
unclassified root read harness/scenarios/cohort1/ssm.sh:external file:external@0
unclassified root read harness/scenarios/sync.sh:external file:external@0
unclassified root read harness/snapshot.sh:external file:external@0
unclassified root read harness/stand-ins/certs.sh:external file:external@0
unclassified root read internal/s3compat/harness.go:readHarnessFile file:ReadFile@189,file:Stat@55
changed reclassified declaration internal/hostfence/writer.go:OpenRootFenceStore
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 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/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted static route site.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted service route svc.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted instance route whole.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted instance route console.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted service route ha.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted instance route shared.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: converged acme.go.tito.io channel stable -> edge
2026/10/21 16:45:53 provision: converged acme.go.tito.io channel edge -> canary/rehearsal
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: skipping record apps/bac/tito/instances/acme.go.tito.io.json: empty channel
2026/10/21 16:45:53 provision: not removing acme.go.tito.io: its record exists but could not be read cleanly this pass
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: converged acme.go.tito.io environment "" -> "staging"
2026/10/21 16:45:53 provision: converged acme.go.tito.io environment "staging" -> ""
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: converged acme.go.tito.io steering "" -> "latency"
2026/10/21 16:45:53 provision: converged acme.go.tito.io steering "latency" -> ""
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: converged acme.go.tito.io hibernate false -> true
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: converged acme.go.tito.io hibernate true -> false (replication "daily" cleared: only a hibernating route's rung is read)
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:53 provision: converged acme.go.tito.io status-named false -> true
2026/10/21 16:45:54 provision: converged acme.go.tito.io status-named true -> false
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted service route ha.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 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/21 16:45:54 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/21 16:45:54 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/21 16:45:54 provision: minted service route whole.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 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/21 16:45:54 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/21 16:45:54 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/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted service route whole.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: acme.go.tito.io exists but is not the route this record describes (app "other"/"tito") — leaving it alone
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: removed retired instance route acme.go.tito.io (record gone)
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: skipping accounts/bac/account.json: malformed account manifest: invalid character 'o' in literal null (expecting 'u')
2026/10/21 16:45:54 provision: removed retired instance route acme.go.tito.io (record gone)
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: manifest bac/tito: read failed: provision: manifest bac/tito: invalid character 'o' in literal null (expecting 'u')
2026/10/21 16:45:54 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/21 16:45:54 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/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 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/21 16:45:54 provision: not removing acme$evil.go.tito.io: its record exists but could not be read cleanly this pass
2026/10/21 16:45:54 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/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 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/21 16:45:54 provision: not removing bad-service.go.tito.io: its record exists but could not be read cleanly this pass
2026/10/21 16:45:54 provision: skipping record apps/bac/tito/instances/no-channel.go.tito.io.json: empty channel
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: skipping record apps/bac/tito/instances/no-channel.go.tito.io.json: empty channel
2026/10/21 16:45:54 provision: not removing no-channel.go.tito.io: its record exists but could not be read cleanly this pass
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: skipping record apps/bac/tito/instances/acme.go.tito.io.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/21 16:45:54 provision: not removing acme.go.tito.io: its record exists but could not be read cleanly this pass
2026/10/21 16:45:54 provision: removed retired instance route ghost.go.tito.io (record gone)
2026/10/21 16:45:54 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/21 16:45:54 provision: minted instance route dup.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: bac/tito is in the trash — not minting instance routes for it
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: bac/tito is in the trash — not minting instance routes for it
2026/10/21 16:45:54 provision: removed retired instance route acme.go.tito.io (app in the trash)
2026/10/21 16:45:54 provision: minted static route site.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: bac/tito is in the trash — not minting instance routes for it
2026/10/21 16:45:54 provision: removed retired static route site.go.tito.io (app in the trash)
2026/10/21 16:45:54 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/21 16:45:54 provision: bac/tito is in the trash — not minting instance routes for it
2026/10/21 16:45:54 provision: removed retired instance route acme.go.tito.io (app in the trash)
2026/10/21 16:45:54 provision: bac/tito is in the trash — not minting instance routes for it
2026/10/21 16:45:54 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/21 16:45:54 provision: adopted existing route acme.go.tito.io (app "tito" acct "bac") — this record now owns its channel and environment
2026/10/21 16:45:54 provision: converged acme.go.tito.io channel stable -> edge
2026/10/21 16:45:54 provision: adopted existing route acme.go.tito.io (app "tito" acct "bac") — this record now owns its channel and environment
2026/10/21 16:45:54 provision: converged acme.go.tito.io channel canary/rehearsal -> edge
2026/10/21 16:45:54 provision: converged acme.go.tito.io environment "staging" -> ""
2026/10/21 16:45:54 provision: acme.go.tito.io exists but is not the route this record describes (app "other"/"tito") — leaving it alone
2026/10/21 16:45:54 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/21 16:45:54 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/21 16:45:54 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/21 16:45:54 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/21 16:45:54 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/21 16:45:54 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/21 16:45:54 provision: adopted existing route acme.go.tito.io (app "tito" acct "bac") — this record now owns its channel and environment
2026/10/21 16:45:54 provision: removed retired instance route acme.go.tito.io (record gone)
2026/10/21 16:45:54 provision: dry-run: would mint instance route acme.go.tito.io (app "tito" acct "bac" channel "stable")
2026/10/21 16:45:54 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/21 16:45:54 provision: dry-run: would converge adopt.go.tito.io channel stable -> edge
2026/10/21 16:45:54 provision: dry-run: would converge adopt.go.tito.io environment "" -> "staging"
2026/10/21 16:45:54 provision: dry-run: would converge owned.go.tito.io channel stable -> edge
2026/10/21 16:45:54 provision: dry-run: would converge owned.go.tito.io environment "" -> "staging"
2026/10/21 16:45:54 provision: dry-run: would converge owned.go.tito.io hibernate false -> true
2026/10/21 16:45:54 provision: dry-run: would converge owned.go.tito.io seed
2026/10/21 16:45:54 provision: dry-run: would remove retired instance route gone.go.tito.io (record gone)
2026/10/21 16:45:54 provision: adopted existing route adopt.go.tito.io (app "tito" acct "bac") — this record now owns its channel and environment
2026/10/21 16:45:54 provision: converged adopt.go.tito.io channel stable -> edge
2026/10/21 16:45:54 provision: converged adopt.go.tito.io environment "" -> "staging"
2026/10/21 16:45:54 provision: converged owned.go.tito.io channel stable -> edge
2026/10/21 16:45:54 provision: converged owned.go.tito.io environment "" -> "staging"
2026/10/21 16:45:54 provision: converged owned.go.tito.io hibernate false -> true
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: removed retired instance route gone.go.tito.io (record gone)
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: adopted existing route story.carlosframework.com (app "story" acct "bad") — this record now owns its channel and environment
2026/10/21 16:45:54 provision: story.carlosframework.com exists but is not the route this record describes (kind "instance"/"static") — leaving it alone
2026/10/21 16:45:54 provision: minted static route site.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted service route pub.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted service route pubs.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted service route priv.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route unit.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route exec.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted service route loop.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted service route named.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted static route site.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted static route pisite.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted static route site.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: removed retired static route site.go.tito.io (record gone)
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route acme-uk.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: converged acme.go.tito.io replicas "ie,uk" -> "uk"
2026/10/21 16:45:54 provision: converged acme.go.tito.io replicas "uk" -> ""
2026/10/21 16:45:54 provision: minted instance route acme-uk.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: converged acme-uk.go.tito.io replica mark true -> false
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route router.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 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/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route router.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route router.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: minted instance route router.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:54 provision: acme.go.tito.io: not minting this pass: the box's layout intent could not be read: store down
2026/10/21 16:45:54 provision: router.go.tito.io: not minting this pass: the box's layout intent could not be read: store down
2026/10/21 16:45:54 provision: adopted existing route acme.go.tito.io (app "tito" acct "bac") — this record now owns its channel and environment
2026/10/21 16:45:54 provision: converged acme.go.tito.io channel stable -> edge
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io held landing by mv_acme (app "tito" acct "bac")
2026/10/21 16:45:54 provision: not removing acme.go.tito.io (record gone): participant of a running operation
2026/10/21 16:45:54 provision: removed retired instance route acme.go.tito.io (record gone)
2026/10/21 16:45:54 provision: minted instance route acme.go.tito.io held landing by mv_acme (app "tito" acct "bac")
2026/10/21 16:45:54 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/21 16:45:54 provision: held acme.go.tito.io landing by mv_acme (was ready)
2026/10/21 16:45:54 provision: acme.go.tito.io: held restoring by rb_other, not by mv_acme; leaving it
2026/10/21 16:45:55 provision: acme.go.tito.io: the row is not this pass's (app "other" acct ""); not holding it for mv_acme
2026/10/21 16:45:55 provision: acme.go.tito.io exists but is not the route this record describes (app "other"/"tito") — leaving it alone
2026/10/21 16:45:55 provision: dry-run: would mint instance route acme.go.tito.io held landing by mv_acme (app "tito" acct "bac" channel "stable")
2026/10/21 16:45:55 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/21 16:45:55 provision: held acme.go.tito.io landing by mv_acme (was ready)
2026/10/21 16:45:55 provision: minted instance route acme.example.com (app "shop" acct "bac")
2026/10/21 16:45:55 provision: minted instance route plain.example.com (app "shop" acct "bac")
2026/10/21 16:45:55 provision: skipping record apps/bac/shop/instances/garbled.shop.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/21 16:45:55 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/21 16:45:55 provision: skipping record apps/bac/shop/instances/garbled.shop.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/21 16:45:55 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/21 16:45:55 provision: skipping record apps/bac/shop/instances/garbled.shop.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/21 16:45:55 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/21 16:45:55 provision: skipping record apps/bac/shop/instances/garbled.shop.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/21 16:45:55 provision: listing apps/bac/shop/instances/: list refused — its records are unseen this pass
2026/10/21 16:45:55 provision: a.shop.example.com: swapped for import sd_t2k74z5acppfg4o3z5hx7vhztu (the original route is journaled)
2026/10/21 16:45:55 provision: a.shop.example.com: import sd_t2k74z5acppfg4o3z5hx7vhztu committed: its gate is cleared and its journal row dropped
2026/10/21 16:45:55 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/21 16:45:55 provision: a.shop.example.com: import sd_2cr3itndudlva2rlh7q3jwmqnq rolled back to its original route
2026/10/21 16:45:55 provision: a.shop.example.com: import sd_2cr3itndudlva2rlh7q3jwmqnq: the host's replica is left alone: the record apps/bac/shop/instances/a.shop.example.com.json holds the host
2026/10/21 16:45:55 provision: a.shop.example.com: import sd_2cr3itndudlva2rlh7q3jwmqnq is cleaned up and its journal row retired
2026/10/21 16:45:55 provision: a.shop.example.com: import sd_sl5gbxtsjddv635txz4nfkiyha rolled back to its original route
2026/10/21 16:45:55 provision: a.shop.example.com: import sd_sl5gbxtsjddv635txz4nfkiyha: the host's replica is left alone: the record apps/bac/shop/instances/a.shop.example.com.json holds the host
2026/10/21 16:45:55 provision: a.shop.example.com: import sd_sl5gbxtsjddv635txz4nfkiyha is cleaned up and its journal row retired
2026/10/21 16:45:55 provision: dry-run: would redo a.shop.example.com's swap record CAS for import sd_dw4lfr2oza5b7pggbyshjwh4hu
2026/10/21 16:45:55 provision: dry-run: would clear a.shop.example.com's import gate
2026/10/21 16:45:55 provision: dry-run: would converge a.shop.example.com seed source
2026/10/21 16:45:55 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/21 16:45:55 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/21 16:45:55 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/21 16:45:55 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/21 16:45:55 provision: a.shop.example.com: import sd_vjpn2renj4c5ydxaqtk4kprl4i cannot roll back on this box: the activator is not wired; it stays journaled and gated
2026/10/21 16:45:55 provision: a.shop.example.com: import sd_my6rwgbe2lilrpmhp5ya7fvli4 cannot roll back on this box: the activator is not wired; it stays journaled and gated
2026/10/21 16:45:55 provision: a.shop.example.com: import sd_wtecmme67k7vv3xltqbgchmrhq is journaled, but this box cannot act on imports; its row is left alone
2026/10/21 16:45:55 provision: a.shop.example.com: import sd_hmu2633frd7lxuirgvmaamnzea is journaled, but this box cannot act on imports; its row is left alone
2026/10/21 16:45:55 provision: a.shop.example.com: import sd_medsbrg3i7x3ov2vxuk4gxblda is journaled, but this box cannot act on imports; its row is left alone
2026/10/21 16:45:55 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/21 16:45:55 provision: b.shop.example.com: import sd_ywy7s6idneiemgjpm4ada2mvdq left alone this pass: the import journal could not be read
2026/10/21 16:45:55 provision: c.shop.example.com: import sd_wpi2bo5r6gd6zarvi6r3huu5mi left alone this pass: the import journal could not be read
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_dd7rvovxnrxu6nyleounah5mju committed: its gate is cleared and its journal row dropped
2026/10/21 16:45:56 provision: a.shop.example.com: not converging import sd_r3bwivvx37con3aztaqj6ncoqu: it is swapped but not committed, and the row on this box has no import gate
2026/10/21 16:45:56 provision: a.shop.example.com: not converging import sd_45zufsznpz4fkaxpa4ujy2jl64: it is swapped but not committed, and the row on this box has no import gate
2026/10/21 16:45:56 provision: a.shop.example.com: not converging import sd_foxt4c4miyq2dn5ukhntxfklvy: it is placed but not committed, and the row on this box has no import gate
2026/10/21 16:45:56 provision: a.shop.example.com: not converging import sd_oxxxgsxdb3w7ssdumogv73cgr4: it is placed but not committed, and the row on this box has no import gate
2026/10/21 16:45:56 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/21 16:45:56 provision: converge seed source on a.shop.example.com: constraint failed: seed_source is read-only here (1811)
2026/10/21 16:45:56 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/21 16:45:56 provision: a.shop.example.com: import sd_yywcoy55nv46a5adu6cqh6daoq committed: its gate is cleared and its journal row dropped
2026/10/21 16:45:56 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/21 16:45:56 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:56 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/21 16:45:56 provision: acme.go.tito.io: not minting a seeded instance: this box does not mint nested (<nil>)
2026/10/21 16:45:56 provision: acme.go.tito.io: not minting a seeded instance: claim control is on for this box
2026/10/21 16:45:56 provision: acme.go.tito.io: aborted seed sd_tubpb4vtf5xarx57yjwf6qihym: this box cannot read seed markers, and places no seed; nothing local is removed
2026/10/21 16:45:56 provision: acme.go.tito.io: aborted seed sd_tubpb4vtf5xarx57yjwf6qihym rolled back (no box had swapped it)
2026/10/21 16:45:56 provision: acme.go.tito.io: not minting a seeded instance: its record does not describe a hibernating instance
2026/10/21 16:45:56 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:56 provision: removed instance route acme.go.tito.io (its seed sd_55up27neufow7st2ko2y36ilre was aborted); the next pass rolls it back
2026/10/21 16:45:56 provision: acme.go.tito.io: aborted seed sd_55up27neufow7st2ko2y36ilre: this box cannot read seed markers, and places no seed; nothing local is removed
2026/10/21 16:45:56 provision: acme.go.tito.io: aborted seed sd_55up27neufow7st2ko2y36ilre rolled back (no box had swapped it)
2026/10/21 16:45:56 provision: acme.go.tito.io: aborted seed sd_wf3crgfimbvi3q2yikpd7brsum has a row this pass may not remove; leaving the seed aborted
2026/10/21 16:45:56 provision: acme.go.tito.io: aborted seed sd_6znjfunrqfjm5sd2vphhaeml5q rolled back (no box had swapped it)
2026/10/21 16:45:56 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:56 provision: removed instance route acme.go.tito.io (its seed sd_vywzb2ikno34eteed5cy3kprha was aborted); the next pass rolls it back
2026/10/21 16:45:56 provision: acme.go.tito.io: aborted seed sd_vywzb2ikno34eteed5cy3kprha has no route on this box: its local data is removed
2026/10/21 16:45:56 provision: acme.go.tito.io: aborted seed sd_vywzb2ikno34eteed5cy3kprha rolled back (no box had swapped it)
2026/10/21 16:45:56 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_orortfkmaz4lj6wl4f3zrc2dea (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_orortfkmaz4lj6wl4f3zrc2dea rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_orortfkmaz4lj6wl4f3zrc2dea is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_azxkku7ekg34if7wsapvmgsgmi (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_azxkku7ekg34if7wsapvmgsgmi rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_azxkku7ekg34if7wsapvmgsgmi is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_6ah6ugvbjjjp3nq5fbdx5ccjfa (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_6ah6ugvbjjjp3nq5fbdx5ccjfa rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_6ah6ugvbjjjp3nq5fbdx5ccjfa: the host's replica is left alone: its record no longer names this seed
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_6ah6ugvbjjjp3nq5fbdx5ccjfa is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_rzdcauivbq3we66qbg7ab2yaiq (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_rzdcauivbq3we66qbg7ab2yaiq rollback deferred: the host is not fenced and stopped yet (<nil>)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_rzdcauivbq3we66qbg7ab2yaiq rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_rzdcauivbq3we66qbg7ab2yaiq is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_hodlu5x7paqyqoveqv2lhjeb3e (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_hodlu5x7paqyqoveqv2lhjeb3e rollback deferred: the host is not fenced and stopped yet (stop unproven)
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_ak63d3ahvt6zinzc7pcebgjl5i (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_ak63d3ahvt6zinzc7pcebgjl5i is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_6jb2jahfaemlchouimprmgbiaq (the original route is journaled)
2026/10/21 16:45:56 provision: skipping record apps/bac/shop/instances/a.shop.example.com.json: malformed: provision: invalid maintenance projection or protected fields
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_6jb2jahfaemlchouimprmgbiaq left alone this pass: its record could not be read
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_skl6dnegspe7a5vhhyksc5unpy (the original route is journaled)
2026/10/21 16:45:56 provision: skipping record apps/bac/shop/instances/a.shop.example.com.json: read failed: connection reset
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_skl6dnegspe7a5vhhyksc5unpy left alone this pass: its record could not be read
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_o2nhj4dq45dtfukdzn3stxcmcu (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_o2nhj4dq45dtfukdzn3stxcmcu: close the import gate: constraint failed: injected (1811)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_o2nhj4dq45dtfukdzn3stxcmcu rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_o2nhj4dq45dtfukdzn3stxcmcu is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_av37445kmefbd7mkehocgcp6zu (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_av37445kmefbd7mkehocgcp6zu: close the import gate: constraint failed: injected (1811)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_av37445kmefbd7mkehocgcp6zu rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_av37445kmefbd7mkehocgcp6zu is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_tf3blyfzldnl6yvulzxnq3niwa (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_tf3blyfzldnl6yvulzxnq3niwa rollback deferred: the host is not fenced and stopped yet (injected failure at fence)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_tf3blyfzldnl6yvulzxnq3niwa rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_tf3blyfzldnl6yvulzxnq3niwa is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_4a6r3223q2ddjo6dy3bsg5qoom (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_4a6r3223q2ddjo6dy3bsg5qoom rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_4a6r3223q2ddjo6dy3bsg5qoom is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_xghwihckh6ixip24o7l3h5mnom (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_xghwihckh6ixip24o7l3h5mnom: retire its instance key: injected failure at retire-key
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_xghwihckh6ixip24o7l3h5mnom rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_xghwihckh6ixip24o7l3h5mnom is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_xzp7hjesu5r2oj7fbtgtawvcce (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_xzp7hjesu5r2oj7fbtgtawvcce rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_xzp7hjesu5r2oj7fbtgtawvcce is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_65lsawat7cnub3cpu253x6ut3a (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_65lsawat7cnub3cpu253x6ut3a: remove its local data: injected failure at remove-local
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_65lsawat7cnub3cpu253x6ut3a rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_65lsawat7cnub3cpu253x6ut3a is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_vs6zrj24ghmmqpydnsv5rnfwse (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_vs6zrj24ghmmqpydnsv5rnfwse rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_vs6zrj24ghmmqpydnsv5rnfwse is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_co5mvvp6vswy7a7ju25ojhu3p4 (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_co5mvvp6vswy7a7ju25ojhu3p4: remove its local data: injected failure at remove-local-done
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_co5mvvp6vswy7a7ju25ojhu3p4 rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_co5mvvp6vswy7a7ju25ojhu3p4 is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_buukqjr5kiuf3ifzlf4x6kyyme (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_buukqjr5kiuf3ifzlf4x6kyyme rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_buukqjr5kiuf3ifzlf4x6kyyme is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_vbuqvz6o3zi6wv65welstcq7sm (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_vbuqvz6o3zi6wv65welstcq7sm: restore the original route: constraint failed: injected (1811)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_vbuqvz6o3zi6wv65welstcq7sm rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_vbuqvz6o3zi6wv65welstcq7sm is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_ri3vs3aj4vt63isz2imd3fy7wm (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_ri3vs3aj4vt63isz2imd3fy7wm: restore the original route: constraint failed: injected (1811)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_ri3vs3aj4vt63isz2imd3fy7wm rolled back to its original route
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_ri3vs3aj4vt63isz2imd3fy7wm is cleaned up and its journal row retired
2026/10/21 16:45:56 provision: a.shop.example.com: swapped for import sd_hrypa63twc7y5r3pt4srnrxnda (the original route is journaled)
2026/10/21 16:45:56 provision: a.shop.example.com: import sd_hrypa63twc7y5r3pt4srnrxnda is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_x5tl3nc7wwyq3uyf73zhaojwsq (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_x5tl3nc7wwyq3uyf73zhaojwsq rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_x5tl3nc7wwyq3uyf73zhaojwsq: delete its snapshot: injected failure at delete-snapshot
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_x5tl3nc7wwyq3uyf73zhaojwsq is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_rcbvar3bdps4ohq2oi7vu22pmq (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_rcbvar3bdps4ohq2oi7vu22pmq rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_rcbvar3bdps4ohq2oi7vu22pmq is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_4yv4frseu3f4qhziswvdlz3j3u (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_4yv4frseu3f4qhziswvdlz3j3u rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_4yv4frseu3f4qhziswvdlz3j3u: delete the host's replica: injected failure at delete-replica
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_4yv4frseu3f4qhziswvdlz3j3u is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_jwlunocvrifco33riceea32csu (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_jwlunocvrifco33riceea32csu rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_jwlunocvrifco33riceea32csu is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_nxu6tt6u2whvpmqad24rxr4oqe (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_nxu6tt6u2whvpmqad24rxr4oqe rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_nxu6tt6u2whvpmqad24rxr4oqe: retire its journal row: constraint failed: injected (1811)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_nxu6tt6u2whvpmqad24rxr4oqe is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_o32r4rehccjc3a2utzncvgyyci (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_o32r4rehccjc3a2utzncvgyyci rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_o32r4rehccjc3a2utzncvgyyci: retire its journal row: constraint failed: injected (1811)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_o32r4rehccjc3a2utzncvgyyci is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_yxpyl5zdpfmsv5qkwxg5otyh3q (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_yxpyl5zdpfmsv5qkwxg5otyh3q rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_yxpyl5zdpfmsv5qkwxg5otyh3q is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: mark import sd_yxpyl5zdpfmsv5qkwxg5otyh3q rolled back: injected failure at cas
2026/10/21 16:45:57 provision: a.shop.example.com: aborted seed sd_yxpyl5zdpfmsv5qkwxg5otyh3q rolled back (no box had swapped it)
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_c66lod6yglw5ywmuqk5zrzih7u (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_c66lod6yglw5ywmuqk5zrzih7u rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_c66lod6yglw5ywmuqk5zrzih7u is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: aborted seed sd_c66lod6yglw5ywmuqk5zrzih7u rolled back (no box had swapped it)
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_2ufh3d65fyxokzimdms6d6frou (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_2ufh3d65fyxokzimdms6d6frou rollback deferred: the host is not fenced and stopped yet (<nil>)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_2ufh3d65fyxokzimdms6d6frou rollback deferred: the host is not fenced and stopped yet (<nil>)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_2ufh3d65fyxokzimdms6d6frou rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_2ufh3d65fyxokzimdms6d6frou is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_umj6hpqagleuyfqjeze3su7cz4 (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_umj6hpqagleuyfqjeze3su7cz4 rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_umj6hpqagleuyfqjeze3su7cz4 is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_lajvnlp5ppvusg4cqvwfbp4vem (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_lajvnlp5ppvusg4cqvwfbp4vem rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_lajvnlp5ppvusg4cqvwfbp4vem is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: minted instance route a.shop.example.com (app "shop" acct "bac")
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_udlllb36zs3ruoic7jvlwvfjgm (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_udlllb36zs3ruoic7jvlwvfjgm rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_udlllb36zs3ruoic7jvlwvfjgm is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: minted instance route a.shop.example.com (app "shop" acct "bac")
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_cih4hi6nq3slzf45me3y2yolh4 (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_cih4hi6nq3slzf45me3y2yolh4 rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_cih4hi6nq3slzf45me3y2yolh4 is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: minted instance route a.shop.example.com (app "shop" acct "bac")
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_smcv7vsam4w5f76bzmyh2d6nye (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_smcv7vsam4w5f76bzmyh2d6nye rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_smcv7vsam4w5f76bzmyh2d6nye is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: minted instance route a.shop.example.com (app "other" acct "bac")
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_hvywqrr25cak33mlvf2g5ghlfe (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_hvywqrr25cak33mlvf2g5ghlfe rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_hvywqrr25cak33mlvf2g5ghlfe is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: minted instance route a.shop.example.com (app "other" acct "bac")
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_wp6tbvypkb6ss7hjsprom2ok6e (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_wp6tbvypkb6ss7hjsprom2ok6e rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_wp6tbvypkb6ss7hjsprom2ok6e is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: minted instance route a.shop.example.com (app "other" acct "bac")
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_nntkeis3woavq5pgojqkpynbme (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_nntkeis3woavq5pgojqkpynbme has no route on this box: its local data is removed and no route is put back
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_nntkeis3woavq5pgojqkpynbme is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_helhewnlrdptkbzecpmxd6jvom (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_fspu3jjpdry7kovzvfgif7vvri (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_a3kkzk6bxivhokd6uk47y43afu (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_a3kkzk6bxivhokd6uk47y43afu cannot roll back on this box: the activator is not wired; it stays journaled and gated
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_lqajwrwdqmibhaockaredtvnii (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_lqajwrwdqmibhaockaredtvnii is not rolled back: the route changed under the fence, so nothing there is touched
2026/10/21 16:45:57 provision: a.shop.example.com: import "../not-a-seed" names no snapshot and no replica; only its journal row is cleaned up
2026/10/21 16:45:57 provision: a.shop.example.com: import ../not-a-seed is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_gqjzgum2gcdmmcr5e47gi7tfhm (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_cymaxsc7un5sbkhao4xb6ymg5m (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_nzvhcq7jaluhvq72qg25gck6xu (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_m4pybjy5emxbvsaoxp46xlthha (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_atjdlehvesvdixksijx6frat3y (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_atjdlehvesvdixksijx6frat3y rollback deferred: the host is not fenced and stopped yet (stop evidence unreadable)
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_ce2vk24pwsbgm6a2exhwnboque (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_ce2vk24pwsbgm6a2exhwnboque has no route on this box: its local data is removed and no route is put back
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_ce2vk24pwsbgm6a2exhwnboque is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: minted instance route a.shop.example.com (app "shop" acct "bac")
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_4keq7dqxfjek5xmxkcag452fd4 (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_4keq7dqxfjek5xmxkcag452fd4: remove its local data: injected failure at remove-local
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_4keq7dqxfjek5xmxkcag452fd4 is not rolled back: the route at the host is not the import's, so nothing there is touched
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_kpnw5bl5dy3egmm3tye6h3e5ge (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_kpnw5bl5dy3egmm3tye6h3e5ge: a route appeared at the host, so its local database is left and the rollback waits
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_fvtri4nlmt3nuu5t5euwdtq6wi (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_fvtri4nlmt3nuu5t5euwdtq6wi rollback deferred: no fence generation: registry busy
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_n2mjadgvpnlqok7e2nuure3u2e (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_n2mjadgvpnlqok7e2nuure3u2e rollback deferred: no fence generation: the generation source answered 0
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_huu7ljicgdi4djcgkxk5ljcghu (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_iey6nbbbqb6h4o3ylgtxat4oaq (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_23qjydb6ajkpeykkmtpsjeuxsm (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import deferred: this box cannot read the instance's env file
2026/10/21 16:45:57 provision: a.shop.example.com: import deferred: the instance's env file could not be read: a symlink
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_a3ncras3h4y4xv3aryhomn42uy (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_a3ncras3h4y4xv3aryhomn42uy rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_a3ncras3h4y4xv3aryhomn42uy is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_ymveyabsnoypbekkbdlnhbddc4 (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_ymveyabsnoypbekkbdlnhbddc4 rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_ymveyabsnoypbekkbdlnhbddc4 is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_h72lcyymkglku6loyhzq6tiih4 (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_h72lcyymkglku6loyhzq6tiih4 rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_h72lcyymkglku6loyhzq6tiih4 is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_vu57kqo3doc3kpf2jzjuwo3qve (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_vu57kqo3doc3kpf2jzjuwo3qve: retire its instance key: the env file is a symlink
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_vu57kqo3doc3kpf2jzjuwo3qve rolled back to its original route
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_vu57kqo3doc3kpf2jzjuwo3qve is cleaned up and its journal row retired
2026/10/21 16:45:57 provision: a.shop.example.com: swapped for import sd_tcutdomq2ncaxc46oeoxs5gday (the original route is journaled)
2026/10/21 16:45:57 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/21 16:45:57 provision: a.shop.example.com: swapped for import sd_fu7v3wpaduketltikroqc37ygm (the original route is journaled)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_mzausx3fyeeicye3wmjhwjof64 refused: there is no route at a.shop.example.com to replace
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_opdxx7zqectj2zey5ippdtfcsa refused: the route's address is 127.0.0.1:9, not 127.0.0.1:8401
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_zzt5qrmexjdwk2twg4uz77r57q refused: the route's address is 127.0.0.1:8401,127.0.0.1:8402, not 127.0.0.1:8401
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_f7ipsj5mux6ayopynbqzypxwoa refused: the route's address is 127.0.0.1:9, not 127.0.0.1:8401
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_vwt7qflydk5xnxzuvxrc5qoicm refused: the route belongs to app other
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_6r742vwbqvig4rt4dsf2aj23he refused: the route is filed under another account
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_ivoq7lonkxkc2vptm7ikhwhjxa refused: the route is filed under the operator account, and no assignment maps shop to this app
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_oug2a3wxachr6e6i57riujm22u refused: the route is filed under the operator account, and no assignment maps shop to this app
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_hz4lalgm2whamujbsdmj2tcxxi refused: the route is filed under the operator account, and no assignment maps shop to this app
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_xzbccttexagetjfa6exn45pdgy refused: the route is filed under the operator account, and no assignment maps shop to this app
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_67izxvqkirsgauchdxhwhtqkim refused: the route is not an address route this import can take over (socket)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_laoajyua2tktasxrlofpsd3ecm refused: the route is not an address route this import can take over (no address)
2026/10/21 16:45:57 provision: a.shop.example.com: import sd_tkxbkljdakcctdngdgeau4ofgy refused: the route is not an address route this import can take over (provisioned)
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_5ntgpyf2d3k4pahawtk7yqskty refused: the route is not an address route this import can take over (kind static)
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_g3fuqfwmv6qiby2vihgdrowpqe refused: the route is not an address route this import can take over (backing)
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_2ilpmgjpbmlupffynw6qhuv6hu refused: the route is not an address route this import can take over (tunnel)
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_oaxntkpxnrewhpinuovrxizc7i refused: the route is not an address route this import can take over (caps)
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_6sfdrciofycemwyfvka5na2vha refused: the route is not an address route this import can take over (platform)
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_vemio37maq2y52yg2brpq4deve refused: the route is not an address route this import can take over (canary)
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_yaryfnfibpwkvfmmfzxaugoxqa refused: the route is not an address route this import can take over (kind sidecar)
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_6zpe5v7g3k3bngpwfdgiwnyoeu refused: the route is not an address route this import can take over (region)
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_hg56w562msqbxkegfbaupou32e refused: the route is not an address route this import can take over (fleet_box)
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_p5putxzr7op5qlexletngqydpy refused: the route is not an address route this import can take over (hibernate)
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_cgjuvwzzcps3437uo44yeo2r44 refused: the route is not an address route this import can take over (claim_owner)
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_yj5zklzwx6mqkjww4q57k4ua4y refused: this box does not run instances nested
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_s4ktpkgoydolorflmptaohojgm refused: this box does not run instances nested
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_5kmt4w6r2j3xf7ezam2c3lmdom refused: claim control is on for this box
2026/10/21 16:45:58 provision: a.shop.example.com: swapped for import sd_zfsbwxpesarpcysc3jb7b7lq6e (the original route is journaled)
2026/10/21 16:45:58 provision: a.shop.example.com: swapped for import sd_7b7cgy5rnlsu6th53anl4n3wyy (the original route is journaled)
2026/10/21 16:45:58 provision: a.shop.example.com: import deferred: this box cannot read the legacy route assignments
2026/10/21 16:45:58 provision: a.shop.example.com: import deferred: the legacy route assignments could not be read: store down
2026/10/21 16:45:58 provision: a.shop.example.com: not swapping for import sd_gj2htem5gzzyiw433veosnpcde: its verify hash is not a sha256
2026/10/21 16:45:58 provision: a.shop.example.com: not swapping for import sd_nsex7a7hl5smpz4c3u2ammteuy: its verify hash is not a sha256
2026/10/21 16:45:58 provision: a.shop.example.com: not swapping for import sd_e33onz6wu4isiip77hwtibppte: its verify hash is not a sha256
2026/10/21 16:45:58 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/21 16:45:58 provision: A.shop.example.com/..: not swapping for import sd_6q6y2plzuslyy7ywd6vlss5g4m: its host or seed id is malformed (seeds: not a host)
2026/10/21 16:45:58 provision: a.shop.example.com: not swapping for import sd_gpdyggl3x45c32zvtqh4a6s5ty: its record does not describe a nested, hibernating instance
2026/10/21 16:45:58 provision: a.shop.example.com: not swapping for import sd_3qso73swjwarovsve4crgr47gi: its record does not describe a nested, hibernating instance
2026/10/21 16:45:58 provision: a.shop.example.com: not swapping for import sd_gaaeh6kfvqdqc7j6adepz6mmzi: its record does not describe a nested, hibernating instance
2026/10/21 16:45:58 provision: a.shop.example.com: not swapping for import sd_yserlme32kxv3ip7swxjl4knhi: its record does not describe a nested, hibernating instance
2026/10/21 16:45:58 provision: a.shop.example.com: import deferred: the box's layout intent could not be read: store down
2026/10/21 16:45:58 provision: a.shop.example.com: swapped for import sd_6bz46xro7g2dxr4wo2bv37i6oy (the original route is journaled)
2026/10/21 16:45:58 provision: a.shop.example.com: import deferred: the box's nested probe did not answer: ready probe timed out
2026/10/21 16:45:58 provision: a.shop.example.com: swapped for import sd_pyljgmadtp3i6gdmagamqrbzsu (the original route is journaled)
2026/10/21 16:45:58 provision: a.shop.example.com: swapped for import sd_ekob7wrowl7vwbdl22rxdn4mry (the original route is journaled)
2026/10/21 16:45:58 provision: a.shop.example.com: import deferred: the route is held by operation op_1
2026/10/21 16:45:58 provision: dry-run: would consider swapping a.shop.example.com for import sd_zrnrbqgtopcv4dy7nryzn7gsum
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_gxea3jdxhr7cux5ljkrgusshem rolled back to its original route
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_gxea3jdxhr7cux5ljkrgusshem: the host's replica is left alone: the record apps/bac/shop/instances/a.shop.example.com.json holds the host
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_gxea3jdxhr7cux5ljkrgusshem is cleaned up and its journal row retired
2026/10/21 16:45:58 provision: a.shop.example.com: import sd_npwpdhe72tb35wvihflzyfn6fm left alone: the import journal holds seed sd_iqjzyhoom2ty6lutehg5feqvgy at swapped
2026/10/21 16:45:58 provision: a.shop.example.com: not minting import sd_34kskevr4zt6idea67gzvdmfzq: it is swapped but not committed, and only its swap makes its row
2026/10/21 16:45:58 provision: a.shop.example.com: not minting import sd_vkpbwuwzxuudusoz7k3fiu27ba: it is placed but not committed, and only its swap makes its row
2026/10/21 16:45:58 provision: a.shop.example.com: swapped for import sd_txt5ow2zytzjh2y5nwm6vuguje (the original route is journaled)
2026/10/21 16:45:58 provision: a.shop.example.com: not minting import sd_txt5ow2zytzjh2y5nwm6vuguje: it is swapped but not committed, and only its swap makes its row
2026/10/21 16:45:58 provision: a.shop.example.com: not minting import sd_txt5ow2zytzjh2y5nwm6vuguje: it is placed but not committed, and only its swap makes its row
2026/10/21 16:45:58 provision: minted instance route a.shop.example.com (app "shop" acct "bac")
2026/10/21 16:45:58 provision: removed retired sidecar route gone.eleven.bac.sidecar.internal (record gone)
2026/10/21 16:45:58 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/21 16:45:58 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/21 16:45:58 provision: converged sidecar bot.eleven.bac.sidecar.internal args ["sidecar","run"] -> ["worker","run"]
2026/10/21 16:45:58 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/21 16:45:58 provision: converged sidecar bot.eleven.bac.sidecar.internal ceilings 300/3600 -> 60/120
2026/10/21 16:45:58 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/21 16:45:58 provision: converged sidecar bot.eleven.bac.sidecar.internal channel stable -> canary/eleven
2026/10/21 16:45:58 provision: converged sidecar bot.eleven.bac.sidecar.internal environment "other" -> "relay"
2026/10/21 16:45:58 provision: converged sidecar bot.eleven.bac.sidecar.internal hibernate true -> false
2026/10/21 16:45:58 provision: skipping sidecar record apps/bac/eleven/sidecars/bot.json: read failed: failStore: reads disabled under apps/bac/eleven/sidecars/
2026/10/21 16:45:58 provision: skipping sidecar record apps/bac/eleven/sidecars/bot.json: malformed: invalid character 'n' looking for beginning of object key string
2026/10/21 16:45:58 provision: not removing sidecar bot.eleven.bac.sidecar.internal: its record exists but could not be read cleanly this pass
2026/10/21 16:45:58 provision: skipping sidecar record apps/bac/eleven/sidecars/bot.json: empty channel
2026/10/21 16:45:58 provision: skipping sidecar record apps/bac/eleven/sidecars/held.json: empty channel
2026/10/21 16:45:58 provision: not removing sidecar held.eleven.bac.sidecar.internal: its record exists but could not be read cleanly this pass
2026/10/21 16:45:58 provision: removed retired sidecar route old.eleven.bac.sidecar.internal (record gone)
2026/10/21 16:45:58 provision: bac/eleven has sidecar records but no sidecars manifest — not minting
2026/10/21 16:45:58 provision: bac/eleven is in the trash — not minting sidecar routes for it
2026/10/21 16:45:58 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/21 16:45:58 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/21 16:45:58 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/21 16:45:58 provision: minted sidecar route hub.relay.bac.sidecar.internal (app "relay" acct "bac" args ["relay"])
2026/10/21 16:45:58 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/21 16:45:58 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/21 16:45:58 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/21 16:45:58 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/21 16:45:58 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/21 16:45:58 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/21 16:45:58 provision: removed retired sidecar route bot.eleven.bac.sidecar.internal (record gone)
2026/10/21 16:45:58 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/21 16:45:58 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/21 16:45:58 provision: skipping sidecar record apps/bac/relay/sidecars/hub.json: read failed: failStore: reads disabled under apps/bac/relay/sidecars/
2026/10/21 16:45:58 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/21 16:45:58 provision: minted sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" args ["sidecar","run"])
2026/10/21 16:45:58 provision: dry-run: would mint sidecar route bot.eleven.bac.sidecar.internal (app "eleven" acct "bac" channel "stable" args ["sidecar","run"])
2026/10/21 16:45:58 provision: dry-run: would remove retired sidecar route gone.eleven.bac.sidecar.internal (record gone)
2026/10/21 16:45:58 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/21 16:45:58 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:58 provision: converged acme.go.tito.io update settings "{\"updates\":\"manual\",\"channel\":\"stable\"}" -> ""
2026/10/21 16:45:58 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:58 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:58 provision: manifest bac/tito: read failed: provision: manifest bac/tito: unexpected end of JSON input
2026/10/21 16:45:58 provision: manifest bac/tito: read failed: provision: manifest bac/tito: unexpected end of JSON input
2026/10/21 16:45:58 provision: acme.go.tito.io: not minted this pass: the app's update policy could not be read
2026/10/21 16:45:58 provision: minted instance route acme.go.tito.io (app "tito" acct "bac")
2026/10/21 16:45:58 provision: manifest bac/tito: read failed: provision: manifest bac/tito: unexpected end of JSON input
2026/10/21 16:45:58 provision: acme.go.tito.io: not minted this pass: the app's update policy could not be read
2026/10/21 16:45:58 provision: minted instance route acme.go.tito.io held landing by mv_acme (app "tito" acct "bac")
FAIL
FAIL github.com/carlosframework/platform/internal/provision 95.087s
ok github.com/carlosframework/platform/internal/publicrelease 0.010s
? github.com/carlosframework/platform/internal/regionname [no test files]
ok github.com/carlosframework/platform/internal/registry 5.822s
ok github.com/carlosframework/platform/internal/relay 7.291s
ok github.com/carlosframework/platform/internal/release 27.038s
ok github.com/carlosframework/platform/internal/rollout 3.716s
ok github.com/carlosframework/platform/internal/rolloutwords 0.004s
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.027s
ok github.com/carlosframework/platform/internal/runs 0.533s
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.514s
ok github.com/carlosframework/platform/internal/seeds 0.012s
ok github.com/carlosframework/platform/internal/sim/hostlife 12.410s
ok github.com/carlosframework/platform/internal/sim/litestreamfacts 3.946s
ok github.com/carlosframework/platform/internal/status 0.065s
ok github.com/carlosframework/platform/internal/steering 0.006s
ok github.com/carlosframework/platform/internal/stopevidence 0.224s
ok github.com/carlosframework/platform/internal/svcrole 0.002s
ok github.com/carlosframework/platform/internal/telemetry 0.004s
ok github.com/carlosframework/platform/internal/termfence 0.004s
ok github.com/carlosframework/platform/internal/tunnelclient 0.004s
ok github.com/carlosframework/platform/internal/unixdial 0.002s
ok github.com/carlosframework/platform/internal/updatewords 0.004s
ok github.com/carlosframework/platform/internal/usage 0.004s
ok github.com/carlosframework/platform/internal/version 0.002s
ok github.com/carlosframework/platform/internal/vet 1.611s
FAIL
make: *** [Makefile:18: 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/harness/RESOURCES.md b/harness/RESOURCES.md| index 3d9c1758d..a5144dcbd 100644 |
| --- a/harness/RESOURCES.md |
| +++ b/harness/RESOURCES.md |
| @@ -19,3 +19,4 @@ Appended as each is created. Teardown commands: harness/TEARDOWN.md. |
| | 2026-10-20T16:02Z | TTL extended | i-06a1ec144aa5226fb, sg-0b9cf4c2a508b7cec, vol-035c92e5b506cc3db, bucket carlos-harness-640012953448, role and instance profile carlos-harness | ttl and expires tags 2026-10-20T18:40Z -> 2026-10-20T23:40Z; on the host `shutdown -c; shutdown -h 23:40` (shutdown --show: 23:40:00 UTC); Run 9 (v0.28.5 roll) and the offline-move rehearsal | |
| | 2026-10-20T20:54Z | TTL extended | i-06a1ec144aa5226fb, sg-0b9cf4c2a508b7cec, vol-035c92e5b506cc3db, bucket carlos-harness-640012953448, role and instance profile carlos-harness | ttl and expires tags 2026-10-20T23:40Z -> 2026-10-21T12:00Z; on the host `shutdown -c; shutdown -h +<minutes to 12:00Z>` (shutdown --show: Wed 2026-10-21 11:59:33 UTC); Run 10 (v0.28.6 candidate rehearsal, overnight) | |
| | 2026-10-21T08:01Z | TTL extended | i-06a1ec144aa5226fb, sg-0b9cf4c2a508b7cec, vol-035c92e5b506cc3db, bucket carlos-harness-640012953448, role and instance profile carlos-harness | ttl and expires tags 2026-10-21T12:00Z -> 2026-10-21T20:00Z; on the host `shutdown -c; shutdown -h 20:00` (shutdown --show: Wed 2026-10-21 20:00:00 UTC); Run 11b (G10 on 27303f54); `df -h /` 8.4G free (86%) | |
| +| 2026-10-21T16:23Z | TTL extended | i-06a1ec144aa5226fb, sg-0b9cf4c2a508b7cec, vol-035c92e5b506cc3db, bucket carlos-harness-640012953448, role and instance profile carlos-harness | ttl and expires tags 2026-10-21T20:00Z -> 2026-10-22T12:00Z; on the host `shutdown -c; shutdown -h 12:00` (shutdown --show: Thu 2026-10-22 12:00:00 UTC); Run 11d (G10 on the narrowed fix tip f0faf8cd); `df -h /` 4.9G free (92%); owner now platform-01 | |
diff --git a/harness/RUNLOG.md b/harness/RUNLOG.md| index ed4028620..77f63b2ca 100644 |
| --- a/harness/RUNLOG.md |
| +++ b/harness/RUNLOG.md |
| @@ -2676,3 +2676,38 @@ roll before the window, task 9, a new window (3 minutes), B4. The window now ski |
| root apply 09:21:38-58Z, dennis 09:23:51-09:24:09Z; leo and dennis `v0.28.19 current`, rev 17 `[]`; leo's report |
| 09:28:36Z v0.28.19 `38ef31cc` `activation_complete true`; sophie's console the v0.28.4 stand-in (`b2b431f3`); task 9 |
| again all empty; `/data/system/router` = `requested.json` + `v0.28.19/`. |
| + |
| +# Run 11d: G10 on the narrowed fix tip f0faf8cd (2026-10-21, 16:20Z on; owner platform-01) |
| + |
| +platform-01 took over the harness and the claim census from platform-d8 (its session ended; Run 11c's G10c create never |
| +ran: `run11c/b4-g10.log` is empty). The claim owner (also platform-01) pushed fix round 2, `claim-empty-cohort-done` @ |
| +**f0faf8cd**: only the installation's own work (hostbox.Selection.Installation, set by Reconciler.installWithWork) may go |
| +on without a registry row; every other work on a row-less host refuses as before 4dd4c436 (Astra's P2 on 4dd4c436). |
| +Astra re-review: **MERGE: approve** (after236/fresh-install-review2.md, 16:22Z). |
| + |
| +- Setup: TTL 20:00Z -> 2026-10-22T12:00Z (RESOURCES.md). `df -h /` 4.9G free (92%). |
| +- Build: `$TMPDIR/g10b` moved to f0faf8cd (the harness patch carried as working-tree changes, same seven files), stamp |
| + **v0.28.20**, carlos `be3d51718a086ce89b5a28044f944536c69ca5d129b6ab87a1add3a26299a1f2`, console |
| + `5eca0d41ff06c7aaacd3456fdebef3d2f08043ce1835410252c0bb650fd2c2ec`, `artefacts/v0.28.20-f0faf8cd/`, CV `f0faf8cd`. |
| + Tests ok: the four default packages, the two `-tags harness` ones, `./internal/host -run |
| + 'UnitShape|FreshInstall|ClaimUnit|ClaimTimer|ClaimBinding'`, `./internal/hostbox -run Installation`. |
| +- Order, as Run 11c: `g10-r16.host.sh` (restore `post-b5-run8b`, task 9, plain roll, task 9, `ls`), then |
| + `g10-window.host.sh <WID> 81 none`, then `g10b-b4.host.sh` (B4 + the create + G10 watch), then `g10c-accept.host.sh a|b|c`. |
| +- **Restore, task 9, plain roll, task 9, `ls`: PASS** (16:24:08-16:33:44Z, `evidence/run11d/roll.log`): restore `post-b5-run8b`; |
| + task 9 every line 0 on leo and in the bucket (rev 15); release-window v0.28.20, console `f0faf8cd` promoted to |
| + `canary/console`; publish-identity `control/system/router/releases/v0.28.20.json` create-only (`29c05d6e...`); promote |
| + stable 16:25:34Z rc 0, rev 15 -> 16 (activation `0f83efc8...`); leo and dennis `v0.28.20 current` / `.prev v0.28.12`, |
| + path active (16:27:37Z); task 9 again all empty, rev 17; `/data/system/router` = `requested.json` + `v0.28.20/`. |
| +- Window `g10-window.host.sh 20261021T1634Z 81 none` started 16:34Z (`evidence/run11d/window.log`). |
| +- **Window `20261021T1634Z`: G6, G7, G8 PASS; step 9 STOP, then PASS on retry** (`evidence/run11d/window.log`, |
| + `window-9-resume.log`). 8.1, 8.1b, 8.2 (journal-migrate accepted the router cache), 8.2b (digest true), 8.4 all DONE, |
| + no snapshot. Step 9's `systemctl start carlos-edge.service` failed its dependency job: `carlos-system-recover` refused |
| + `/proc/1923/task/1923: service: permission denied` (16:34:51Z), **finding (b) again** (claims-on-gate-recover fix (b)). |
| + `reset-failed` + start at 16:38:01Z: recover finished, edge active (pid 2739, `/opt/carlos/carlos`), triggers active, |
| + REFUSING once, no-home-region 0. G9: leo's report 16:39:04Z v0.28.20 `be3d5171` `host_claim_enabled true`, |
| + `floor_guard_ready true`; leo and dennis `v0.28.20 current`. |
| +- **Disk.** leo's instance-control logged `data disk too full: 5.0 GiB free, below the 5.9 GiB floor; refusing every |
| + instance start` from 16:30Z (the host's dir pool is leo's /data). Deleted the five stopped, superseded stand-ins |
| + `leo-ext4-f6`, `leo-ext4-r10`, `leo-ext4-run8a`, `leo-ext4-resume`, `leo-btrfs` with their snapshots (16:37Z): |
| + `df -h /` 4.9G -> 17G free (70%). The live leo is the ext4 `leo` in pool hdir; its snapshots are untouched. |
| +- B4 + G10 create (`g10b-b4.host.sh`) started 16:40Z (`evidence/run11d/b4-g10.log`). |
diff --git a/harness/evidence/run11c/b4-g10.log b/harness/evidence/run11c/b4-g10.log| new file mode 100644 |
| index 000000000..e69de29bb |
diff --git a/harness/evidence/run11c/window.log b/harness/evidence/run11c/window.log| index dee808d4a..b4b20049c 100644 |
| --- a/harness/evidence/run11c/window.log |
| +++ b/harness/evidence/run11c/window.log |
| @@ -1 +1,619 @@ |
| WID=20261021T0929Z |
| +######## 8.1 09:29:20.726Z |
| + |
| +Id=carlos-edge.service LoadState=loaded ActiveState=active |
| +Id=carlos-adopt.timer LoadState=loaded ActiveState=active |
| +Id=carlos-adopt.path LoadState=loaded ActiveState=active |
| +Id=carlos-stage.path LoadState=loaded ActiveState=active |
| +Id=carlos-restart.path LoadState=loaded ActiveState=active |
| +Id=carlos-system-update.path LoadState=loaded ActiveState=active |
| +Id=carlos-adopt.service LoadState=loaded ActiveState=inactive |
| +Id=carlos-stage.service LoadState=loaded ActiveState=inactive |
| +Id=carlos-config-sync.service LoadState=loaded ActiveState=inactive |
| +Id=carlos-restart.service LoadState=loaded ActiveState=inactive |
| +Id=carlos-system-update.service LoadState=loaded ActiveState=inactive |
| +Id=carlos-system-recover.service LoadState=loaded ActiveState=inactive |
| + |
| +UNIT LOAD ACTIVE SUB DESCRIPTION |
| + |
| +0 loaded units listed. |
| +To show all installed unit files use 'systemctl list-unit-files'. |
| +Removed '/etc/systemd/system/multi-user.target.wants/carlos-edge.service'. |
| +UNIT LOAD ACTIVE SUB DESCRIPTION |
| + |
| +0 loaded units listed. |
| +To show all installed unit files use 'systemctl list-unit-files'. |
| +== 8.1 second block 09:29:21 |
| +Id=carlos-adopt.timer |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-adopt.path |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-stage.path |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-restart.path |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-system-update.path |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-adopt.service |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-stage.service |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-config-sync.service |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-restart.service |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-system-update.service |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-system-recover.service |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-edge.service |
| +LoadState=masked |
| +ActiveState=inactive |
| +8.1 DONE 09:29:21 |
| +[run-leo] w81.box.sh exit=0 |
| +######## 8.1b 09:29:21.963Z |
| +== quiesce: stop console.service on sophie 09:29:22.157Z |
| +Success Result=success ActiveState=inactive SubState=dead |
| + |
| +== signer key 09:29:24.332Z |
| +Success root 600 1 45 |
| + |
| +== 8.1b 09:29:26.612Z |
| +Success { |
| + "writes": [ |
| + { |
| + "key": "control/hosts-backfill.json", |
| + "before_etag": "" |
| + } |
| + ], |
| + "backfill": { |
| + "id": "cohort1-20261021", |
| + "phase": "collecting", |
| + "directory_revision": 17, |
| + "hosts": [] |
| + } |
| +} |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +REV=17 |
| +{"id":"cohort1-20261021","phase":"collecting","directory_revision":17,"hosts":[]} |
| + + WINDOW_ID=20261021T0929Z |
| ++ BACKFILL_ID=cohort1-20261021 |
| ++ refresh |
| ++ /usr/local/bin/carlos system claims inspect --bucket harness-deployment --aws-region eu-west-1 --public-key SN3K2ONYVeE7TgHKrmNAdltYLDGRcrG/7ybG7Y9rJt0= |
| +2026/10/21 09:29:27 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| ++ jq .signed_roster inspect.json |
| +++ jq -er .roster.revision inspect.json |
| ++ REV=17 |
| ++ jq -n --arg b harness-deployment --argjson rev 17 --arg id cohort1-20261021 '{phase:"backfill-collect",bucket:$b,expected_revision:$rev,backfill:{id:$id}}' |
| ++ /usr/local/bin/carlos system claims run --plan /root/claim-trial/plan.json --signing-key /run/claim-signer/release.key --public-key SN3K2ONYVeE7TgHKrmNAdltYLDGRcrG/7ybG7Y9rJt0= --aws-region eu-west-1 --dry-run |
| +2026/10/21 09:29:27 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| ++ jq '{writes: [.writes[] | {key, before_etag}], backfill}' backfill-collect-dry.json |
| ++ /usr/local/bin/carlos system claims run --plan /root/claim-trial/plan.json --signing-key /run/claim-signer/release.key --public-key SN3K2ONYVeE7TgHKrmNAdltYLDGRcrG/7ybG7Y9rJt0= --aws-region eu-west-1 |
| +2026/10/21 09:29:27 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| ++ jq -e --arg id cohort1-20261021 '.backfill.id == $id' backfill-collect.json |
| ++ jq -e '.backfill.phase == "collecting"' backfill-collect.json |
| ++ jq -e --argjson rev 17 '.backfill.directory_revision == $rev' backfill-collect.json |
| ++ jq -e '.backfill.hosts != null' backfill-collect.json |
| ++ jq -e '(.backfill.hosts | length) == 0' backfill-collect.json |
| ++ jq -e '(.writes | length) == 1' backfill-collect.json |
| ++ jq -e '.writes[0].key == "control/hosts-backfill.json"' backfill-collect.json |
| ++ jq -e '.writes[0].before_etag == ""' backfill-collect.json |
| ++ refresh |
| ++ /usr/local/bin/carlos system claims inspect --bucket harness-deployment --aws-region eu-west-1 --public-key SN3K2ONYVeE7TgHKrmNAdltYLDGRcrG/7ybG7Y9rJt0= |
| +2026/10/21 09:29:27 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| ++ jq .signed_roster inspect.json |
| +++ jq -er .roster.revision inspect.json |
| ++ REV=17 |
| ++ echo REV=17 |
| ++ jq -c .backfill backfill-collect.json |
| + |
| +8.1b END 09:29:32.622Z |
| +######## 8.2 09:29:32.630Z |
| +== host.env edit 09:29:32 |
| +/etc/carlos/host.env 600 root:root 351 |
| +9a10,11 |
| +> CARLOS_HOST_CLAIM=1 |
| +> CARLOS_HOST_CLAIM_ORIGINS=1 |
| +== 8.2 block 09:29:32 |
| +{ |
| + "dry_run": true, |
| + "reload": true, |
| + "source": "/etc/carlos/host.env", |
| + "start": false, |
| + "target": "/etc/systemd/system/carlos-instance-control.service" |
| +} |
| +{ |
| + "dry_run": false, |
| + "reload": true, |
| + "source": "/etc/carlos/host.env", |
| + "start": false, |
| + "target": "/etc/systemd/system/carlos-instance-control.service" |
| +} |
| +# /etc/systemd/system/carlos-instance-control.service |
| +# The root instance-control service (isolated-exec design §5). Socket- |
| +# activated, so it runs only while there is work. Its whole job is |
| +# systemctl start/stop/set-property on the three instance templates' units |
| +# and their host slices, on the agent's request, plus running the readiness |
| +# probe. Every unit name it passes to systemctl is built from a validated |
| +# host by the platform's own naming; nothing from a request reaches |
| +# systemctl as a string. |
| +# |
| +# Runs as ROOT deliberately, with no new-privileges lockout and no syscall |
| +# filter, for the systemctl child (the same rationale as |
| +# carlos-stage.service). It accepts a connection only from the edge unit's |
| +# main process (SO_PEERCRED uid carlos, pid == MainPID of |
| +# carlos-edge.service): a flat tenant is a child of that pid, never the pid |
| +# itself, and a nested tenant cannot reach the socket at all. |
| +# |
| +# At start it also looks UNDER the two instance bind mounts (unshare -m in |
| +# a private namespace, umount, list; design §8.2, "Recovery for a layout |
| +# that was unmounted anyway"). Files left in the raw mountpoint directory |
| +# while the layout was unmounted would otherwise be hidden by the mount and |
| +# invisible to the layout pass's destination check; a held file is a |
| +# failing line in every probe report and keeps /ready refusing nested wakes |
| +# until an operator moves or removes it and restarts this service. Root is |
| +# what makes that inspection possible: the private namespace and the umount |
| +# need CAP_SYS_ADMIN. ProtectSystem=strict leaves /data and /run visible. |
| +[Unit] |
| +Description=carlos instance control (root: start/stop carlos-instance*@ units for the agent) |
| +Requires=carlos-instance-control.socket data-instances.mount run-carlos-instances.mount run-carlos-logs.mount |
| +After=data-instances.mount run-carlos-instances.mount run-carlos-logs.mount |
| + |
| +[Service] |
| +StateDirectory=carlos-claims |
| +StateDirectoryMode=0700 |
| +EnvironmentFile=-/etc/carlos/host.env |
| +ExecStart=/opt/carlos/carlos instance-control |
| +ProtectSystem=strict |
| +# /run/systemd/system: the per-generation runtime drop-in (zero-downtime |
| +# deploys, plan 2 D1); nothing else is written there. |
| +ReadWritePaths=/run/carlos-control /run/carlos /var/lib/carlos-claims /var/lib/carlos-release/private /run/systemd/system /data /opt/carlos /etc/systemd/system /sys/fs/cgroup |
| +ProtectHome=yes |
| +PrivateTmp=yes |
| +PrivateDevices=yes |
| +ProtectKernelTunables=yes |
| +ProtectKernelModules=yes |
| +ProtectKernelLogs=yes |
| +RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6 |
| +MemoryDenyWriteExecute=yes |
| +MemoryMax=256M |
| +Environment=GOMEMLIMIT=192MiB |
| + |
| +# /run/systemd/system/service.d/zzz-lxc-service.conf |
| +[Service] |
| +ProcSubset=all |
| +ProtectProc=default |
| +ProtectControlGroups=no |
| +ProtectKernelTunables=no |
| +NoNewPrivileges=no |
| +LoadCredential= |
| +PrivateNetwork=no |
| +ImportCredential= |
| +ProtectHome=no |
| +ProtectSystem=no |
| +PrivateDevices=no |
| +PrivateTmp=no |
| +ProtectKernelLogs=no |
| +ProtectKernelModules=no |
| +ReadWritePaths= |
| +ReadOnlyPaths= |
| +/var/lib/carlos-claims 700 root:root |
| +/opt/carlos/system 755 root:root |
| +/opt/carlos/system/guard 755 root:root |
| +/opt/carlos/system/guard/moves 755 root:root |
| +/opt/carlos/system/guard/seeds 755 root:root |
| +Created symlink '/etc/systemd/system/multi-user.target.wants/carlos-instance-control.service' → '/etc/systemd/system/carlos-instance-control.service'. |
| +active |
| +Oct 21 09:24:41 leo carlos[602]: 2026/10/21 09:24:41 instance-control: disk: data disk too full: 5.2 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 09:25:11 leo carlos[602]: 2026/10/21 09:25:11 instance-control: disk: data disk too full: 5.2 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 09:25:41 leo carlos[602]: 2026/10/21 09:25:41 instance-control: disk: data disk too full: 5.2 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 09:26:11 leo carlos[602]: 2026/10/21 09:26:11 instance-control: disk: data disk too full: 5.2 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 09:26:41 leo carlos[602]: 2026/10/21 09:26:41 instance-control: disk: data disk too full: 5.2 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 09:26:45 leo carlos[602]: 2026/10/21 09:26:45 instance-control: probe: imds-v6 unverified no route to the address; deny not exercised |
| +Oct 21 09:26:45 leo carlos[602]: 2026/10/21 09:26:45 instance-control: probe: private-v6 unverified no route to fd00::1, fec0::1, 64:ff9b::a00:1; deny not exercised |
| +Oct 21 09:26:45 leo carlos[602]: 2026/10/21 09:26:45 instance-control: probe: io-weight unverified weights are set, but no disk here has io.cost or BFQ to enforce them |
| +Oct 21 09:27:11 leo carlos[602]: 2026/10/21 09:27:11 instance-control: disk: data disk too full: 5.2 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 09:27:41 leo carlos[602]: 2026/10/21 09:27:41 instance-control: disk: data disk too full: 5.2 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 09:28:11 leo carlos[602]: 2026/10/21 09:28:11 instance-control: disk: data disk too full: 5.2 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 09:28:41 leo carlos[602]: 2026/10/21 09:28:41 instance-control: disk: data disk too full: 5.2 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 09:29:11 leo carlos[602]: 2026/10/21 09:29:11 instance-control: disk: data disk too full: 5.2 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 09:29:34 leo systemd[1]: Stopping carlos-instance-control.service - carlos instance control (root: start/stop carlos-instance*@ units for the agent)... |
| +Oct 21 09:29:34 leo systemd[1]: carlos-instance-control.service: Deactivated successfully. |
| +Oct 21 09:29:34 leo systemd[1]: Stopped carlos-instance-control.service - carlos instance control (root: start/stop carlos-instance*@ units for the agent). |
| +Oct 21 09:29:34 leo systemd[1]: Started carlos-instance-control.service - carlos instance control (root: start/stop carlos-instance*@ units for the agent). |
| +total 16 |
| +drwx------ 2 root root 4096 Oct 21 09:29 . |
| +drwx------ 5 root root 4096 Oct 21 09:29 .. |
| +-rw------- 1 root root 803 Oct 21 09:29 migration.json |
| +-rw------- 1 root root 0 Oct 21 09:29 migration.lock |
| +-rw------- 1 root root 299 Oct 21 09:29 report.json |
| +8.2 DONE 09:29:34 |
| +[run-leo] --env exit=0 |
| +######## 8.2b 09:29:35.003Z |
| +== 8.2 census report read 09:29:35.051Z |
| +Completed 413 Bytes/413 Bytes (71.2 KiB/s) with 1 file(s) remaining download: s3://harness-deployment/control/host-census/cohort1-20261021/kathleen-juggling.json to cohort1/tmp/cohort1/leo-census.json |
| +true |
| +"8460507b6be2060d7714189934c3c122" 2026-10-21T09:29:34+00:00 413 |
| +operator-side sha256 of the raw object: 39e8a86181ba120e0542fd8997cdc840a60a7539fdce146b4ac577d702d3a747 |
| +operator-side sha256 of jq -c of it: 39e8a86181ba120e0542fd8997cdc840a60a7539fdce146b4ac577d702d3a747 |
| +2026-10-21 09:29:34 413 kathleen-juggling.json |
| +== 8.2b 09:29:37.264Z |
| +Success { |
| + "writes": [ |
| + { |
| + "key": "control/hosts-backfill.json", |
| + "before_etag": "\"4e0ec377db90a4b1b25e03155474365a\"" |
| + } |
| + ], |
| + "backfill": { |
| + "id": "cohort1-20261021", |
| + "phase": "done", |
| + "directory_revision": 17, |
| + "hosts": [], |
| + "reports": { |
| + "kathleen-juggling": "39e8a86181ba120e0542fd8997cdc840a60a7539fdce146b4ac577d702d3a747" |
| + }, |
| + "unreported": [ |
| + "ada-letterpress" |
| + ] |
| + } |
| +} |
| +.backfill.phase == "done" -> true |
| +(.backfill.hosts | length) == 0 -> true |
| +.backfill.unreported == ["ada-letterpress"] -> true |
| +(.backfill.reports | keys) == ["kathleen-juggling"] -> true |
| +(.writes | length) == 1 -> true |
| +.writes[0].key == "control/hosts-backfill.json" -> true |
| +(.writes[0].before_etag | length) > 0 -> true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +LEO_CENSUS_SHA=39e8a86181ba120e0542fd8997cdc840a60a7539fdce146b4ac577d702d3a747 reports={"kathleen-juggling":"39e8a86181ba120e0542fd8997cdc840a60a7539fdce146b4ac577d702d3a747"} |
| +true |
| +REV=17 |
| +{"backfill":{"id":"cohort1-20261021","phase":"done","directory_revision":17,"hosts":[],"reports":{"kathleen-juggling":"39e8a86181ba120e0542fd8997cdc840a60a7539fdce146b4ac577d702d3a747"},"unreported":["ada-letterpress"]},"writes":[{"key":"control/hosts-backfill.json","before_etag":"\"4e0ec377db90a4b1b25e03155474365a\""}]} |
| + 2026/10/21 09:29:38 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| +2026/10/21 09:29:38 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| +2026/10/21 09:29:38 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| +2026/10/21 09:29:39 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| + |
| +== console start on sophie 09:29:43.340Z |
| +Success active |
| +healthz 200 |
| +Oct 21 09:29:22 sophie systemd[1]: console.service: Deactivated successfully. |
| +Oct 21 09:29:22 sophie systemd[1]: Stopped console.service - CARLOS platform console. |
| +Oct 21 09:29:22 sophie systemd[1]: console.service: Consumed 784ms CPU time, 133M memory peak. |
| +Oct 21 09:29:44 sophie systemd[1]: Started console.service - CARLOS platform console. |
| +Oct 21 09:29:44 sophie carlos[494]: console: no console email (set CARLOS_CONSOLE_MAIL_FROM or CARLOS_MAIL_PLATFORM_SUFFIX, and CARLOS_MAIL_REGION); invites go by Keymail or by hand |
| +Oct 21 09:29:44 sophie carlos[494]: console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically |
| +Oct 21 09:29:44 sophie carlos[494]: console: http://127.0.0.1:8090 listening on 127.0.0.1:8090 |
| +Oct 21 09:29:44 sophie carlos[494]: console: alert watch: keymail kathleen-juggling/disk to operator@keymail.dev: keymail: lookup operator@keymail.dev: keymail: GET /api/federation/lookup?addr=operator%40keymail.dev&from=console%40127.0.0.1%3A8090: not_found |
| + |
| +8.2b END 09:29:49.377Z |
| +######## 8.4 09:29:49.576Z |
| +== 8.4 check 09:29:49 |
| +LoadState=masked |
| +ActiveState=inactive |
| +{ |
| + "dry_run": true, |
| + "reload": true, |
| + "source": "/etc/carlos/host.env", |
| + "start": false, |
| + "target": "/etc/systemd/system/carlos-instance-control.service" |
| +} |
| +== 8.4 restore 09:29:49 |
| +Id=carlos-adopt.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-stage.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-config-sync.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-restart.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-system-update.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-system-recover.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-adopt.timer |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-adopt.path |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-stage.path |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-restart.path |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-system-update.path |
| +LoadState=loaded |
| +ActiveState=inactive |
| +== 8.4 instance dirs 09:29:50 |
| +/data/.instances: |
| +total 12 |
| +drwx------ 3 carlos carlos 4096 Oct 20 09:01 . |
| +drwxr-x--- 17 carlos carlos 4096 Oct 21 09:29 .. |
| +drwx------ 2 carlos carlos 4096 Oct 21 09:29 _probe |
| + |
| +/data/instances: |
| +total 12 |
| +drwx------ 3 carlos carlos 4096 Oct 20 09:01 . |
| +drwxr-x--- 17 carlos carlos 4096 Oct 21 09:29 .. |
| +drwx------ 2 carlos carlos 4096 Oct 21 09:29 _probe |
| +LoadState=masked |
| +ActiveState=inactive |
| +8.4 DONE 09:29:50 |
| +[run-leo] --env exit=0 |
| +######## 9 09:29:50.179Z |
| +== 9 09:29:50 |
| +# /etc/systemd/system/carlos-edge.service |
| +# The single-box role: `carlos agent` = edge (TLS terminator + host router) + |
| +# hibernation activator + hourly release adoption in one process. Ported from |
| +# Eleven's deploy/systemd/lchat-router.service, renamed, same hardening. |
| +# Hibernating instances run as THIS unit's children (the activator); systemd- |
| +# managed instances get their own units. |
| +[Unit] |
| +Description=carlos edge (TLS terminator, host router, activator, release adoption) |
| +# The three nosymfollow mounts of the isolated-exec design (§3.2) are hard |
| +# requirements: an edge that starts without them would start unprotected, |
| +# so it does not start at all. |
| +Requires=data-instances.mount run-carlos-instances.mount run-carlos-logs.mount |
| +After=network-online.target data-instances.mount run-carlos-instances.mount run-carlos-logs.mount |
| +Wants=network-online.target |
| + |
| +[Service] |
| +# Optional host-wide config (0600, root-owned): CARLOS_HIBERNATE_*, |
| +# CARLOS_DEPLOYMENT_BUCKET/_DIR, CARLOS_RELEASE_PUBKEY, CARLOS_RESERVED_SLUGS... |
| +EnvironmentFile=-/etc/carlos/host.env |
| +ExecStart=/opt/carlos/carlos agent |
| +# `carlos add` writes are picked up by the registry fingerprint watcher within |
| +# seconds; SIGHUP is the operator's explicit "reload now". |
| +ExecReload=/bin/kill -HUP $MAINPID |
| +Restart=always |
| +RestartSec=1 |
| + |
| +# --- hardening (ported from lchat-router.service; see Eleven's |
| +# docs/instance-router.md § Hardening) --- |
| +User=carlos |
| +Group=carlos |
| +# The edge is the ONLY unit that binds privileged ports (:80 + :443); this cap |
| +# lets it do so as a non-root user. Instances bind unix sockets only. |
| +AmbientCapabilities=CAP_NET_BIND_SERVICE |
| +CapabilityBoundingSet=CAP_NET_BIND_SERVICE |
| +NoNewPrivileges=yes |
| +ProtectSystem=strict |
| +ProtectHome=yes |
| +ReadWritePaths=/data /run/carlos |
| +PrivateTmp=yes |
| +PrivateDevices=yes |
| +ProtectClock=yes |
| +ProtectHostname=yes |
| +ProtectKernelTunables=yes |
| +ProtectKernelModules=yes |
| +ProtectKernelLogs=yes |
| +# ProtectControlGroups is deliberately ABSENT: it would mount /sys/fs/cgroup |
| +# read-only, and Delegate= (below) needs this unit's own subtree writable. |
| +# The hardening that line bought is retained by ownership instead — plain |
| +# DAC keeps everything OUTSIDE the chowned subtree read-only to this |
| +# unprivileged user. |
| +ProtectProc=invisible |
| +RestrictAddressFamilies=AF_INET AF_INET6 AF_UNIX |
| +RestrictNamespaces=yes |
| +RestrictRealtime=yes |
| +# No RestrictSUIDSGID=: systemd cannot read the mode inside openat2's |
| +# open_how, so it refuses openat2 outright (ENOSYS), and the agent's every |
| +# open under an instance directory, and every rename of the layout pass, |
| +# is an openat2 (isolated-exec design R15; the templates lost the line |
| +# first and this unit was found still carrying it, #126). R15's reasoning |
| +# for the templates carries here, and the one capability this unit holds |
| +# does not change it: a set-id file is a threat through CAP_CHOWN, |
| +# CAP_FSETID or CAP_SETUID, none of which is in the bounding set, so |
| +# anything the agent could mark set-id is owned by carlos and gains carlos |
| +# only to a process that is not already carlos and is not under |
| +# no_new_privs. The agent and its flat children run under |
| +# NoNewPrivileges=; the nested templates hold no capabilities and see only |
| +# their own directories; /run is nosuid, and the instance trees under |
| +# /data are mounted nosuid. The agent passes no set-id bit anywhere |
| +# (instancefs strips modes to their permission bits), so what is left is a |
| +# compromised agent handing its own uid to a lower-privileged unit, which |
| +# is no gain for an attacker that already has it. The agent checks openat2 |
| +# in its own unit at start (instancefs.SelfCheck) and refuses nested wakes |
| +# and the layout pass while the call is blocked, so this line coming back |
| +# is loud, not a half-migrated host. |
| +LockPersonality=yes |
| +# Pure Go — the binary never maps writable+executable memory. |
| +MemoryDenyWriteExecute=yes |
| +SystemCallFilter=@system-service |
| +SystemCallErrorNumber=EPERM |
| +SystemCallArchitectures=native |
| +# The outer wall (memory-pressure spec 2026-08-28 §2.2) used to be two |
| +# MemoryHigh/MemoryMax lines here, bounding the agent plus its exec |
| +# children. Instances are sibling units now (isolated-exec design §4.3), so |
| +# the wall is carlos.slice's, which holds this unit and every instance and |
| +# bounds exactly what it bounded before. The oom_score_adj story is |
| +# unchanged: tenants carry OOMScoreAdjust=500 in their template. |
| +Slice=carlos.slice |
| +# systemd's default OOMPolicy=stop STOPS the whole service when the kernel |
| +# OOM-kills ANY process in the unit's cgroup tree (memory.events is |
| +# hierarchical, delegation or not). Restart=always would bring the edge |
| +# back a second later and cycle every awake instance on the box. With |
| +# continue, one tenant's kill is one tenant's kill; the activator recycles |
| +# it on its next request. |
| +OOMPolicy=continue |
| +TasksMax=1024 |
| +# Exec-backed instances run as this unit's children. Delegation hands the |
| +# unit its own cgroup subtree — chowned to User=carlos, unmanaged by systemd |
| +# below this point — so the agent can give each child its own cgroup for |
| +# per-instance accounting (docs/superpowers/specs/ |
| +# 2026-08-07-exec-child-accounting-design.md). The subtree still dies with |
| +# the service: restart semantics are unchanged. |
| +Delegate=cpu memory io pids |
| + |
| +[Install] |
| +WantedBy=multi-user.target |
| + |
| +# /etc/systemd/system/carlos-edge.service.d/90-host-floor.conf |
| +[Unit] |
| +Requires=carlos-system-recover.service |
| +After=carlos-system-recover.service |
| +[Service] |
| +ExecStart= |
| +ExecStart=/opt/carlos/system/guard/carlos system guard-exec edge |
| + |
| +# /run/systemd/system/service.d/zzz-lxc-service.conf |
| +[Service] |
| +ProcSubset=all |
| +ProtectProc=default |
| +ProtectControlGroups=no |
| +ProtectKernelTunables=no |
| +NoNewPrivileges=no |
| +LoadCredential= |
| +PrivateNetwork=no |
| +ImportCredential= |
| +ProtectHome=no |
| +ProtectSystem=no |
| +PrivateDevices=no |
| +PrivateTmp=no |
| +ProtectKernelLogs=no |
| +ProtectKernelModules=no |
| +ReadWritePaths= |
| +ReadOnlyPaths= |
| +ExecStart={ path=/opt/carlos/system/guard/carlos ; argv[]=/opt/carlos/system/guard/carlos system guard-exec edge ; ignore_errors=no ; start_time=[n/a] ; stop_time=[n/a] ; pid=0 ; code=(null) ; status=0/0 } |
| +Requires=run-carlos-logs.mount run-carlos-instances.mount carlos-system-recover.service sysinit.target data-instances.mount carlos.slice |
| +After=data-instances.mount run-carlos-logs.mount carlos-system-recover.service harness-dmi-instance.service network-online.target carlos.slice sysinit.target systemd-journald.socket basic.target run-carlos-instances.mount |
| +Created symlink '/etc/systemd/system/multi-user.target.wants/carlos-edge.service' → '/etc/systemd/system/carlos-edge.service'. |
| +active |
| +Id=carlos-adopt.timer |
| +LoadState=loaded |
| +ActiveState=active |
| +UnitFileState=enabled |
| + |
| +Id=carlos-adopt.path |
| +LoadState=loaded |
| +ActiveState=active |
| +UnitFileState=enabled |
| + |
| +Id=carlos-stage.path |
| +LoadState=loaded |
| +ActiveState=active |
| +UnitFileState=enabled |
| + |
| +Id=carlos-restart.path |
| +LoadState=loaded |
| +ActiveState=active |
| +UnitFileState=enabled |
| + |
| +Id=carlos-system-update.path |
| +LoadState=loaded |
| +ActiveState=active |
| +UnitFileState=enabled |
| + |
| +Id=carlos-adopt.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| +UnitFileState=static |
| + |
| +Id=carlos-stage.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| +UnitFileState=static |
| + |
| +Id=carlos-config-sync.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| +UnitFileState=static |
| + |
| +Id=carlos-restart.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| +UnitFileState=static |
| + |
| +Id=carlos-system-update.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| +UnitFileState=static |
| + |
| +Id=carlos-system-recover.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| +UnitFileState=enabled |
| + |
| +Id=carlos-edge.service |
| +LoadState=loaded |
| +ActiveState=active |
| +UnitFileState=enabled |
| +== 9 checks 09:29:52 |
| +1 |
| +0 |
| +MainPID=2533 |
| +ExecMainStartTimestamp=Wed 2026-10-21 09:29:52 UTC |
| +/opt/carlos/carlos |
| +9 DONE 09:30:12 |
| +[run-leo] --env exit=0 |
| +######## G9 checks 09:30:12.949Z |
| +{"generated_at":"2026-10-21T09:30:53.437311206Z","release":"v0.28.19","binary":"38ef31cccd4428da","host_claim_enabled":true,"floor_guard_ready":true} |
| +canary v0.28.5 promoted 2026-10-20T01:22:57Z spread 5m0s file |
| +stable v0.28.19 promoted 2026-10-21T09:21:19Z spread 5m0s file |
| + |
| +ada-letterpress linux-arm64 canary v0.28.5 current |
| +kathleen-juggling linux-arm64 stable v0.28.19 current |
| +noor-marquetry linux-arm64 stable v0.28.19 current |
| +Oct 21 09:21:12 leo carlos[287]: 2026/10/21 09:21:12 edgesfile: 3 edges file(s) under control/edges/ but no fresh box snapshot matched any of them — the deployment route set is EMPTY this pass, so hostname claims are unchecked against other boxes' routes (are edges and status in different buckets? see CARLOS_STATUS_BUCKET/CARLOS_STATUS_PREFIX) |
| +Oct 21 09:21:43 leo carlos[626]: 2026/10/21 09:21:43 edge: registry changed — reloaded (0 route(s)) |
| +Oct 21 09:29:53 leo carlos[2533]: 2026/10/21 09:29:53 agent: REFUSING CARLOS_SWAP=overlap (host-claims-on): host claims are on, and claims-backed launches cannot yet keep a swap's recovery choice, execution evidence, generations file or good build, so this box stays on today's stop-then-wake paths |
| +Oct 21 09:29:53 leo carlos[2533]: 2026/10/21 09:29:53 agent: regional claims: hostbox: unresolved lifecycle contract |
| +Oct 21 09:29:55 leo carlos[2533]: 2026/10/21 09:29:55 edge: registry changed — reloaded (0 route(s)) |
| +Oct 21 09:30:53 leo carlos[2533]: 2026/10/21 09:30:53 agent: regional claims: hostbox: unresolved lifecycle contract |
| +WINDOW END 09:30:57.817Z |
diff --git a/harness/evidence/run11d/b4-g10.log b/harness/evidence/run11d/b4-g10.log| new file mode 100644 |
| index 000000000..e69de29bb |
diff --git a/harness/evidence/run11d/roll.log b/harness/evidence/run11d/roll.log| new file mode 100644 |
| index 000000000..9171f667d |
| --- /dev/null |
| +++ b/harness/evidence/run11d/roll.log |
| @@ -0,0 +1,217 @@ |
| +== restore post-b5-run8b 16:24:08 |
| +sophie-console volume restored to post-b5-run8b |
| +leo: running failed=[] snapshots=post-b5-run8b,post-8.1-run8,g10-stuck-run8,post-window,g7-fail-r11,post-8.2b,g10-fail-r11b |
| +sophie: running failed=[] snapshots=base,boot,pre62,s7,pre-window,pre-window-seeded,post-b5,post-b5-465c3a08,post-b5-465c3a08-c8,post-b5-clean,post-b5-run8,post-b5-run8b,post-8.1-run8,g10-stuck-run8,item6-plain-update-fail,post-window,pre-0285,post-0285,post-candidate,post-move-r10,g7-fail-r11,post-8.2b,g10-fail-r11b |
| +sophie-console volume snapshots: s7,pre-window,pre-window-seeded,post-b5,post-b5-465c3a08,post-b5-465c3a08-c8,post-b5-clean,post-b5-run8,post-b5-run8b,post-8.1-run8,g10-stuck-run8,item6-plain-update-fail,post-window,pre-0285,post-0285,post-candidate,post-move-r10,g7-fail-r11,post-8.2b,g10-fail-r11b |
| +######## task 9 pre-roll check 16:24:32 |
| +== block 1 on leo 16:24:32.276Z |
| +launches 0 |
| +stop_inventory 0 |
| +journal_inventory_versions 0 |
| +journal_requests 0 |
| +authority/fences 0 |
| +authority/serving-parks 0 |
| +retire/serving 0 |
| +retire/cold 0 |
| +retire/retired 0 |
| +retire 0 |
| +unit-bindings 0 |
| +unit-materializations 0 |
| +restarts 0 |
| +migration-items 0 |
| +leo: all empty |
| +(context: ls: cannot access '/var/lib/carlos-claims': No such file or directory; ls: cannot access '/var/lib/carlos-release/private/restarts': No such file or directory; carlos carlos v0.28.12) |
| +[block 1 exit=0] |
| +== block 2 bucket 16:24:32.400Z |
| +host-claim-files 0 # information only; the lines below decide |
| +evidence-objects-for-leo 0 |
| +serving-evidence-objects-for-leo 0 |
| +staged |
| + |
| +staged |
| + |
| +roster-holds 0 |
| +roster-activations 0 |
| +bucket and roster: all empty |
| +(context: roster rev 15; control/hosts-backfill.json absent) |
| +[block 2 exit=0] |
| +######## roll 16:24:43 |
| +== signing session (C2 order) 16:24:43.965Z |
| +== release-window v0.28.20 (16:24:43.968Z) |
| +== release v0.28.20 |
| +be3d51718a086ce89b5a28044f944536c69ca5d129b6ab87a1add3a26299a1f2 carlos-linux-arm64 |
| +c35eb1e5e2a6a51fd0bf9b0eca9b0558c83b017bc6f8cd8538357674c03e2993 carlos_0.28.20_amd64.deb |
| +102c26bb9d6dc7e7bc5fc192c75a2bc17079050551ce3b18d8c8c7a3cfb1d1ec carlos_0.28.20_arm64.deb |
| +8561d68fefc80d0574e2d2a20a6155808efef9c5a0bb597ef61741aca9bbfd9b SHA256SUMS.txt |
| +46ad1973ec1ef6bdee2d428b23dde1073d7e05cdec3e93ba1090fbce7ecc573e SHA256SUMS.txt.sig |
| +5eca0d41ff06c7aaacd3456fdebef3d2f08043ce1835410252c0bb650fd2c2ec console-linux-arm64 |
| +verify sums: Signature Verified Successfully |
| +operator CLI: carlos v0.28.20 |
| +harness info: harness build: yes endpoint: http://203.0.113.10:9000 sums key: mAnSlX23... sha256:85f6f13cb78c |
| +== 1a/1e |
| +CHANNEL VERSION PROMOTED TAG DIGESTS |
| +canary/console e2c006d2 2026-10-20T12:16:52Z yes |
| +pointer digests: on for bab since 2026-10-20T01:12:47Z |
| +every channel's pointer carries digests: CARLOS_REQUIRE_POINTER_DIGEST can be turned on |
| +== 2 |
| +5eca0d41ff06c7aaacd3456fdebef3d2f08043ce1835410252c0bb650fd2c2ec /home/operator/release-v0.28.20/console-linux-arm64 |
| +0 |
| +== 4 |
| +shipped console f0faf8cd (1 artifacts) |
| +promoted console f0faf8cd -> canary/console |
| +CHANNEL VERSION PROMOTED TAG DIGESTS |
| +canary/console f0faf8cd 2026-10-21T16:24:48Z yes |
| +== session open (16:24:48.140Z) |
| +run-id cohort1-20261021T162448Z |
| +2026-10-21 16:24:49 267 SHA256SUMS.txt |
| +2026-10-21 16:24:50 89 SHA256SUMS.txt.sig |
| +2026-10-21 16:24:51 49873058 carlos-linux-arm64 |
| +2026-10-21 16:24:55 203 console.json |
| +2026-10-21 16:24:52 37 floor.json |
| +2026-10-21 16:24:53 244 leo.json |
| +2026-10-21 16:24:52 191 regions.json |
| +2026-10-21 16:24:48 45 release.pub |
| +2026-10-21 16:24:55 1795 signer-helpers.sh |
| +2026-10-21 16:24:54 240 sophie.json |
| +Success /usr/local/bin/carlos: OK |
| +carlos v0.28.20 |
| +jq-1.7 |
| +/usr/bin/jq |
| +SHA256SUMS.txt: OK |
| +SHA256SUMS.txt.sig: OK |
| +helpers.sh: OK |
| +release.pub: OK |
| +swap devices: 0 |
| +/run: tmpfs |
| +session-start 2026-10-21T16:25:07Z |
| +root 600 1 45 |
| + 2026/10/21 16:24:59 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| + |
| +== publish-identity v0.28.20, console f0faf8cd (16:25:10.368Z) |
| +Success "writes": [ |
| + "key": "control/system/router/releases/v0.28.20.json", |
| + "before_etag": "", |
| + "key": "bootstrap/console/v0.28.20/carlos-linux-arm64", |
| + "key": "bootstrap/router/v0.28.20/carlos-linux-arm64", |
| + "key": "bootstrap/console/v0.28.20/carlos-linux-arm64", |
| + "key": "bootstrap/router/v0.28.20/carlos-linux-arm64", |
| +publish-identity writes: [{"key":"control/system/router/releases/v0.28.20.json","before_etag":"","sha256":"29c05d6e3c0b67e8c2cf159c49460bb6c5cd1811f57889a7999e07baf69bd09b","payload":{"schema":1,"component":"router","channel":"stable","current":{"console_artifacts":{"linux-arm64":{"key":"bootstrap/console/v0.28.20/carlos-linux-arm64","sha256":"5eca0d41ff06c7aaacd3456fdebef3d2f08043ce1835410252c0bb650fd2c2ec"}},"release_tag":"v0.28.20","moves_protocol":1,"version":"v0.28.20","artifacts":{"linux-arm64":{"key":"bootstrap/router/v0.28.20/carlos-linux-arm64","sha256":"be3d51718a086ce89b5a28044f944536c69ca5d129b6ab87a1add3a26299a1f2"}},"source":"release:v0.28.20","released_at":"0001-01-01T00:00:00Z"},"spread":"0s","promoted_at":"2026-10-21T16:25:11Z"}}] |
| +{ |
| + "identity_key": "control/system/router/releases/v0.28.20.json", |
| + "release": { |
| + "console_artifacts": { |
| + "linux-arm64": { |
| + "key": "bootstrap/console/v0.28.20/carlos-linux-arm64", |
| + "sha256": "5eca0d41ff06c7aaacd3456fdebef3d2f08043ce1835410252c0bb650fd2c2ec" |
| + } |
| + }, |
| + "release_tag": "v0.28.20", |
| + "moves_protocol": 1, |
| + "version": "v0.28.20", |
| + "artifacts": { |
| + "linux-arm64": { |
| + "key": "bootstrap/router/v0.28.20/carlos-linux-arm64", |
| + "sha256": "be3d51718a086ce89b5a28044f944536c69ca5d129b6ab87a1add3a26299a1f2" |
| + } |
| + }, |
| + "source": "release:v0.28.20", |
| + "released_at": "0001-01-01T00:00:00Z" |
| + } |
| +} |
| +29c05d6e3c0b67e8 |
| +REV=15 |
| + |
| +identity file = published object |
| +identity router be3d51718a086ce89b5a28044f944536c69ca5d129b6ab87a1add3a26299a1f2 console 5eca0d41ff06c7aaacd3456fdebef3d2f08043ce1835410252c0bb650fd2c2ec |
| +== done (16:25:18.855Z) |
| +REV after identity: {"rev":15,"activations":[],"holds":[]} |
| +box reports fresh at 16:25:33 |
| +roster before: {"rev":15,"activations":[],"holds":[]} |
| +canary v0.28.5 promoted 2026-10-20T01:22:57Z spread 5m0s file |
| +stable v0.28.12 promoted 2026-10-20T12:22:46Z spread 5m0s file |
| + |
| +ada-letterpress linux-arm64 canary v0.28.5 current |
| +kathleen-juggling linux-arm64 stable v0.28.12 current |
| +noor-marquetry linux-arm64 stable v0.28.12 current |
| +-- leo before |
| + carlos carlos v0.28.12 / prev carlos v0.28.8; path active |
| + identities: v0.28.12.json v0.28.5.json v0.28.7.json v0.28.8.json |
| + edge pid 286 exe sha 28923e4117924b4b NRestarts=0 ExecMainStartTimestamp=Wed 2026-10-21 16:24:28 UTC ActiveState=active |
| +-- dennis before |
| + carlos carlos v0.28.12 / prev carlos v0.28.8; path active |
| + |
| + edge pid 255 exe sha 28923e4117924b4b NRestarts=0 ExecMainStartTimestamp=Wed 2026-10-21 16:24:27 UTC ActiveState=active |
| +== promote stable v0.28.20 (16:25:34.423Z), plain system update, no step on any box |
| +promote v0.28.20 to router/stable — 2 box(es) will roll over 5m: |
| + kathleen-juggling (linux-arm64, running v0.28.12) |
| + noor-marquetry (linux-arm64, running v0.28.12) |
| +warning: v0.28.20 has not been on canary; promoting straight to stable |
| + using uploaded v0.28.20 for linux-arm64 |
| + mirrored bootstrap/router/v0.28.20/carlos-linux-arm64 |
| + pointed router/stable at v0.28.20 (spread 5m0s) |
| + serial bumped: boxes on stable start their spread |
| +promoted boxes on stable roll themselves; watch with: carlos system status --channel stable |
| +rc=0 roster: {"rev":16,"activations":["0f83efc88914ccb0b0ba36e21fb02b13"],"holds":[]} |
| +== status 16:27:37.665Z |
| +canary v0.28.5 promoted 2026-10-20T01:22:57Z spread 5m0s file |
| +stable v0.28.20 promoted 2026-10-21T16:25:34Z spread 5m0s file |
| + |
| +ada-letterpress linux-arm64 canary v0.28.5 current |
| +kathleen-juggling linux-arm64 stable v0.28.20 current |
| +noor-marquetry linux-arm64 stable v0.28.20 current |
| +-- leo after |
| + carlos carlos v0.28.20 / prev carlos v0.28.12; path active |
| + identities: v0.28.12.json v0.28.20.json v0.28.5.json v0.28.7.json v0.28.8.json |
| + edge pid 629 exe sha be3d51718a086ce8 NRestarts=0 ExecMainStartTimestamp=Wed 2026-10-21 16:26:30 UTC ActiveState=active |
| + journal: 2026-10-21T16:26:27.794780+00:00 leo systemd[1]: Starting carlos-system-update.service - carlos platform self-update (root apply)... |
| + journal: 2026-10-21T16:26:47.445739+00:00 leo systemd[1]: Finished carlos-system-update.service - carlos platform self-update (root apply). |
| +-- dennis after |
| + carlos carlos v0.28.20 / prev carlos v0.28.12; path active |
| + |
| + edge pid 565 exe sha be3d51718a086ce8 NRestarts=0 ExecMainStartTimestamp=Wed 2026-10-21 16:26:19 UTC ActiveState=active |
| + journal: 2026-10-21T16:26:18.348264+00:00 dennis systemd[1]: Starting carlos-system-update.service - carlos platform self-update (root apply)... |
| + journal: 2026-10-21T16:26:36.401272+00:00 dennis systemd[1]: Finished carlos-system-update.service - carlos platform self-update (root apply). |
| +16:29:55 roster {"rev":17,"activations":[],"holds":[]} |
| +roster end: {"rev":17,"activations":[],"holds":[]} |
| +{"generated_at":"2026-10-21T16:33:24.321021469Z","release":"v0.28.20","binary":"be3d51718a086ce8","activation_complete":true,"host_claim_enabled":null} |
| +sophie console pid 399 exe sha b2b431f3b2fb4600; router carlos v0.28.5 |
| +######## task 9 again after the roll 16:33:33 |
| +== block 1 on leo 16:33:33.316Z |
| +launches 0 |
| +stop_inventory 0 |
| +journal_inventory_versions 0 |
| +journal_requests 0 |
| +authority/fences 0 |
| +authority/serving-parks 0 |
| +retire/serving 0 |
| +retire/cold 0 |
| +retire/retired 0 |
| +retire 0 |
| +unit-bindings 0 |
| +unit-materializations 0 |
| +restarts 0 |
| +migration-items 0 |
| +leo: all empty |
| +(context: ls: cannot access '/var/lib/carlos-claims': No such file or directory; ls: cannot access '/var/lib/carlos-release/private/restarts': No such file or directory; carlos carlos v0.28.20) |
| +[block 1 exit=0] |
| +== block 2 bucket 16:33:33.460Z |
| +host-claim-files 0 # information only; the lines below decide |
| +evidence-objects-for-leo 0 |
| +serving-evidence-objects-for-leo 0 |
| +staged |
| + |
| +staged |
| + |
| +roster-holds 0 |
| +roster-activations 0 |
| +bucket and roster: all empty |
| +(context: roster rev 17; control/hosts-backfill.json absent) |
| +[block 2 exit=0] |
| +######## ls /data/system/router on leo 16:33:44 |
| +total 16 |
| +drwxr-xr-x 3 carlos carlos 4096 2026-10-21 16:26:27.788068066 +0000 . |
| +drwxr-xr-x 3 carlos carlos 4096 2026-10-20 01:24:53.462821206 +0000 .. |
| +-rw-r--r-- 1 carlos carlos 133 2026-10-21 16:26:27.784068153 +0000 requested.json |
| +drwxr-xr-x 2 carlos carlos 4096 2026-10-21 16:26:27.784068153 +0000 v0.28.20 |
| +[hssm] i-06a1ec144aa5226fb 59e67f8e-1610-4256-b0be-d567c27c9d19 Success exit=0 |
| +exit=0 |
diff --git a/harness/evidence/run11d/window-9-resume.log b/harness/evidence/run11d/window-9-resume.log| new file mode 100644 |
| index 000000000..2d4e2eead |
| --- /dev/null |
| +++ b/harness/evidence/run11d/window-9-resume.log |
| @@ -0,0 +1,38 @@ |
| +[hssm] i-06a1ec144aa5226fb 0a522c89-8fd4-4be4-83fd-c651ae134b3f Success exit=0 |
| +== 9 resume 16:38:01 |
| +edge start rc=0 |
| +active |
| +inactive |
| + |
| +carlos-adopt.timer ActiveState=active |
| +carlos-adopt.path ActiveState=active |
| +carlos-stage.path ActiveState=active |
| +carlos-restart.path ActiveState=active |
| +carlos-system-update.path ActiveState=active |
| +carlos-edge.service ActiveState=active |
| +REFUSING count: 1 |
| +no-home-region count: 0 |
| +MainPID=2739 |
| +ExecMainStartTimestamp=Wed 2026-10-21 16:38:03 UTC |
| +/opt/carlos/carlos |
| +/dev/nvme0n1p1 59G 40G 17G 70% / |
| +2026-10-21T16:38:01+00:00 leo systemd[1]: Starting carlos-system-recover.service - carlos platform self-update recovery... |
| +2026-10-21T16:38:03+00:00 leo systemd[1]: carlos-system-recover.service: Deactivated successfully. |
| +2026-10-21T16:38:03+00:00 leo systemd[1]: Finished carlos-system-recover.service - carlos platform self-update recovery. |
| +2026-10-21T16:38:03+00:00 leo systemd[1]: carlos-system-recover.service: Consumed 905ms CPU time, 66.8M memory peak. |
| +9 DONE 16:38:23 |
| +######## G9 checks 16:38:23.419Z |
| +{"generated_at":"2026-10-21T16:39:04.044146856Z","release":"v0.28.20","binary":"be3d51718a086ce8","host_claim_enabled":true,"floor_guard_ready":true} |
| +canary v0.28.5 promoted 2026-10-20T01:22:57Z spread 5m0s file |
| +stable v0.28.20 promoted 2026-10-21T16:25:34Z spread 5m0s file |
| + |
| +ada-letterpress linux-arm64 canary v0.28.5 current |
| +kathleen-juggling linux-arm64 stable v0.28.20 current |
| +noor-marquetry linux-arm64 stable v0.28.20 current |
| +Oct 21 16:38:03 leo carlos[2739]: 2026/10/21 16:38:03 agent: alerts: NO SINK CONFIGURED (set CARLOS_ALERT_SNS_TOPIC_ARN or CARLOS_ALERT_WEBHOOK); disk, memory and cpu alerts will be published to the bucket and delivered nowhere |
| +Oct 21 16:38:03 leo carlos[2739]: 2026/10/21 16:38:03 agent: REFUSING CARLOS_SWAP=overlap (host-claims-on): host claims are on, and claims-backed launches cannot yet keep a swap's recovery choice, execution evidence, generations file or good build, so this box stays on today's stop-then-wake paths |
| +Oct 21 16:38:03 leo carlos[2739]: 2026/10/21 16:38:03 agent: regional claims: hostbox: unresolved lifecycle contract |
| +Oct 21 16:38:06 leo carlos[2739]: 2026/10/21 16:38:06 edge: registry changed — reloaded (0 route(s)) |
| +Oct 21 16:39:04 leo carlos[2739]: 2026/10/21 16:39:04 agent: regional claims: hostbox: unresolved lifecycle contract |
| +WINDOW END 16:39:08.279Z |
| +exit=0 |
diff --git a/harness/evidence/run11d/window.log b/harness/evidence/run11d/window.log| new file mode 100644 |
| index 000000000..01539fdd7 |
| --- /dev/null |
| +++ b/harness/evidence/run11d/window.log |
| @@ -0,0 +1,541 @@ |
| +######## 8.1 16:34:20.592Z |
| + |
| +Id=carlos-edge.service LoadState=loaded ActiveState=active |
| +Id=carlos-adopt.timer LoadState=loaded ActiveState=active |
| +Id=carlos-adopt.path LoadState=loaded ActiveState=active |
| +Id=carlos-stage.path LoadState=loaded ActiveState=active |
| +Id=carlos-restart.path LoadState=loaded ActiveState=active |
| +Id=carlos-system-update.path LoadState=loaded ActiveState=active |
| +Id=carlos-adopt.service LoadState=loaded ActiveState=inactive |
| +Id=carlos-stage.service LoadState=loaded ActiveState=inactive |
| +Id=carlos-config-sync.service LoadState=loaded ActiveState=inactive |
| +Id=carlos-restart.service LoadState=loaded ActiveState=inactive |
| +Id=carlos-system-update.service LoadState=loaded ActiveState=inactive |
| +Id=carlos-system-recover.service LoadState=loaded ActiveState=inactive |
| + |
| +UNIT LOAD ACTIVE SUB DESCRIPTION |
| + |
| +0 loaded units listed. |
| +To show all installed unit files use 'systemctl list-unit-files'. |
| +Removed '/etc/systemd/system/multi-user.target.wants/carlos-edge.service'. |
| +UNIT LOAD ACTIVE SUB DESCRIPTION |
| + |
| +0 loaded units listed. |
| +To show all installed unit files use 'systemctl list-unit-files'. |
| +== 8.1 second block 16:34:21 |
| +Id=carlos-adopt.timer |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-adopt.path |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-stage.path |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-restart.path |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-system-update.path |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-adopt.service |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-stage.service |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-config-sync.service |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-restart.service |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-system-update.service |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-system-recover.service |
| +LoadState=masked |
| +ActiveState=inactive |
| + |
| +Id=carlos-edge.service |
| +LoadState=masked |
| +ActiveState=inactive |
| +8.1 DONE 16:34:21 |
| +[run-leo] w81.box.sh exit=0 |
| +######## 8.1b 16:34:21.828Z |
| +== quiesce: stop console.service on sophie 16:34:22.041Z |
| +Success Result=success ActiveState=inactive SubState=dead |
| + |
| +== signer key 16:34:24.288Z |
| +Success root 600 1 45 |
| + |
| +== 8.1b 16:34:26.657Z |
| +Success { |
| + "writes": [ |
| + { |
| + "key": "control/hosts-backfill.json", |
| + "before_etag": "" |
| + } |
| + ], |
| + "backfill": { |
| + "id": "cohort1-20261021", |
| + "phase": "collecting", |
| + "directory_revision": 17, |
| + "hosts": [] |
| + } |
| +} |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +REV=17 |
| +{"id":"cohort1-20261021","phase":"collecting","directory_revision":17,"hosts":[]} |
| + + WINDOW_ID=20261021T1634Z |
| ++ BACKFILL_ID=cohort1-20261021 |
| ++ refresh |
| ++ /usr/local/bin/carlos system claims inspect --bucket harness-deployment --aws-region eu-west-1 --public-key SN3K2ONYVeE7TgHKrmNAdltYLDGRcrG/7ybG7Y9rJt0= |
| +2026/10/21 16:34:27 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| ++ jq .signed_roster inspect.json |
| +++ jq -er .roster.revision inspect.json |
| ++ REV=17 |
| ++ jq -n --arg b harness-deployment --argjson rev 17 --arg id cohort1-20261021 '{phase:"backfill-collect",bucket:$b,expected_revision:$rev,backfill:{id:$id}}' |
| ++ /usr/local/bin/carlos system claims run --plan /root/claim-trial/plan.json --signing-key /run/claim-signer/release.key --public-key SN3K2ONYVeE7TgHKrmNAdltYLDGRcrG/7ybG7Y9rJt0= --aws-region eu-west-1 --dry-run |
| +2026/10/21 16:34:27 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| ++ jq '{writes: [.writes[] | {key, before_etag}], backfill}' backfill-collect-dry.json |
| ++ /usr/local/bin/carlos system claims run --plan /root/claim-trial/plan.json --signing-key /run/claim-signer/release.key --public-key SN3K2ONYVeE7TgHKrmNAdltYLDGRcrG/7ybG7Y9rJt0= --aws-region eu-west-1 |
| +2026/10/21 16:34:27 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| ++ jq -e --arg id cohort1-20261021 '.backfill.id == $id' backfill-collect.json |
| ++ jq -e '.backfill.phase == "collecting"' backfill-collect.json |
| ++ jq -e --argjson rev 17 '.backfill.directory_revision == $rev' backfill-collect.json |
| ++ jq -e '.backfill.hosts != null' backfill-collect.json |
| ++ jq -e '(.backfill.hosts | length) == 0' backfill-collect.json |
| ++ jq -e '(.writes | length) == 1' backfill-collect.json |
| ++ jq -e '.writes[0].key == "control/hosts-backfill.json"' backfill-collect.json |
| ++ jq -e '.writes[0].before_etag == ""' backfill-collect.json |
| ++ refresh |
| ++ /usr/local/bin/carlos system claims inspect --bucket harness-deployment --aws-region eu-west-1 --public-key SN3K2ONYVeE7TgHKrmNAdltYLDGRcrG/7ybG7Y9rJt0= |
| +2026/10/21 16:34:27 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| ++ jq .signed_roster inspect.json |
| +++ jq -er .roster.revision inspect.json |
| ++ REV=17 |
| ++ echo REV=17 |
| ++ jq -c .backfill backfill-collect.json |
| + |
| +8.1b END 16:34:32.746Z |
| +######## 8.2 16:34:32.753Z |
| +== host.env edit 16:34:32 |
| +/etc/carlos/host.env 600 root:root 351 |
| +9a10,11 |
| +> CARLOS_HOST_CLAIM=1 |
| +> CARLOS_HOST_CLAIM_ORIGINS=1 |
| +== 8.2 block 16:34:32 |
| +{ |
| + "dry_run": true, |
| + "reload": true, |
| + "source": "/etc/carlos/host.env", |
| + "start": false, |
| + "target": "/etc/systemd/system/carlos-instance-control.service" |
| +} |
| +{ |
| + "dry_run": false, |
| + "reload": true, |
| + "source": "/etc/carlos/host.env", |
| + "start": false, |
| + "target": "/etc/systemd/system/carlos-instance-control.service" |
| +} |
| +# /etc/systemd/system/carlos-instance-control.service |
| +# The root instance-control service (isolated-exec design §5). Socket- |
| +# activated, so it runs only while there is work. Its whole job is |
| +# systemctl start/stop/set-property on the three instance templates' units |
| +# and their host slices, on the agent's request, plus running the readiness |
| +# probe. Every unit name it passes to systemctl is built from a validated |
| +# host by the platform's own naming; nothing from a request reaches |
| +# systemctl as a string. |
| +# |
| +# Runs as ROOT deliberately, with no new-privileges lockout and no syscall |
| +# filter, for the systemctl child (the same rationale as |
| +# carlos-stage.service). It accepts a connection only from the edge unit's |
| +# main process (SO_PEERCRED uid carlos, pid == MainPID of |
| +# carlos-edge.service): a flat tenant is a child of that pid, never the pid |
| +# itself, and a nested tenant cannot reach the socket at all. |
| +# |
| +# At start it also looks UNDER the two instance bind mounts (unshare -m in |
| +# a private namespace, umount, list; design §8.2, "Recovery for a layout |
| +# that was unmounted anyway"). Files left in the raw mountpoint directory |
| +# while the layout was unmounted would otherwise be hidden by the mount and |
| +# invisible to the layout pass's destination check; a held file is a |
| +# failing line in every probe report and keeps /ready refusing nested wakes |
| +# until an operator moves or removes it and restarts this service. Root is |
| +# what makes that inspection possible: the private namespace and the umount |
| +# need CAP_SYS_ADMIN. ProtectSystem=strict leaves /data and /run visible. |
| +[Unit] |
| +Description=carlos instance control (root: start/stop carlos-instance*@ units for the agent) |
| +Requires=carlos-instance-control.socket data-instances.mount run-carlos-instances.mount run-carlos-logs.mount |
| +After=data-instances.mount run-carlos-instances.mount run-carlos-logs.mount |
| + |
| +[Service] |
| +StateDirectory=carlos-claims |
| +StateDirectoryMode=0700 |
| +EnvironmentFile=-/etc/carlos/host.env |
| +ExecStart=/opt/carlos/carlos instance-control |
| +ProtectSystem=strict |
| +# /run/systemd/system: the per-generation runtime drop-in (zero-downtime |
| +# deploys, plan 2 D1); nothing else is written there. |
| +ReadWritePaths=/run/carlos-control /run/carlos /var/lib/carlos-claims /var/lib/carlos-release/private /run/systemd/system /data /opt/carlos /etc/systemd/system /sys/fs/cgroup |
| +ProtectHome=yes |
| +PrivateTmp=yes |
| +PrivateDevices=yes |
| +ProtectKernelTunables=yes |
| +ProtectKernelModules=yes |
| +ProtectKernelLogs=yes |
| +RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6 |
| +MemoryDenyWriteExecute=yes |
| +MemoryMax=256M |
| +Environment=GOMEMLIMIT=192MiB |
| + |
| +# /run/systemd/system/service.d/zzz-lxc-service.conf |
| +[Service] |
| +ProcSubset=all |
| +ProtectProc=default |
| +ProtectControlGroups=no |
| +ProtectKernelTunables=no |
| +NoNewPrivileges=no |
| +LoadCredential= |
| +PrivateNetwork=no |
| +ImportCredential= |
| +ProtectHome=no |
| +ProtectSystem=no |
| +PrivateDevices=no |
| +PrivateTmp=no |
| +ProtectKernelLogs=no |
| +ProtectKernelModules=no |
| +ReadWritePaths= |
| +ReadOnlyPaths= |
| +/var/lib/carlos-claims 700 root:root |
| +/opt/carlos/system 755 root:root |
| +/opt/carlos/system/guard 755 root:root |
| +/opt/carlos/system/guard/moves 755 root:root |
| +/opt/carlos/system/guard/seeds 755 root:root |
| +Created symlink '/etc/systemd/system/multi-user.target.wants/carlos-instance-control.service' → '/etc/systemd/system/carlos-instance-control.service'. |
| +active |
| +Oct 21 16:30:00 leo carlos[606]: 2026/10/21 16:30:00 instance-control: disk: data disk too full: 5.0 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 16:30:30 leo carlos[606]: 2026/10/21 16:30:30 instance-control: disk: data disk too full: 5.0 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 16:31:00 leo carlos[606]: 2026/10/21 16:31:00 instance-control: disk: data disk too full: 5.0 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 16:31:30 leo carlos[606]: 2026/10/21 16:31:30 instance-control: disk: data disk too full: 5.0 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 16:31:34 leo carlos[606]: 2026/10/21 16:31:34 instance-control: probe: imds-v6 unverified no route to the address; deny not exercised |
| +Oct 21 16:31:34 leo carlos[606]: 2026/10/21 16:31:34 instance-control: probe: private-v6 unverified no route to fd00::1, fec0::1, 64:ff9b::a00:1; deny not exercised |
| +Oct 21 16:31:34 leo carlos[606]: 2026/10/21 16:31:34 instance-control: probe: io-weight unverified weights are set, but no disk here has io.cost or BFQ to enforce them |
| +Oct 21 16:32:00 leo carlos[606]: 2026/10/21 16:32:00 instance-control: disk: data disk too full: 5.0 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 16:32:30 leo carlos[606]: 2026/10/21 16:32:30 instance-control: disk: data disk too full: 5.0 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 16:33:00 leo carlos[606]: 2026/10/21 16:33:00 instance-control: disk: data disk too full: 5.0 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 16:33:30 leo carlos[606]: 2026/10/21 16:33:30 instance-control: disk: data disk too full: 5.0 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 16:34:00 leo carlos[606]: 2026/10/21 16:34:00 instance-control: disk: data disk too full: 5.0 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 16:34:30 leo carlos[606]: 2026/10/21 16:34:30 instance-control: disk: data disk too full: 5.0 GiB free, below the 5.9 GiB floor; refusing every instance start until there is room (awake instances keep running) |
| +Oct 21 16:34:34 leo systemd[1]: Stopping carlos-instance-control.service - carlos instance control (root: start/stop carlos-instance*@ units for the agent)... |
| +Oct 21 16:34:34 leo systemd[1]: carlos-instance-control.service: Deactivated successfully. |
| +Oct 21 16:34:34 leo systemd[1]: Stopped carlos-instance-control.service - carlos instance control (root: start/stop carlos-instance*@ units for the agent). |
| +Oct 21 16:34:34 leo systemd[1]: Started carlos-instance-control.service - carlos instance control (root: start/stop carlos-instance*@ units for the agent). |
| +total 16 |
| +drwx------ 2 root root 4096 Oct 21 16:34 . |
| +drwx------ 5 root root 4096 Oct 21 16:34 .. |
| +-rw------- 1 root root 803 Oct 21 16:34 migration.json |
| +-rw------- 1 root root 0 Oct 21 16:34 migration.lock |
| +-rw------- 1 root root 299 Oct 21 16:34 report.json |
| +8.2 DONE 16:34:35 |
| +[run-leo] --env exit=0 |
| +######## 8.2b 16:34:35.034Z |
| +== 8.2 census report read 16:34:35.083Z |
| +Completed 413 Bytes/413 Bytes (118.7 KiB/s) with 1 file(s) remaining download: s3://harness-deployment/control/host-census/cohort1-20261021/kathleen-juggling.json to cohort1/tmp/cohort1/leo-census.json |
| +true |
| +"692d7a40c5c4113cc7915c8ef27d90e0" 2026-10-21T16:34:34+00:00 413 |
| +operator-side sha256 of the raw object: 3fd64991f4e200cc52671211fe5964b995ca757007e9a37ed68bc80d8c9c9295 |
| +operator-side sha256 of jq -c of it: 3fd64991f4e200cc52671211fe5964b995ca757007e9a37ed68bc80d8c9c9295 |
| +2026-10-21 16:34:34 413 kathleen-juggling.json |
| +== 8.2b 16:34:37.350Z |
| +Success { |
| + "writes": [ |
| + { |
| + "key": "control/hosts-backfill.json", |
| + "before_etag": "\"ca302d2d69220061e2001545d2e401f2\"" |
| + } |
| + ], |
| + "backfill": { |
| + "id": "cohort1-20261021", |
| + "phase": "done", |
| + "directory_revision": 17, |
| + "hosts": [], |
| + "reports": { |
| + "kathleen-juggling": "3fd64991f4e200cc52671211fe5964b995ca757007e9a37ed68bc80d8c9c9295" |
| + }, |
| + "unreported": [ |
| + "ada-letterpress" |
| + ] |
| + } |
| +} |
| +.backfill.phase == "done" -> true |
| +(.backfill.hosts | length) == 0 -> true |
| +.backfill.unreported == ["ada-letterpress"] -> true |
| +(.backfill.reports | keys) == ["kathleen-juggling"] -> true |
| +(.writes | length) == 1 -> true |
| +.writes[0].key == "control/hosts-backfill.json" -> true |
| +(.writes[0].before_etag | length) > 0 -> true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +true |
| +LEO_CENSUS_SHA=3fd64991f4e200cc52671211fe5964b995ca757007e9a37ed68bc80d8c9c9295 reports={"kathleen-juggling":"3fd64991f4e200cc52671211fe5964b995ca757007e9a37ed68bc80d8c9c9295"} |
| +true |
| +REV=17 |
| +{"backfill":{"id":"cohort1-20261021","phase":"done","directory_revision":17,"hosts":[],"reports":{"kathleen-juggling":"3fd64991f4e200cc52671211fe5964b995ca757007e9a37ed68bc80d8c9c9295"},"unreported":["ada-letterpress"]},"writes":[{"key":"control/hosts-backfill.json","before_etag":"\"ca302d2d69220061e2001545d2e401f2\""}]} |
| + 2026/10/21 16:34:38 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| +2026/10/21 16:34:38 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| +2026/10/21 16:34:38 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| +2026/10/21 16:34:39 ALERT: root AWS file, profile, endpoint and trust-store environment overrides ignored |
| + |
| +== console start on sophie 16:34:43.414Z |
| +Success active |
| +healthz 200 |
| +Oct 21 16:34:22 sophie systemd[1]: console.service: Deactivated successfully. |
| +Oct 21 16:34:22 sophie systemd[1]: Stopped console.service - CARLOS platform console. |
| +Oct 21 16:34:22 sophie systemd[1]: console.service: Consumed 798ms CPU time, 131.3M memory peak. |
| +Oct 21 16:34:44 sophie systemd[1]: Started console.service - CARLOS platform console. |
| +Oct 21 16:34:44 sophie carlos[524]: console: no console email (set CARLOS_CONSOLE_MAIL_FROM or CARLOS_MAIL_PLATFORM_SUFFIX, and CARLOS_MAIL_REGION); invites go by Keymail or by hand |
| +Oct 21 16:34:44 sophie carlos[524]: console: CARLOS_SECRETS_PUBKEY is unset, so no region outside the home can be chosen automatically |
| +Oct 21 16:34:44 sophie carlos[524]: console: http://127.0.0.1:8090 listening on 127.0.0.1:8090 |
| +Oct 21 16:34:44 sophie carlos[524]: console: alert watch: keymail kathleen-juggling/disk to operator@keymail.dev: keymail: lookup operator@keymail.dev: keymail: GET /api/federation/lookup?addr=operator%40keymail.dev&from=console%40127.0.0.1%3A8090: not_found |
| + |
| +8.2b END 16:34:49.506Z |
| +carlos-instance-control.service loaded failed failed carlos instance control (root: start/stop carlos-instance*@ units for the agent) |
| +######## 8.4 16:34:49.696Z |
| +== 8.4 check 16:34:49 |
| +LoadState=masked |
| +ActiveState=inactive |
| +{ |
| + "dry_run": true, |
| + "reload": true, |
| + "source": "/etc/carlos/host.env", |
| + "start": false, |
| + "target": "/etc/systemd/system/carlos-instance-control.service" |
| +} |
| +== 8.4 restore 16:34:49 |
| +Id=carlos-adopt.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-stage.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-config-sync.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-restart.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-system-update.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-system-recover.service |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-adopt.timer |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-adopt.path |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-stage.path |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-restart.path |
| +LoadState=loaded |
| +ActiveState=inactive |
| + |
| +Id=carlos-system-update.path |
| +LoadState=loaded |
| +ActiveState=inactive |
| +== 8.4 instance dirs 16:34:50 |
| +/data/.instances: |
| +total 12 |
| +drwx------ 3 carlos carlos 4096 Oct 20 09:01 . |
| +drwxr-x--- 17 carlos carlos 4096 Oct 21 16:34 .. |
| +drwx------ 2 carlos carlos 4096 Oct 21 16:31 _probe |
| + |
| +/data/instances: |
| +total 12 |
| +drwx------ 3 carlos carlos 4096 Oct 20 09:01 . |
| +drwxr-x--- 17 carlos carlos 4096 Oct 21 16:34 .. |
| +drwx------ 2 carlos carlos 4096 Oct 21 16:31 _probe |
| +LoadState=masked |
| +ActiveState=inactive |
| +8.4 DONE 16:34:50 |
| +[run-leo] --env exit=0 |
| +######## 9 16:34:50.304Z |
| +== 9 16:34:50 |
| +# /etc/systemd/system/carlos-edge.service |
| +# The single-box role: `carlos agent` = edge (TLS terminator + host router) + |
| +# hibernation activator + hourly release adoption in one process. Ported from |
| +# Eleven's deploy/systemd/lchat-router.service, renamed, same hardening. |
| +# Hibernating instances run as THIS unit's children (the activator); systemd- |
| +# managed instances get their own units. |
| +[Unit] |
| +Description=carlos edge (TLS terminator, host router, activator, release adoption) |
| +# The three nosymfollow mounts of the isolated-exec design (§3.2) are hard |
| +# requirements: an edge that starts without them would start unprotected, |
| +# so it does not start at all. |
| +Requires=data-instances.mount run-carlos-instances.mount run-carlos-logs.mount |
| +After=network-online.target data-instances.mount run-carlos-instances.mount run-carlos-logs.mount |
| +Wants=network-online.target |
| + |
| +[Service] |
| +# Optional host-wide config (0600, root-owned): CARLOS_HIBERNATE_*, |
| +# CARLOS_DEPLOYMENT_BUCKET/_DIR, CARLOS_RELEASE_PUBKEY, CARLOS_RESERVED_SLUGS... |
| +EnvironmentFile=-/etc/carlos/host.env |
| +ExecStart=/opt/carlos/carlos agent |
| +# `carlos add` writes are picked up by the registry fingerprint watcher within |
| +# seconds; SIGHUP is the operator's explicit "reload now". |
| +ExecReload=/bin/kill -HUP $MAINPID |
| +Restart=always |
| +RestartSec=1 |
| + |
| +# --- hardening (ported from lchat-router.service; see Eleven's |
| +# docs/instance-router.md § Hardening) --- |
| +User=carlos |
| +Group=carlos |
| +# The edge is the ONLY unit that binds privileged ports (:80 + :443); this cap |
| +# lets it do so as a non-root user. Instances bind unix sockets only. |
| +AmbientCapabilities=CAP_NET_BIND_SERVICE |
| +CapabilityBoundingSet=CAP_NET_BIND_SERVICE |
| +NoNewPrivileges=yes |
| +ProtectSystem=strict |
| +ProtectHome=yes |
| +ReadWritePaths=/data /run/carlos |
| +PrivateTmp=yes |
| +PrivateDevices=yes |
| +ProtectClock=yes |
| +ProtectHostname=yes |
| +ProtectKernelTunables=yes |
| +ProtectKernelModules=yes |
| +ProtectKernelLogs=yes |
| +# ProtectControlGroups is deliberately ABSENT: it would mount /sys/fs/cgroup |
| +# read-only, and Delegate= (below) needs this unit's own subtree writable. |
| +# The hardening that line bought is retained by ownership instead — plain |
| +# DAC keeps everything OUTSIDE the chowned subtree read-only to this |
| +# unprivileged user. |
| +ProtectProc=invisible |
| +RestrictAddressFamilies=AF_INET AF_INET6 AF_UNIX |
| +RestrictNamespaces=yes |
| +RestrictRealtime=yes |
| +# No RestrictSUIDSGID=: systemd cannot read the mode inside openat2's |
| +# open_how, so it refuses openat2 outright (ENOSYS), and the agent's every |
| +# open under an instance directory, and every rename of the layout pass, |
| +# is an openat2 (isolated-exec design R15; the templates lost the line |
| +# first and this unit was found still carrying it, #126). R15's reasoning |
| +# for the templates carries here, and the one capability this unit holds |
| +# does not change it: a set-id file is a threat through CAP_CHOWN, |
| +# CAP_FSETID or CAP_SETUID, none of which is in the bounding set, so |
| +# anything the agent could mark set-id is owned by carlos and gains carlos |
| +# only to a process that is not already carlos and is not under |
| +# no_new_privs. The agent and its flat children run under |
| +# NoNewPrivileges=; the nested templates hold no capabilities and see only |
| +# their own directories; /run is nosuid, and the instance trees under |
| +# /data are mounted nosuid. The agent passes no set-id bit anywhere |
| +# (instancefs strips modes to their permission bits), so what is left is a |
| +# compromised agent handing its own uid to a lower-privileged unit, which |
| +# is no gain for an attacker that already has it. The agent checks openat2 |
| +# in its own unit at start (instancefs.SelfCheck) and refuses nested wakes |
| +# and the layout pass while the call is blocked, so this line coming back |
| +# is loud, not a half-migrated host. |
| +LockPersonality=yes |
| +# Pure Go — the binary never maps writable+executable memory. |
| +MemoryDenyWriteExecute=yes |
| +SystemCallFilter=@system-service |
| +SystemCallErrorNumber=EPERM |
| +SystemCallArchitectures=native |
| +# The outer wall (memory-pressure spec 2026-08-28 §2.2) used to be two |
| +# MemoryHigh/MemoryMax lines here, bounding the agent plus its exec |
| +# children. Instances are sibling units now (isolated-exec design §4.3), so |
| +# the wall is carlos.slice's, which holds this unit and every instance and |
| +# bounds exactly what it bounded before. The oom_score_adj story is |
| +# unchanged: tenants carry OOMScoreAdjust=500 in their template. |
| +Slice=carlos.slice |
| +# systemd's default OOMPolicy=stop STOPS the whole service when the kernel |
| +# OOM-kills ANY process in the unit's cgroup tree (memory.events is |
| +# hierarchical, delegation or not). Restart=always would bring the edge |
| +# back a second later and cycle every awake instance on the box. With |
| +# continue, one tenant's kill is one tenant's kill; the activator recycles |
| +# it on its next request. |
| +OOMPolicy=continue |
| +TasksMax=1024 |
| +# Exec-backed instances run as this unit's children. Delegation hands the |
| +# unit its own cgroup subtree — chowned to User=carlos, unmanaged by systemd |
| +# below this point — so the agent can give each child its own cgroup for |
| +# per-instance accounting (docs/superpowers/specs/ |
| +# 2026-08-07-exec-child-accounting-design.md). The subtree still dies with |
| +# the service: restart semantics are unchanged. |
| +Delegate=cpu memory io pids |
| + |
| +[Install] |
| +WantedBy=multi-user.target |
| + |
| +# /etc/systemd/system/carlos-edge.service.d/90-host-floor.conf |
| +[Unit] |
| +Requires=carlos-system-recover.service |
| +After=carlos-system-recover.service |
| +[Service] |
| +ExecStart= |
| +ExecStart=/opt/carlos/system/guard/carlos system guard-exec edge |
| + |
| +# /run/systemd/system/service.d/zzz-lxc-service.conf |
| +[Service] |
| +ProcSubset=all |
| +ProtectProc=default |
| +ProtectControlGroups=no |
| +ProtectKernelTunables=no |
| +NoNewPrivileges=no |
| +LoadCredential= |
| +PrivateNetwork=no |
| +ImportCredential= |
| +ProtectHome=no |
| +ProtectSystem=no |
| +PrivateDevices=no |
| +PrivateTmp=no |
| +ProtectKernelLogs=no |
| +ProtectKernelModules=no |
| +ReadWritePaths= |
| +ReadOnlyPaths= |
| +ExecStart={ path=/opt/carlos/system/guard/carlos ; argv[]=/opt/carlos/system/guard/carlos system guard-exec edge ; ignore_errors=no ; start_time=[n/a] ; stop_time=[n/a] ; pid=0 ; code=(null) ; status=0/0 } |
| +Requires=data-instances.mount carlos.slice sysinit.target carlos-system-recover.service run-carlos-instances.mount run-carlos-logs.mount |
| +After=network-online.target run-carlos-logs.mount systemd-journald.socket data-instances.mount sysinit.target run-carlos-instances.mount basic.target carlos.slice harness-dmi-instance.service carlos-system-recover.service |
| +Created symlink '/etc/systemd/system/multi-user.target.wants/carlos-edge.service' → '/etc/systemd/system/carlos-edge.service'. |
| +A dependency job for carlos-edge.service failed. See 'journalctl -xe' for details. |
| +[run-leo] --env exit=1 |
| +STOP: 9 did not reach '9 DONE' |
| +failed to run commands: exit status 1[hssm] i-06a1ec144aa5226fb 7c1a4325-587b-414a-9523-680fc8679f2c Failed exit=1 |
| +exit=1 |