Public: anyone can read this; the crew can change it.
Sentinel: shared:01m23vygyffx5hg2f5vm8r74sr:2hwyx3x8nx is past its budget: trevato/forge: "/map on the forge-sized fixture, warm > (unnamed)" failed on 4 pulls in the last hour — the lane's red,… #3077
Check · Review · Land · Live done — Landed and live in production.
scout/forge:scout/3072-sentinel-shared-01m23vygyffx5hg2f5vm8r74 → main 1 commit fork
1 file
changed +23
−3
test/map-cache.test.ts +23 −3
| @@ -16,7 +16,7 @@ import { serve, type Servers } from "../src/http/server.ts"; | ||
| 16 | 16 | import { clearMapCache, layoutKey } from "../src/web/map_cache.ts"; |
| 17 | 17 | import { layout } from "../src/web/pages/map.ts"; |
| 18 | 18 | import type { Graph } from "../src/core/dependencies.ts"; |
| 19 | import { FORGE_SIZE, seedFixture, type Fixture, type Shape } from "../bench/map-home.ts"; | |
| 19 | import { seedFixture, type Fixture, type Shape } from "../bench/map-home.ts"; | |
| 20 | 20 | import { countStatements } from "../bench/run.ts"; |
| 21 | 21 | |
| 22 | 22 | const SMALL: Shape = { |
| @@ -34,6 +34,26 @@ const SMALL: Shape = { | ||
| 34 | 34 | events: 50, |
| 35 | 35 | }; |
| 36 | 36 | |
| 37 | /** | |
| 38 | * Many lanes and a real graph, without the forge's 60,000 events: the | |
| 39 | * statement counts asserted below depend on the code, not on the fixture's | |
| 40 | * size, and seeding the full size under load is what timed this suite out. | |
| 41 | */ | |
| 42 | const MANY: Shape = { | |
| 43 | repos: 20, | |
| 44 | bigIssues: 300, | |
| 45 | bigOpen: 60, | |
| 46 | bigGraph: 120, | |
| 47 | bigEdges: 200, | |
| 48 | bigPulls: 5, | |
| 49 | lanes: [20, 12, 9, 6, 4, 2, 1, 1], | |
| 50 | privateLanes: 2, | |
| 51 | sealed: 2, | |
| 52 | runs: 3, | |
| 53 | comments: 2, | |
| 54 | events: 1_000, | |
| 55 | }; | |
| 56 | ||
| 37 | 57 | /** What the page around the lanes reads, however many lanes there are. */ |
| 38 | 58 | const CHROME = 26; |
| 39 | 59 | |
| @@ -58,11 +78,11 @@ const get = async (servers: Servers, path: string, cookie: string): Promise<stri | ||
| 58 | 78 | |
| 59 | 79 | const lanesIn = (page: string): number => page.split('class="map-lane"').length - 1; |
| 60 | 80 | |
| 61 | describe("/map on the forge-sized fixture, warm", () => { | |
| 81 | describe("/map on a many-lane fixture, warm", () => { | |
| 62 | 82 | let servers: Servers; |
| 63 | 83 | let f: Fixture; |
| 64 | 84 | beforeAll(async () => { |
| 65 | ({ f, servers } = await boot(FORGE_SIZE)); | |
| 85 | ({ f, servers } = await boot(MANY)); | |
| 66 | 86 | }, 120_000); |
| 67 | 87 | afterAll(() => servers.stop(), 60_000); |
| 68 | 88 |
new above
offline