Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
192 changes: 102 additions & 90 deletions scripts/test-shard-timings.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,33 @@
"provenance": {
"measuredAt": "2026-10-12",
"summaries": [
"3Ka4L0rLToaqWDZVblLSZFZWo3m.json",
"3Ka3ypY6M5OKbIiNK34frfM59p6.json",
"3Ka3ykPwoWMFNbTSMmTrfRo0Sko.json",
"3Ka4YAwKai8sJk5HdbvGI4aTNk3.json",
"3Ka3xOOxYhkjT5ggqakxVDIusDB.json",
"3Ka3xb3YEQjaTfqPLexSuP9t0Xe.json",
"3Ka4Ew0LkXeJU3PUeoLB9ON81mO.json",
"3Ka3zK6JrLDrvvOsYSv1F2iTE4c.json",
"3Ka3zHCPMHADoaZJ7f3EBF6KP5C.json",
"3KZxSKCFqbVwQmhkG8rLwjDoBxx.json",
"3KZyB4aGl4SYOMFU6nsiKu8sqmj.json",
"3KZwpeiyNvV8nQCNhB2a23N7WZo.json",
"3KZxRSkaX3ErYR3vLeKdV90uTmX.json",
"3KZyeUWkXNiOnMXOAdIcVdx50SR.json",
"3KZwn4TTVKbrzJHvKQLcNlH3VZ3.json",
"3KZx4bEOLdoCrayo7JhFHBorl8a.json",
"3KZygSdpR5YfTEO1ZgDK6aPR71A.json",
"3KZx5f12teUivjsd8xCekB1e73a.json",
"3KZqTs0L13PYgmwYRAMLUhWGXHG.json",
"3KZpjS8py8CnbWItDtvDUsnLDjV.json",
"3KZpjIcS4K3UBv90zLeKC1EgOwH.json",
"3KZpOljDKMMJ9ZBXcJO7OQieHyq.json",
"3KZpixRJApXiTEwhGv5au3ouuYZ.json",
"3KZpj20GOM0pJoRDAEmRDJVq43q.json",
"3KZpUZWZm67DP6qkFUOj8NYTc26.json",
"3KZpdQQ0CNJAa96U1doPUR2bvAz.json",
"3KZpdT0LnQWvAGAS0RXUXp5DrJa.json",
"3KZjRJSfFd3LKk4KDreX1xJbUBI.json",
"3KZkjW7P5k6JfHg5XrCixtfo54E.json",
"3KZjNVniGAwHCXkYbcrwd6UjuPK.json",
Expand Down Expand Up @@ -92,27 +119,12 @@
"3KYVZ2X0AbRAdJPKA5YibZwwgPG.json",
"3KYVbm7aNAYeKCmQWv2b5slHQTu.json",
"3KYVbOucJtLQJaqwoxIcMJx1xmP.json",
"3KYVbNJO7Jk3AUVffk1XzM0aTvA.json",
"3KYQ9kLfGvA19wOnQnr71UZyr4f.json",
"3KYQLa6rhWNOw781o7ms20kruz5.json",
"3KYP2iqQCmBxfgwv7hr7JSU7Jb8.json",
"3KYPuVCIm7Durlh2Ec62nqaDs70.json",
"3KYQi5KLNJESpSdsxy5v5sX8cqs.json",
"3KYP8cloCpjb1spwzAfSPXjnRsG.json",
"3KYPs8tOHbBCv5n2wGMMAJgck9G.json",
"3KYQgnP1GHcAWrmjOaxEBkIBXCu.json",
"3KYPDyq9r0Px7UNBsA5ZJUYKYwp.json",
"3KYISTYyoXonjxUDipyrm3TNjLF.json",
"3KYHO0g9hZ2E3duqf5jJjCUtoGp.json",
"3KYI9fJbaOdicWT4YHb04sSQwHC.json",
"3KYIdVERhtzz8H1hQCtSkVRgBlL.json",
"3KYHg57FZPHTF509PTKfs4WLxop.json",
"3KYJ2VDCiyv2MlUGq7eyS6tPd0h.json",
"3KYHHW0T5ho6Gt77Svf0ztXFh6x.json",
"3KYJRlYkUeWWzB7OyhQwxx6Jpow.json",
"3KYHxllOmBXxnnF0PbFl4SxPrqr.json"
"3KYVbNJO7Jk3AUVffk1XzM0aTvA.json"
],
"runs": [
"38206660804",
"38202645321",
"38198819852",
"38195222269",
"38192273698",
"38186537664",
Expand All @@ -122,93 +134,92 @@
"38166241661",
"38162059938",
"38157849210",
"38153696467",
"38149530770",
"38145479058"
"38153696467"
],
"mergeRule": "median across runs; a file-sharded package is summed from its slices WITHIN one run first, and a run that cannot assemble every slice contributes no sample for it; a package not measured in this pass keeps its previous weight ONLY when a turbo cache HIT witnesses that its inputs are unchanged, and every such package is named in `carriedOver`",
"refresh": "node scripts/measure-test-shard-timings.mjs [--run <id>] <run-summary.json>... --merge-into scripts/test-shard-timings.json --out scripts/test-shard-timings.json (summaries: the `test-core-run-summary-<n>-of-6` artifacts of any green run, or a local `pnpm exec turbo run test --concurrency=4 --summarize`. ⚠ ONE RUN COVERS ONLY 2-52 of ~71 packages depending on cache warmth, so feed SEVERAL runs -- a `--run <id>` before each run's summaries is REQUIRED, so a sliced package is assembled per run and then medianed like every other package -- and `--merge-into` to carry the cache-hit remainder. A package measured by fewer than `minimumRuns` executed runs is named in `provisional`, so feed runs until that list is empty. `.github/workflows/shard-timings-refresh.yml` does all of this weekly.)",
"minimumRuns": 3,
"ceilingHeadroom": 1.25
},
"secondsPerTestFileFallback": 2.565,
"secondsPerTestFileFallback": 2.373,
"packages": {
"@objectstack/cli": 2109.45,
"@objectstack/client": 111.17,
"@objectstack/client-react": 9.2,
"@objectstack/cloud-connection": 81.68,
"@objectstack/connector-mcp": 31.73,
"@objectstack/connector-openapi": 41.06,
"@objectstack/connector-rest": 29.49,
"@objectstack/connector-slack": 42.85,
"@objectstack/core": 85.4,
"@objectstack/downstream-contract": 11.78,
"@objectstack/driver-memory": 110.29,
"@objectstack/driver-mongodb": 93.87,
"@objectstack/driver-sql": 340.53,
"@objectstack/driver-sqlite-wasm": 70.39,
"@objectstack/driver-turso": 191.66,
"@objectstack/embedder-openai": 4.91,
"@objectstack/example-crm": 34.27,
"@objectstack/example-embed-objectql": 21,
"@objectstack/example-showcase": 142.11,
"@objectstack/example-todo": 66.07,
"@objectstack/formula": 28.61,
"@objectstack/hono": 29.25,
"@objectstack/http-conformance": 76.91,
"@objectstack/knowledge-memory": 2.98,
"@objectstack/cli": 2125.32,
"@objectstack/client": 118.45,
"@objectstack/client-react": 8.9,
"@objectstack/cloud-connection": 99.6,
"@objectstack/connector-mcp": 27.2,
"@objectstack/connector-openapi": 43.95,
"@objectstack/connector-rest": 30.63,
"@objectstack/connector-slack": 41.99,
"@objectstack/core": 82.36,
"@objectstack/downstream-contract": 11.87,
"@objectstack/driver-memory": 120.89,
"@objectstack/driver-mongodb": 83.62,
"@objectstack/driver-sql": 354.23,
"@objectstack/driver-sqlite-wasm": 78.52,
"@objectstack/driver-turso": 168.94,
"@objectstack/embedder-openai": 4.71,
"@objectstack/example-crm": 34.07,
"@objectstack/example-embed-objectql": 24.11,
"@objectstack/example-showcase": 142.92,
"@objectstack/example-todo": 65.32,
"@objectstack/formula": 30.66,
"@objectstack/hono": 29.62,
"@objectstack/http-conformance": 75.82,
"@objectstack/knowledge-memory": 2.87,
"@objectstack/knowledge-ragflow": 2.52,
"@objectstack/lint": 170.22,
"@objectstack/mcp": 73.97,
"@objectstack/metadata": 126.74,
"@objectstack/metadata-core": 24.32,
"@objectstack/metadata-fs": 45.66,
"@objectstack/metadata-protocol": 489.35,
"@objectstack/objectql": 590.71,
"@objectstack/mcp": 83.77,
"@objectstack/metadata": 112.34,
"@objectstack/metadata-core": 22.9,
"@objectstack/metadata-fs": 45.68,
"@objectstack/metadata-protocol": 370.78,
"@objectstack/objectql": 582.93,
"@objectstack/observability": 2.69,
"@objectstack/organizations": 102.91,
"@objectstack/platform-objects": 90.73,
"@objectstack/plugin-approvals": 166.71,
"@objectstack/organizations": 102.8,
"@objectstack/platform-objects": 84.44,
"@objectstack/plugin-approvals": 145.12,
"@objectstack/plugin-audit": 141.61,
"@objectstack/plugin-auth": 465.63,
"@objectstack/plugin-dev": 63.57,
"@objectstack/plugin-email": 82.87,
"@objectstack/plugin-hono-server": 52.24,
"@objectstack/plugin-pinyin-search": 41.8,
"@objectstack/plugin-security": 329.99,
"@objectstack/plugin-sharing": 117.27,
"@objectstack/plugin-webhooks": 70.88,
"@objectstack/rest": 542.95,
"@objectstack/runtime": 528.56,
"@objectstack/sdui-parser": 3.66,
"@objectstack/service-analytics": 220.5,
"@objectstack/service-automation": 429.69,
"@objectstack/service-cache": 1.98,
"@objectstack/service-cluster": 14.02,
"@objectstack/service-cluster-redis": 20.59,
"@objectstack/service-datasource": 85.56,
"@objectstack/service-i18n": 26.48,
"@objectstack/service-job": 20.91,
"@objectstack/service-knowledge": 25.58,
"@objectstack/service-messaging": 130.76,
"@objectstack/service-package": 17.22,
"@objectstack/service-queue": 52.46,
"@objectstack/service-realtime": 14.72,
"@objectstack/service-settings": 92.33,
"@objectstack/service-sms": 24.87,
"@objectstack/service-storage": 130.79,
"@objectstack/spec": 1408.28,
"@objectstack/trigger-api": 23.85,
"@objectstack/trigger-record-change": 68.79,
"@objectstack/plugin-auth": 445.89,
"@objectstack/plugin-dev": 61.48,
"@objectstack/plugin-email": 84.53,
"@objectstack/plugin-hono-server": 51.97,
"@objectstack/plugin-pinyin-search": 41.22,
"@objectstack/plugin-security": 334.77,
"@objectstack/plugin-sharing": 151.33,
"@objectstack/plugin-webhooks": 51.5,
"@objectstack/rest": 526.67,
"@objectstack/runtime": 461.07,
"@objectstack/sdui-parser": 3.51,
"@objectstack/service-analytics": 262.37,
"@objectstack/service-automation": 425.27,
"@objectstack/service-cache": 2.19,
"@objectstack/service-cluster": 13.46,
"@objectstack/service-cluster-redis": 20.58,
"@objectstack/service-datasource": 60.73,
"@objectstack/service-i18n": 23.52,
"@objectstack/service-job": 22.27,
"@objectstack/service-knowledge": 22.43,
"@objectstack/service-messaging": 128.51,
"@objectstack/service-package": 18.1,
"@objectstack/service-queue": 51.58,
"@objectstack/service-realtime": 14.46,
"@objectstack/service-settings": 93.5,
"@objectstack/service-sms": 25.16,
"@objectstack/service-storage": 121,
"@objectstack/spec": 1330.73,
"@objectstack/trigger-api": 23.82,
"@objectstack/trigger-record-change": 68.97,
"@objectstack/trigger-schedule": 42.08,
"@objectstack/types": 24.63,
"@objectstack/verify": 213,
"@objectstack/vitest-filter-preflight": 19.75,
"create-objectstack": 23.58
"@objectstack/types": 24.57,
"@objectstack/verify": 230.44,
"@objectstack/vitest-filter-preflight": 17.27,
"create-objectstack": 22.86
},
"skippedAsCached": [
"@objectstack/cli",
"@objectstack/client",
"@objectstack/client-react",
"@objectstack/cloud-connection",
"@objectstack/connector-mcp",
"@objectstack/connector-openapi",
Expand Down Expand Up @@ -254,6 +265,7 @@
"@objectstack/service-job",
"@objectstack/service-knowledge",
"@objectstack/service-messaging",
"@objectstack/service-package",
"@objectstack/service-queue",
"@objectstack/service-settings",
"@objectstack/service-sms",
Expand Down