rastrillo / fiesta Public

The design system brought up to Rastrillo's: sidebar, Desktop and Mobile, the demo app, and twelve languages

/design-system/ now has everything Rastrillo's gallery has, ported from its code onto Fiesta's HTML examples: the sidebar shell with its rail, filter, pinned bar and phone index; every example in Desktop, Mobile and HTML tabs with highlighted markup and Copy; padded frames, sign-in on its stage, live shell demos; Getting started, the Icons page, a working demo application and the modal at its own address; and every page and example in twelve languages, Arabic right to left. Each language's landing page links its own design system. Part 3's old design-system addresses redirect to their new pages.

The English is Paul's approved copy; Rastrillo's approved translations carry where the English matches, and the rest (98 interface and 45 sample strings per language) are machine drafts nobody has reviewed. Fiesta's css, js and i18n are unchanged; /1/ still serves 1.0.0. CI is resharded to 48 shards for the amadan fleet.

Reviewed task by task and as a whole branch by Astra; hub CI green on the tip.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Squashed from gallery into main.
claude agent, operated by paul@keymail.dev 04d01e104856db83cfcf82826c7d572a098173ea parent 6af218e
130 files changed, +34117 −1049
  • .amadan/ci.d/40-history +2 −0
  • .amadan/ci.d/{50-suite@12 => 50-suite@48} +0 −0
  • Makefile +88 −20
  • check/coverage_browser_test.go +41 −13
  • check/markup_v3_browser_test.go +48 −4
  • ci_test.go +157 −0
  • cmd/fiesta/gallery_test.go +3 −2
  • cmd/fiesta/main.go +10 −9
  • cmd/fiesta/release_test.go +6 −4
  • examples/prose.json +9 −3
  • go.mod +1 −0
  • go.sum +2 −0
  • hack/gotest.sh +57 −20
  • hack/seed/README.md +4 −2
  • hack/seed/_rastrillo/prose_fiestaseed_test.go +33 −11
  • hack/seed/_rastrillo/translations_fiestaseed_test.go +286 −0
  • hack/seed/english/main.go +50 −0
  • hack/seed/prose-review.json +8 −8
  • hack/seed/run-translations.sh +73 −0
  • hack/suite.sh +11 −1
  • hack/test-weights.txt +170 −36
  • internal/gallery/a11y_browser_test.go +80 −51
  • internal/gallery/bar_browser_test.go +794 −0
  • internal/gallery/budget_test.go +129 −0
  • internal/gallery/code_browser_test.go +564 −0
  • internal/gallery/copy.go +154 −26
  • internal/gallery/demo.go +274 −0
  • internal/gallery/demo/dashboard.html +23 −0
  • internal/gallery/demo/request.html +38 −0
  • internal/gallery/demo/requests.html +59 −0
  • internal/gallery/demo_browser_test.go +239 −0
  • internal/gallery/demo_test.go +387 −0
  • internal/gallery/example_page.go +195 −0
  • internal/gallery/family_page.go +63 −0
  • internal/gallery/footlink_browser_test.go +179 −0
  • internal/gallery/frame.go +354 −0
  • internal/gallery/frame.js +58 −7
  • internal/gallery/frame_scheme_browser_test.go +598 −0
  • internal/gallery/frame_test.go +552 −0
  • internal/gallery/gallery.css +260 −74
  • internal/gallery/gallery.go +326 −415
  • internal/gallery/gallery.js +292 −81
  • internal/gallery/gallery_test.go +88 −46
  • internal/gallery/galleryrig/rig.go +437 −0
  • internal/gallery/hashed.go +132 −0
  • internal/gallery/heights.go +396 −0
  • internal/gallery/heights_browser_test.go +748 −0
  • internal/gallery/history/cache_browser_test.go +273 −0
  • internal/gallery/history/demo_cache_browser_test.go +190 −0
  • internal/gallery/history/rig_browser_test.go +65 −0
  • internal/gallery/i18n.go +344 −0
  • internal/gallery/i18n/ar.json +398 −0
  • internal/gallery/i18n/bn.json +398 −0
  • internal/gallery/i18n/drafts.json +2290 −0
  • internal/gallery/i18n/es.json +398 −0
  • internal/gallery/i18n/ga.json +398 −0
  • internal/gallery/i18n/hi.json +398 −0
  • internal/gallery/i18n/ja.json +398 −0
  • internal/gallery/i18n/money.json +14 −0
  • internal/gallery/i18n/pt-PT.json +398 −0
  • internal/gallery/i18n/ru.json +398 −0
  • internal/gallery/i18n/samples.ar.json +385 −0
  • internal/gallery/i18n/samples.bn.json +385 −0
  • internal/gallery/i18n/samples.es.json +385 −0
  • internal/gallery/i18n/samples.ga.json +385 −0
  • internal/gallery/i18n/samples.hi.json +385 −0
  • internal/gallery/i18n/samples.ja.json +385 −0
  • internal/gallery/i18n/samples.pt-PT.json +385 −0
  • internal/gallery/i18n/samples.ru.json +385 −0
  • internal/gallery/i18n/samples.vi.json +385 −0
  • internal/gallery/i18n/samples.yue.json +385 −0
  • internal/gallery/i18n/samples.zh-Hans.json +385 −0
  • internal/gallery/i18n/vi.json +398 −0
  • internal/gallery/i18n/yue.json +398 −0
  • internal/gallery/i18n/zh-Hans.json +398 −0
  • internal/gallery/i18n_test.go +879 −0
  • internal/gallery/icons_page.go +129 −0
  • internal/gallery/index_browser_test.go +295 −0
  • internal/gallery/integration_test.go +185 −0
  • internal/gallery/keyboard_browser_test.go +5 −4
  • internal/gallery/languages_browser_test.go +113 −0
  • internal/gallery/locale.go +17 −0
  • internal/gallery/localise.go +668 −0
  • internal/gallery/localise_test.go +552 −0
  • internal/gallery/modal.go +101 −0
  • internal/gallery/money.go +47 −0
  • internal/gallery/moved_browser_test.go +86 −0
  • internal/gallery/narrow_browser_test.go +55 −0
  • internal/gallery/nav.go +265 −0
  • internal/gallery/overview.go +49 −0
  • internal/gallery/page_tmpl.go +96 −0
  • internal/gallery/pages.go +193 −0
  • internal/gallery/pages_a11y_browser_test.go +364 −72
  • internal/gallery/place_browser_test.go +299 −0
  • internal/gallery/prefs_browser_test.go +247 −0
  • internal/gallery/prose.go +65 −9
  • internal/gallery/prose_test.go +55 −51
  • internal/gallery/rail_browser_test.go +402 −0
  • internal/gallery/rail_test.go +1026 −0
  • internal/gallery/realsize_browser_test.go +186 −0
  • internal/gallery/redirects.go +93 −0
  • internal/gallery/rig_browser_test.go +142 −0
  • internal/gallery/samples_browser_test.go +133 −0
  • internal/gallery/stage_browser_test.go +338 −0
  • internal/gallery/started.go +258 −0
  • internal/gallery/started_test.go +506 −0
  • internal/gallery/tokens_page.go +58 −0
  • internal/gallery/tree_test.go +1070 −0
  • internal/gallery/view.css +267 −0
  • internal/gallery/view.go +287 −0
  • internal/gallery/view.js +267 −0
  • internal/gallery/view_browser_test.go +744 −0
  • internal/gallery/view_test.go +646 −0
  • internal/gallery/weight.go +67 −0
  • internal/gallery/weight_test.go +85 −0
  • internal/site/site.go +25 −6
  • internal/site/site_test.go +54 −0
  • internal/www/landing.go +17 −4
  • internal/www/landing_test.go +59 −0
  • internal/www/legacy_test.go +270 −0
  • internal/www/links_test.go +5 −3
  • internal/www/redirects_test.go +394 −0
  • internal/www/serve_test.go +151 −56
  • internal/www/site_browser_test.go +8 −7
  • internal/www/testdata/part3-addresses.txt +1439 −0
  • internal/www/testdata/part3-ids.txt +16 −0
  • internal/www/www.go +16 −0
  • internal/www/www_test.go +16 −1
  • releases_test.go +37 −0
  • site/landing/page.html.tmpl +3 −3

CI passed — run details

CI log
=== gofmt ===
=== no-rastrillo ===
mkdir -p "/var/lib/amadan-runner/w4/repos/rastrillo__fiesta/wt/fiesta-1-1/.build/tmp"
go test -run '^(TestFiestaNeverImportsRastrillo|TestThePublicPackagesLinkNoBrowser)$' -count=1 .
ok  	amadan.net/rastrillo/fiesta	0.197s
=== size ===
go test ./internal/build -run '^TestTheOneLinkIsUnder25KiBGzipped$' -count=1 -v
=== RUN   TestTheOneLinkIsUnder25KiBGzipped
    build_test.go:138: fiesta-plain.css: 152856 bytes, 22303 bytes gzipped (21.8 KiB of the 25.0 KiB limit)
    build_test.go:138: fiesta-signal.css: 152951 bytes, 22414 bytes gzipped (21.9 KiB of the 25.0 KiB limit)
    build_test.go:138: fiesta.css: 155770 bytes, 23018 bytes gzipped (22.5 KiB of the 25.0 KiB limit)
--- PASS: TestTheOneLinkIsUnder25KiBGzipped (0.03s)
PASS
ok  	amadan.net/rastrillo/fiesta/internal/build	0.030s
=== history ===
history: 5 commits; release tags: v1.0.0
=== suite ===
--- shard 0 of 48 ---
==> shard 0 of 48: make root
go build ./...
go vet ./...
FIESTA_TEST_REQUIRE_NODE=1 FIESTA_TEST_REQUIRE_GIT=1 FIESTA_TEST_REQUIRE_TAGS=1 ./hack/gotest.sh root 'internal/gallery@3 cmd/fiesta@2 internal/www@2'
ok  	amadan.net/rastrillo/fiesta	3.567s
ok  	amadan.net/rastrillo/fiesta/check	7.268s
ok  	amadan.net/rastrillo/fiesta/example	0.400s
?   	amadan.net/rastrillo/fiesta/hack/seed/english	[no test files]
ok  	amadan.net/rastrillo/fiesta/internal/axe	0.233s
ok  	amadan.net/rastrillo/fiesta/internal/build	1.634s
ok  	amadan.net/rastrillo/fiesta/internal/codeview	0.019s
?   	amadan.net/rastrillo/fiesta/internal/harness	[no test files]
ok  	amadan.net/rastrillo/fiesta/internal/markup	0.037s
ok  	amadan.net/rastrillo/fiesta/internal/nodetest	0.448s
ok  	amadan.net/rastrillo/fiesta/internal/site	5.287s
ok  	amadan.net/rastrillo/fiesta/internal/tokens	0.018s
suite: root took 24s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m10.640000s 0m2.140000s
--- shard 1 of 48 ---
==> shard 1 of 48: make test.internal.gallery~1of3
FIESTA_TEST_REQUIRE_NODE=1 FIESTA_TEST_REQUIRE_GIT=1 FIESTA_TEST_REQUIRE_TAGS=1 ./hack/gotest.sh test 'internal.gallery~1of3'
gotest: slice 1 of 3 of ./internal/gallery/ runs 35 of 104 test tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	100.231s
suite: test.internal.gallery~1of3 took 111s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m48.640000s 0m1.310000s
--- shard 2 of 48 ---
==> shard 2 of 48: make test.internal.gallery~2of3
FIESTA_TEST_REQUIRE_NODE=1 FIESTA_TEST_REQUIRE_GIT=1 FIESTA_TEST_REQUIRE_TAGS=1 ./hack/gotest.sh test 'internal.gallery~2of3'
gotest: slice 2 of 3 of ./internal/gallery/ runs 34 of 104 test tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	102.552s
suite: test.internal.gallery~2of3 took 113s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m47.630000s 0m1.410000s
--- shard 3 of 48 ---
==> shard 3 of 48: make test.internal.gallery~3of3
FIESTA_TEST_REQUIRE_NODE=1 FIESTA_TEST_REQUIRE_GIT=1 FIESTA_TEST_REQUIRE_TAGS=1 ./hack/gotest.sh test 'internal.gallery~3of3'
gotest: slice 3 of 3 of ./internal/gallery/ runs 35 of 104 test tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	96.572s
suite: test.internal.gallery~3of3 took 109s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m43.080000s 0m1.410000s
--- shard 4 of 48 ---
==> shard 4 of 48: make test.cmd.fiesta~1of2
FIESTA_TEST_REQUIRE_NODE=1 FIESTA_TEST_REQUIRE_GIT=1 FIESTA_TEST_REQUIRE_TAGS=1 ./hack/gotest.sh test 'cmd.fiesta~1of2'
gotest: slice 1 of 2 of ./cmd/fiesta/ runs 7 of 12 test tests
ok  	amadan.net/rastrillo/fiesta/cmd/fiesta	87.936s
suite: test.cmd.fiesta~1of2 took 97s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m33.290000s 0m2.470000s
--- shard 5 of 48 ---
==> shard 5 of 48: make test.cmd.fiesta~2of2
FIESTA_TEST_REQUIRE_NODE=1 FIESTA_TEST_REQUIRE_GIT=1 FIESTA_TEST_REQUIRE_TAGS=1 ./hack/gotest.sh test 'cmd.fiesta~2of2'
gotest: slice 2 of 2 of ./cmd/fiesta/ runs 5 of 12 test tests
ok  	amadan.net/rastrillo/fiesta/cmd/fiesta	94.799s
suite: test.cmd.fiesta~2of2 took 103s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m35.530000s 0m2.630000s
--- shard 6 of 48 ---
==> shard 6 of 48: make test.internal.www~1of2
FIESTA_TEST_REQUIRE_NODE=1 FIESTA_TEST_REQUIRE_GIT=1 FIESTA_TEST_REQUIRE_TAGS=1 ./hack/gotest.sh test 'internal.www~1of2'
gotest: slice 1 of 2 of ./internal/www/ runs 11 of 25 test tests
ok  	amadan.net/rastrillo/fiesta/internal/www	101.106s
suite: test.internal.www~1of2 took 113s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m46.870000s 0m1.890000s
--- shard 7 of 48 ---
==> shard 7 of 48: make test.internal.www~2of2
FIESTA_TEST_REQUIRE_NODE=1 FIESTA_TEST_REQUIRE_GIT=1 FIESTA_TEST_REQUIRE_TAGS=1 ./hack/gotest.sh test 'internal.www~2of2'
gotest: slice 2 of 2 of ./internal/www/ runs 14 of 25 test tests
ok  	amadan.net/rastrillo/fiesta/internal/www	103.337s
suite: test.internal.www~2of2 took 113s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m45.140000s 0m1.780000s
--- shard 8 of 48 ---
==> shard 8 of 48: make staticcheck
go run honnef.co/go/tools/cmd/staticcheck@v0.8.2 -tags browser ./...
suite: staticcheck took 26s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m15.570000s 0m1.130000s
--- shard 9 of 48 ---
==> shard 9 of 48: make govulncheck
go run golang.org/x/vuln/cmd/govulncheck@v1.8.0 ./...
=== Symbol Results ===

No vulnerabilities found.

Your code is affected by 0 vulnerabilities.
This scan also found 2 vulnerabilities in packages you import and 5
vulnerabilities in modules you require, but your code doesn't appear to call
these vulnerabilities.
Use '-show verbose' for more details.
suite: govulncheck took 13s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m3.230000s 0m0.390000s
--- shard 10 of 48 ---
==> shard 10 of 48: make gitleaks
go run github.com/zricethezav/gitleaks/v8@v8.30.1 git --no-banner --redact --log-opts='--full-history --diff-filter=tuxdb HEAD' .
9:45PM INF Unknown SCM platform. Use --platform to include links in findings. host=amadan.net
9:45PM INF 5 commits scanned.
9:45PM INF scanned ~7793960 bytes (7.79 MB) in 11.6s
9:45PM INF no leaks found
suite: gitleaks took 15s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m6.960000s 0m0.230000s
--- shard 11 of 48 ---
==> shard 11 of 48: make browser.internal.harness
./hack/gotest.sh browser 'internal.harness'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: ./internal/harness/ runs its 10 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/harness	12.691s
suite: browser.internal.harness took 18s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m1.980000s 0m1.330000s
--- shard 12 of 48 ---
==> shard 12 of 48: make browser.check~1of13
./hack/gotest.sh browser 'check~1of13'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: slice 1 of 13 of ./check/ runs 5 of 189 browser tests
ok  	amadan.net/rastrillo/fiesta/check	112.636s
suite: browser.check~1of13 took 131s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m41.040000s 0m8.340000s
--- shard 13 of 48 ---
==> shard 13 of 48: make browser.check~2of13
./hack/gotest.sh browser 'check~2of13'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: slice 2 of 13 of ./check/ runs 9 of 189 browser tests
ok  	amadan.net/rastrillo/fiesta/check	101.099s
suite: browser.check~2of13 took 121s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m27.610000s 0m7.490000s
--- shard 14 of 48 ---
==> shard 14 of 48: make browser.check~3of13
./hack/gotest.sh browser 'check~3of13'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: slice 3 of 13 of ./check/ runs 10 of 189 browser tests
ok  	amadan.net/rastrillo/fiesta/check	110.332s
suite: browser.check~3of13 took 130s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m40.050000s 0m9.200000s
--- shard 15 of 48 ---
==> shard 15 of 48: make browser.check~4of13
./hack/gotest.sh browser 'check~4of13'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: slice 4 of 13 of ./check/ runs 11 of 189 browser tests
ok  	amadan.net/rastrillo/fiesta/check	113.235s
suite: browser.check~4of13 took 134s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m41.770000s 0m11.130000s
--- shard 16 of 48 ---
==> shard 16 of 48: make browser.check~5of13
./hack/gotest.sh browser 'check~5of13'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: slice 5 of 13 of ./check/ runs 16 of 189 browser tests
ok  	amadan.net/rastrillo/fiesta/check	79.100s
suite: browser.check~5of13 took 98s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m19.450000s 0m7.030000s
--- shard 17 of 48 ---
==> shard 17 of 48: make browser.check~6of13
./hack/gotest.sh browser 'check~6of13'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: slice 6 of 13 of ./check/ runs 16 of 189 browser tests
ok  	amadan.net/rastrillo/fiesta/check	93.077s
suite: browser.check~6of13 took 113s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m26.940000s 0m9.160000s
--- shard 18 of 48 ---
==> shard 18 of 48: make browser.check~7of13
./hack/gotest.sh browser 'check~7of13'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: slice 7 of 13 of ./check/ runs 16 of 189 browser tests
ok  	amadan.net/rastrillo/fiesta/check	90.810s
suite: browser.check~7of13 took 109s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m26.140000s 0m7.470000s
--- shard 19 of 48 ---
==> shard 19 of 48: make browser.check~8of13
./hack/gotest.sh browser 'check~8of13'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: slice 8 of 13 of ./check/ runs 17 of 189 browser tests
ok  	amadan.net/rastrillo/fiesta/check	86.506s
suite: browser.check~8of13 took 105s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m23.720000s 0m8.640000s
--- shard 20 of 48 ---
==> shard 20 of 48: make browser.check~9of13
./hack/gotest.sh browser 'check~9of13'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: slice 9 of 13 of ./check/ runs 18 of 189 browser tests
ok  	amadan.net/rastrillo/fiesta/check	85.669s
suite: browser.check~9of13 took 105s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m25.210000s 0m10.410000s
--- shard 21 of 48 ---
==> shard 21 of 48: make browser.check~10of13
./hack/gotest.sh browser 'check~10of13'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: slice 10 of 13 of ./check/ runs 17 of 189 browser tests
ok  	amadan.net/rastrillo/fiesta/check	102.465s
suite: browser.check~10of13 took 121s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m35.080000s 0m11.000000s
--- shard 22 of 48 ---
==> shard 22 of 48: make browser.check~11of13
./hack/gotest.sh browser 'check~11of13'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: slice 11 of 13 of ./check/ runs 18 of 189 browser tests
ok  	amadan.net/rastrillo/fiesta/check	76.111s
suite: browser.check~11of13 took 95s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m20.350000s 0m7.610000s
--- shard 23 of 48 ---
==> shard 23 of 48: make browser.check~12of13
./hack/gotest.sh browser 'check~12of13'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: slice 12 of 13 of ./check/ runs 18 of 189 browser tests
ok  	amadan.net/rastrillo/fiesta/check	94.915s
suite: browser.check~12of13 took 113s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m25.710000s 0m9.770000s
--- shard 24 of 48 ---
==> shard 24 of 48: make browser.check~13of13
./hack/gotest.sh browser 'check~13of13'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: slice 13 of 13 of ./check/ runs 18 of 189 browser tests
ok  	amadan.net/rastrillo/fiesta/check	81.002s
suite: browser.check~13of13 took 102s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m22.900000s 0m8.860000s
--- shard 25 of 48 ---
==> shard 25 of 48: make browser.internal.gallery~1of18
./hack/gotest.sh browser 'internal.gallery~1of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 1 of 18 of ./internal/gallery/ runs 6 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	61.950s
suite: browser.internal.gallery~1of18 took 80s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m14.880000s 0m3.300000s
--- shard 26 of 48 ---
==> shard 26 of 48: make browser.internal.gallery~2of18
./hack/gotest.sh browser 'internal.gallery~2of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 2 of 18 of ./internal/gallery/ runs 6 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	78.565s
suite: browser.internal.gallery~2of18 took 97s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m15.630000s 0m3.820000s
--- shard 27 of 48 ---
==> shard 27 of 48: make browser.internal.gallery~3of18
./hack/gotest.sh browser 'internal.gallery~3of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 3 of 18 of ./internal/gallery/ runs 6 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	92.593s
suite: browser.internal.gallery~3of18 took 111s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m16.680000s 0m4.100000s
--- shard 28 of 48 ---
==> shard 28 of 48: make browser.internal.gallery~4of18
./hack/gotest.sh browser 'internal.gallery~4of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 4 of 18 of ./internal/gallery/ runs 6 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	95.610s
suite: browser.internal.gallery~4of18 took 114s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m19.000000s 0m5.610000s
--- shard 29 of 48 ---
==> shard 29 of 48: make browser.internal.gallery~5of18
./hack/gotest.sh browser 'internal.gallery~5of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 5 of 18 of ./internal/gallery/ runs 6 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	99.064s
suite: browser.internal.gallery~5of18 took 116s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m17.170000s 0m4.540000s
--- shard 30 of 48 ---
==> shard 30 of 48: make browser.internal.gallery~6of18
./hack/gotest.sh browser 'internal.gallery~6of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 6 of 18 of ./internal/gallery/ runs 6 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	77.623s
suite: browser.internal.gallery~6of18 took 95s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m16.190000s 0m3.850000s
--- shard 31 of 48 ---
==> shard 31 of 48: make browser.internal.gallery~7of18
./hack/gotest.sh browser 'internal.gallery~7of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 7 of 18 of ./internal/gallery/ runs 5 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	75.861s
suite: browser.internal.gallery~7of18 took 93s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m14.000000s 0m2.820000s
--- shard 32 of 48 ---
==> shard 32 of 48: make browser.internal.gallery~8of18
./hack/gotest.sh browser 'internal.gallery~8of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 8 of 18 of ./internal/gallery/ runs 5 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	90.492s
suite: browser.internal.gallery~8of18 took 109s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m18.080000s 0m5.270000s
--- shard 33 of 48 ---
==> shard 33 of 48: make browser.internal.gallery~9of18
./hack/gotest.sh browser 'internal.gallery~9of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 9 of 18 of ./internal/gallery/ runs 5 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	106.736s
suite: browser.internal.gallery~9of18 took 125s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m21.980000s 0m6.980000s
--- shard 34 of 48 ---
==> shard 34 of 48: make browser.internal.gallery~10of18
./hack/gotest.sh browser 'internal.gallery~10of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 10 of 18 of ./internal/gallery/ runs 2 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	78.966s
suite: browser.internal.gallery~10of18 took 96s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m14.270000s 0m2.730000s
--- shard 35 of 48 ---
==> shard 35 of 48: make browser.internal.gallery~11of18
./hack/gotest.sh browser 'internal.gallery~11of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 11 of 18 of ./internal/gallery/ runs 2 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	80.327s
suite: browser.internal.gallery~11of18 took 99s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m14.590000s 0m2.770000s
--- shard 36 of 48 ---
==> shard 36 of 48: make browser.internal.gallery~12of18
./hack/gotest.sh browser 'internal.gallery~12of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 12 of 18 of ./internal/gallery/ runs 2 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	111.625s
suite: browser.internal.gallery~12of18 took 129s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m18.680000s 0m4.900000s
--- shard 37 of 48 ---
==> shard 37 of 48: make browser.internal.gallery~13of18
./hack/gotest.sh browser 'internal.gallery~13of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 13 of 18 of ./internal/gallery/ runs 3 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	108.936s
suite: browser.internal.gallery~13of18 took 126s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m19.280000s 0m5.370000s
--- shard 38 of 48 ---
==> shard 38 of 48: make browser.internal.gallery~14of18
./hack/gotest.sh browser 'internal.gallery~14of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 14 of 18 of ./internal/gallery/ runs 4 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	112.491s
suite: browser.internal.gallery~14of18 took 129s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m19.230000s 0m5.390000s
--- shard 39 of 48 ---
==> shard 39 of 48: make browser.internal.gallery~15of18
./hack/gotest.sh browser 'internal.gallery~15of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 15 of 18 of ./internal/gallery/ runs 4 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	110.768s
suite: browser.internal.gallery~15of18 took 129s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m19.660000s 0m5.600000s
--- shard 40 of 48 ---
==> shard 40 of 48: make browser.internal.gallery~16of18
./hack/gotest.sh browser 'internal.gallery~16of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 16 of 18 of ./internal/gallery/ runs 5 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	99.414s
suite: browser.internal.gallery~16of18 took 118s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m16.340000s 0m4.100000s
--- shard 41 of 48 ---
==> shard 41 of 48: make browser.internal.gallery~17of18
./hack/gotest.sh browser 'internal.gallery~17of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 17 of 18 of ./internal/gallery/ runs 5 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	102.847s
suite: browser.internal.gallery~17of18 took 120s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m20.040000s 0m5.870000s
--- shard 42 of 48 ---
==> shard 42 of 48: make browser.internal.gallery~18of18
./hack/gotest.sh browser 'internal.gallery~18of18'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 18 of 18 of ./internal/gallery/ runs 5 of 83 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery	102.260s
suite: browser.internal.gallery~18of18 took 119s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m18.990000s 0m5.400000s
--- shard 43 of 48 ---
==> shard 43 of 48: make browser.internal.gallery.history
./hack/gotest.sh browser 'internal.gallery.history'
gotest: on ip-172-31-26-122, driving /opt/amadan-browser/chromium-1234/chrome-linux/chrome
gotest: ./internal/gallery/history/ runs its 3 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/gallery/history	63.887s
suite: browser.internal.gallery.history took 74s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m21.920000s 0m2.300000s
--- shard 44 of 48 ---
==> shard 44 of 48: make browser.internal.www~1of4
./hack/gotest.sh browser 'internal.www~1of4'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 1 of 4 of ./internal/www/ runs 4 of 16 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/www	90.876s
suite: browser.internal.www~1of4 took 106s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m32.100000s 0m2.340000s
--- shard 45 of 48 ---
==> shard 45 of 48: make browser.internal.www~2of4
./hack/gotest.sh browser 'internal.www~2of4'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 2 of 4 of ./internal/www/ runs 4 of 16 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/www	95.411s
suite: browser.internal.www~2of4 took 111s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m39.100000s 0m2.490000s
--- shard 46 of 48 ---
==> shard 46 of 48: make browser.internal.www~3of4
./hack/gotest.sh browser 'internal.www~3of4'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 3 of 4 of ./internal/www/ runs 4 of 16 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/www	92.898s
suite: browser.internal.www~3of4 took 108s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m32.460000s 0m2.510000s
--- shard 47 of 48 ---
==> shard 47 of 48: make browser.internal.www~4of4
./hack/gotest.sh browser 'internal.www~4of4'
gotest: on ip-172-31-26-122, driving the harness's own choice (/usr/local/bin/chromium)
gotest: slice 4 of 4 of ./internal/www/ runs 4 of 16 browser tests
ok  	amadan.net/rastrillo/fiesta/internal/www	85.266s
suite: browser.internal.www~4of4 took 103s; CPU, user then system, of this shell and then of the role:
0m0.000000s 0m0.000000s
0m32.160000s 0m2.200000s
.amadan/ci.d/40-history

Loading diff…

.amadan/ci.d/{50-suite@12 => 50-suite@48}

Loading diff…

Makefile

Loading diff…

check/coverage_browser_test.go

Loading diff…

check/markup_v3_browser_test.go

Loading diff…

ci_test.go

Loading diff…

cmd/fiesta/gallery_test.go

Loading diff…

cmd/fiesta/main.go

Loading diff…

cmd/fiesta/release_test.go

Loading diff…

examples/prose.json

Loading diff…

go.mod

Loading diff…

go.sum

Loading diff…

hack/gotest.sh

Loading diff…

hack/seed/README.md

Loading diff…

hack/seed/_rastrillo/prose_fiestaseed_test.go

Loading diff…

hack/seed/_rastrillo/translations_fiestaseed_test.go

Loading diff…

hack/seed/english/main.go

Loading diff…

hack/seed/prose-review.json

Loading diff…

hack/seed/run-translations.sh

Loading diff…

hack/suite.sh

Loading diff…

hack/test-weights.txt

Loading diff…

internal/gallery/a11y_browser_test.go

Loading diff…

internal/gallery/bar_browser_test.go

Loading diff…

internal/gallery/budget_test.go

Loading diff…

internal/gallery/code_browser_test.go

Loading diff…

internal/gallery/copy.go

Loading diff…

internal/gallery/demo.go

Loading diff…

internal/gallery/demo/dashboard.html

Loading diff…

internal/gallery/demo/request.html

Loading diff…

internal/gallery/demo/requests.html

Loading diff…

internal/gallery/demo_browser_test.go

Loading diff…

internal/gallery/demo_test.go

Loading diff…

internal/gallery/example_page.go

Loading diff…

internal/gallery/family_page.go

Loading diff…

internal/gallery/footlink_browser_test.go

Loading diff…

internal/gallery/frame.go

Loading diff…

internal/gallery/frame.js

Loading diff…

internal/gallery/frame_scheme_browser_test.go

Loading diff…

internal/gallery/frame_test.go

Loading diff…

internal/gallery/gallery.css

Loading diff…

internal/gallery/gallery.go

Loading diff…

internal/gallery/gallery.js

Loading diff…

internal/gallery/gallery_test.go

Loading diff…

internal/gallery/galleryrig/rig.go

Loading diff…

internal/gallery/hashed.go

Loading diff…

internal/gallery/heights.go

Loading diff…

internal/gallery/heights_browser_test.go

Loading diff…

internal/gallery/history/cache_browser_test.go

Loading diff…

internal/gallery/history/demo_cache_browser_test.go

Loading diff…

internal/gallery/history/rig_browser_test.go

Loading diff…

internal/gallery/i18n.go

Loading diff…

internal/gallery/i18n/ar.json

Loading diff…

internal/gallery/i18n/bn.json

Loading diff…

internal/gallery/i18n/drafts.json

Loading diff…

internal/gallery/i18n/es.json

Loading diff…

internal/gallery/i18n/ga.json

Loading diff…

internal/gallery/i18n/hi.json

Loading diff…

internal/gallery/i18n/ja.json

Loading diff…

internal/gallery/i18n/money.json

Loading diff…

internal/gallery/i18n/pt-PT.json

Loading diff…

internal/gallery/i18n/ru.json

Loading diff…

internal/gallery/i18n/samples.ar.json

Loading diff…

internal/gallery/i18n/samples.bn.json

Loading diff…

internal/gallery/i18n/samples.es.json

Loading diff…

internal/gallery/i18n/samples.ga.json

Loading diff…

internal/gallery/i18n/samples.hi.json

Loading diff…

internal/gallery/i18n/samples.ja.json

Loading diff…

internal/gallery/i18n/samples.pt-PT.json

Loading diff…

internal/gallery/i18n/samples.ru.json

Loading diff…

internal/gallery/i18n/samples.vi.json

Loading diff…

internal/gallery/i18n/samples.yue.json

Loading diff…

internal/gallery/i18n/samples.zh-Hans.json

Loading diff…

internal/gallery/i18n/vi.json

Loading diff…

internal/gallery/i18n/yue.json

Loading diff…

internal/gallery/i18n/zh-Hans.json

Loading diff…

internal/gallery/i18n_test.go

Loading diff…

internal/gallery/icons_page.go

Loading diff…

internal/gallery/index_browser_test.go

Loading diff…

internal/gallery/integration_test.go

Loading diff…

internal/gallery/keyboard_browser_test.go

Loading diff…

internal/gallery/languages_browser_test.go

Loading diff…

internal/gallery/locale.go

Loading diff…

internal/gallery/localise.go

Loading diff…

internal/gallery/localise_test.go

Loading diff…

internal/gallery/modal.go

Loading diff…

internal/gallery/money.go

Loading diff…

internal/gallery/moved_browser_test.go

Loading diff…

internal/gallery/narrow_browser_test.go

Loading diff…

internal/gallery/nav.go

Loading diff…

internal/gallery/overview.go

Loading diff…

internal/gallery/page_tmpl.go

Loading diff…

internal/gallery/pages.go

Loading diff…

internal/gallery/pages_a11y_browser_test.go

Loading diff…

internal/gallery/place_browser_test.go

Loading diff…

internal/gallery/prefs_browser_test.go

Loading diff…

internal/gallery/prose.go

Loading diff…

internal/gallery/prose_test.go

Loading diff…

internal/gallery/rail_browser_test.go

Loading diff…

internal/gallery/rail_test.go

Loading diff…

internal/gallery/realsize_browser_test.go

Loading diff…

internal/gallery/redirects.go

Loading diff…

internal/gallery/rig_browser_test.go

Loading diff…

internal/gallery/samples_browser_test.go

Loading diff…

internal/gallery/stage_browser_test.go

Loading diff…

internal/gallery/started.go

Loading diff…

internal/gallery/started_test.go

Loading diff…

internal/gallery/tokens_page.go

Loading diff…

internal/gallery/tree_test.go

Loading diff…

internal/gallery/view.css

Loading diff…

internal/gallery/view.go

Loading diff…

internal/gallery/view.js

Loading diff…

internal/gallery/view_browser_test.go

Loading diff…

internal/gallery/view_test.go

Loading diff…

internal/gallery/weight.go

Loading diff…

internal/gallery/weight_test.go

Loading diff…

internal/site/site.go

Loading diff…

internal/site/site_test.go

Loading diff…

internal/www/landing.go

Loading diff…

internal/www/landing_test.go

Loading diff…

internal/www/legacy_test.go

Loading diff…

internal/www/links_test.go

Loading diff…

internal/www/redirects_test.go

Loading diff…

internal/www/serve_test.go

Loading diff…

internal/www/site_browser_test.go

Loading diff…

internal/www/testdata/part3-addresses.txt

Loading diff…

internal/www/testdata/part3-ids.txt

Loading diff…

internal/www/www.go

Loading diff…

internal/www/www_test.go

Loading diff…

releases_test.go

Loading diff…

site/landing/page.html.tmpl

Loading diff…