Pin home/connect 01166fc and estilo's Sheets corrections
connect 01166fc chains the in-app Sign out to {Issuer}/signout (a 307,
so the POST survives) and skips the form on /signin for a live session.
TestHomeLocalPluginRoundTripAndSignout now asserts the chain.
estilo is pinned at feat/r2-sheets-corrections (50567b1) while both are
in review; estilo merges first, then this re-pins to estilo main.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
3 files changed,
+13
−8
go.mod+2 −2go.sum+4 −4internal/sheets/home_navigation_test.go+7 −2
CI passed — run details
CI log
amadan: .amadan/timeout: this job's budget is 15m0s (this runner allows up to 30m0s) === vet === CGO_ENABLED=0 go vet ./... go: downloading amadan.net/oficina/estilo.git v0.0.0-20260923231144-50567b151510 go: downloading amadan.net/oficina/home/connect v0.0.0-20260923190447-01166fcfc0a9 === fmt === === build === CGO_ENABLED=0 go build ./... === migrations === rastrillo migration check rastrillo migration check: models and migrations agree === go-test === CGO_ENABLED=0 go test -count=1 ./... ? amadan.net/oficina/sheets/cmd/sheets [no test files] ok amadan.net/oficina/sheets/internal/guardstest 0.283s ok amadan.net/oficina/sheets/internal/sheets 10.724s ok amadan.net/oficina/sheets/internal/sheets/calc 0.054s ok amadan.net/oficina/sheets/internal/sheets/format 0.006s ok amadan.net/oficina/sheets/internal/sheets/live 0.070s ok amadan.net/oficina/sheets/internal/sheets/seal 0.016s ok amadan.net/oficina/sheets/internal/sheets/sealtest 0.009s ok amadan.net/oficina/sheets/internal/sheets/store 3.239s ok amadan.net/oficina/sheets/internal/sheets/xlsx 0.391s ? amadan.net/oficina/sheets/tools/gencorpus [no test files] === race === go test -race -count=1 ./internal/sheets/store/... ./internal/sheets/live/... ok amadan.net/oficina/sheets/internal/sheets/store 46.195s ok amadan.net/oficina/sheets/internal/sheets/live 1.059s
diff --git a/go.mod b/go.mod| index ff8afa0..574ffb5 100644 |
| --- a/go.mod |
| +++ b/go.mod |
| @@ -3,8 +3,8 @@ module amadan.net/oficina/sheets |
| go 1.25.0 |
| require ( |
| - amadan.net/oficina/estilo.git v0.0.0-20260909234655-dec3908b237c |
| - amadan.net/oficina/home/connect v0.0.0-20260910000424-5b8d8410775f |
| + amadan.net/oficina/estilo.git v0.0.0-20260923231144-50567b151510 |
| + amadan.net/oficina/home/connect v0.0.0-20260923190447-01166fcfc0a9 |
| amadan.net/oficina/home/handoff v0.0.0-20260908102137-481d2d57f489 |
| amadan.net/rastrillo/rastrillo v0.26.1-0.20260908075707-29e4491631bd |
| github.com/carlosframework/rastrillo v0.23.0 |
diff --git a/go.sum b/go.sum| index 45e2c16..7b2b05f 100644 |
| --- a/go.sum |
| +++ b/go.sum |
| @@ -1,7 +1,7 @@ |
| -amadan.net/oficina/estilo.git v0.0.0-20260909234655-dec3908b237c h1:LgE7WLm6zMG/qZScoAHb4X2gguzorctB4XGjPYavXts= |
| -amadan.net/oficina/estilo.git v0.0.0-20260909234655-dec3908b237c/go.mod h1:0R45/vCUAT+kpS7S6K/ZxBdE8f7YxFN4HT3HyDJ3nPY= |
| -amadan.net/oficina/home/connect v0.0.0-20260910000424-5b8d8410775f h1:lkw3tjzHfZxe74pNfo+tGDz4mkZLg+D6R+FTkmsym6M= |
| -amadan.net/oficina/home/connect v0.0.0-20260910000424-5b8d8410775f/go.mod h1:YroavXe43Wietec+po8mtSk4a9Bir2h31Q3iAf4MWxI= |
| +amadan.net/oficina/estilo.git v0.0.0-20260923231144-50567b151510 h1:fLpBbThwaU/dwP0A2yDrM1iQBt/82qLr49F2TVI12gE= |
| +amadan.net/oficina/estilo.git v0.0.0-20260923231144-50567b151510/go.mod h1:4u0jNBtIdMLOsJyrScfqoEuYDJF7BBM3qM9YWbzt6aw= |
| +amadan.net/oficina/home/connect v0.0.0-20260923190447-01166fcfc0a9 h1:K/PaOVdQqRMwifPD6ipiwLeGR5nbFSxm9FxjrDJlZcg= |
| +amadan.net/oficina/home/connect v0.0.0-20260923190447-01166fcfc0a9/go.mod h1:YroavXe43Wietec+po8mtSk4a9Bir2h31Q3iAf4MWxI= |
| amadan.net/oficina/home/handoff v0.0.0-20260908102137-481d2d57f489 h1:RPKtyry/71i06o8L+gjAaUyexbmG56kO1YPs601URAM= |
| amadan.net/oficina/home/handoff v0.0.0-20260908102137-481d2d57f489/go.mod h1:YISpzFJ+iMgrM0rUL032OSzsAQbP4/nozvXLCCOcn1k= |
| amadan.net/rastrillo/native/server v0.0.0-20260923173546-2a5d07b2c8d3 h1:5EFx7BLJj/+G/rt8bTmeyMWVfF5s5Sns7ajTvX4w/I8= |
diff --git a/internal/sheets/home_navigation_test.go b/internal/sheets/home_navigation_test.go| index 6998448..9f36663 100644 |
| --- a/internal/sheets/home_navigation_test.go |
| +++ b/internal/sheets/home_navigation_test.go |
| @@ -44,9 +44,14 @@ func TestHomeLocalPluginRoundTripAndSignout(t *testing.T) { |
| t.Fatal("sign-in seeded content", count) |
| } |
| f.link(t, "round-trip") |
| + // With Home configured, the app's Sign out ends the app session and |
| + // then chains to the credential origin (home/connect 01166fc, spec |
| + // §9.5): a 307, so the POST survives the hop, to {Issuer}/signout. |
| + // That hop is what stops the signed-out page's "Sign in" passing |
| + // silently back through a live id.* session. |
| out := f.request(t, "POST", "/signout", nil, false) |
| - if out.Code != 303 || out.Header().Get("Location") != "/signed-out" { |
| - t.Fatal("signout", out.Code) |
| + if out.Code != http.StatusTemporaryRedirect || out.Header().Get("Location") != homeTestIssuer+"/signout" { |
| + t.Fatal("signout", out.Code, out.Header().Get("Location")) |
| } |
| if page := f.request(t, "GET", "/signed-out", nil, false); page.Code != 200 || page.Header().Get("Location") != "" { |
| t.Fatal("signout restarted Home") |