Skip to content

chore(ci): refresh the Test Core shard-timings dataset - #22923

Merged
objectstack-fleet[bot] merged 2 commits into
mainfrom
claude/shard-timings-refresh-38195222269
Oct 12, 2026
Merged

objectstack-fleet[bot] merged 2 commits into
mainfrom
claude/shard-timings-refresh-38195222269

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

Refreshes scripts/test-shard-timings.json, the balancing input for the Test Core
shard split. Opened automatically by .github/workflows/shard-timings-refresh.yml.
Every byte came out of scripts/measure-test-shard-timings.mjs; nothing here was
hand-edited, and no bound, timeout or matrix entry was touched.

Source

Measured across 12 accumulated run(s) of the HOURLY schedule run of CI on
main — the full-battery run (#16467). A push run on main is affected-only and
is not a measurement of the workspace, so no push run feeds this file.

No single green run measures the whole workspace either — turbo's cache is namespaced
per shard and only main pushes write it, so a
package whose inputs have not changed is a HIT and the generator refuses hits rather
than recording a replay as a duration. Runs are therefore accumulated, each fenced by
its own --run group, until every package has been EXECUTED by at least the
generator's minimum number of them, and each weight is the median of those executions.

All 72 package weights were measured in these runs; nothing was carried.

⚠️ This PR references #16173 and #16222 but does NOT carry a closing keyword for them,
because a weekly lane cannot know which cards a given run ought to retire. If this is
the first refresh to land, retire those two by hand as part of merging it.

Sample depth, run-to-run spread and suite-duration ceilings

Every one of the 72 weights rests on at least 3 executed runs; none is provisional.

⚠️ This refresh writes the FIRST suite-duration ceiling table: 72 package(s) get a ceiling, each its slowest executed run in this window x 1.25. From the merge of this PR the Test Core check (scripts/check-test-suite-ceilings.mjs) grades every executed package against it -- until then it reads NOT MEASURED. Every later refresh HOLDS these numbers and a ceiling rises only by a ruling, so review the ceiling column below before merging.

Every package carries a ceiling.

Each package's executed runs in this refresh (minimum 3), the spread of its readings in seconds, and the suite-duration ceiling Test Core grades it against: its slowest executed run x 1.25 when first set, then held by every refresh -- a ceiling is raised only by a ruling.

package runs min s median s max s max/min ceiling s
@objectstack/example-embed-objectql 12 6.91 21.00 41.20 5.96× 51.51
@objectstack/example-crm 11 14.02 34.27 55.06 3.93× 68.83
@objectstack/verify 11 106.36 213.00 335.17 3.15× 418.97
@objectstack/service-realtime 12 7.33 14.72 22.14 3.02× 27.68
@objectstack/service-job 9 13.34 20.91 36.25 2.72× 45.32
@objectstack/trigger-record-change 10 32.75 68.79 87.30 2.67× 109.12
@objectstack/cloud-connection 11 50.11 81.68 131.11 2.62× 163.89
@objectstack/service-i18n 12 15.29 26.48 39.56 2.59× 49.45
@objectstack/plugin-approvals 10 93.30 166.71 232.48 2.49× 290.60
@objectstack/http-conformance 11 49.01 76.91 119.68 2.44× 149.61
@objectstack/client-react 12 5.57 9.20 12.98 2.33× 16.23
@objectstack/connector-mcp 10 18.94 31.73 43.88 2.32× 54.85
@objectstack/trigger-api 12 14.69 23.85 33.69 2.29× 42.12
@objectstack/connector-openapi 10 21.58 41.06 49.25 2.28× 61.57
@objectstack/service-knowledge 9 17.29 25.58 38.86 2.25× 48.58
@objectstack/platform-objects 8 49.40 90.73 108.02 2.19× 135.03
@objectstack/runtime 10 335.18 528.56 730.47 2.18× 913.09
@objectstack/client 10 67.22 111.17 143.79 2.14× 179.74
@objectstack/plugin-auth 11 224.59 465.63 480.35 2.14× 600.45
@objectstack/service-package 12 12.38 17.22 26.32 2.13× 32.90
@objectstack/downstream-contract 12 8.54 11.78 18.17 2.13× 22.71
@objectstack/connector-rest 10 23.21 29.49 48.65 2.10× 60.82
@objectstack/service-cluster 12 10.93 14.02 22.77 2.08× 28.46
@objectstack/driver-mongodb 8 62.05 93.87 127.16 2.05× 158.96
@objectstack/knowledge-memory 12 2.49 2.98 5.11 2.05× 6.39
@objectstack/metadata-core 12 15.17 24.32 30.92 2.04× 38.66
@objectstack/service-analytics 9 175.18 220.50 352.43 2.01× 440.54
@objectstack/hono 11 18.29 29.25 36.79 2.01× 45.99
@objectstack/plugin-pinyin-search 8 25.27 41.80 49.89 1.97× 62.37
@objectstack/service-cache 12 1.51 1.98 2.95 1.95× 3.69
@objectstack/driver-sqlite-wasm 8 50.64 70.39 98.51 1.95× 123.14
@objectstack/embedder-openai 12 3.77 4.91 7.28 1.93× 9.10
@objectstack/service-queue 8 34.50 52.46 66.60 1.93× 83.25
create-objectstack 12 16.12 23.58 30.71 1.91× 38.40
@objectstack/metadata 7 82.41 126.74 155.23 1.88× 194.04
@objectstack/observability 6 1.80 2.69 3.39 1.88× 4.24
@objectstack/service-sms 10 20.45 24.87 37.63 1.84× 47.04
@objectstack/plugin-webhooks 9 47.20 70.88 86.43 1.83× 108.05
@objectstack/objectql 8 419.92 590.71 761.82 1.81× 952.27
@objectstack/service-datasource 9 56.96 85.56 103.14 1.81× 128.93
@objectstack/rest 8 388.85 542.95 702.73 1.81× 878.41
@objectstack/plugin-sharing 9 104.76 117.27 188.42 1.80× 235.53
@objectstack/driver-turso 8 121.30 191.66 217.89 1.80× 272.37
@objectstack/service-storage 9 93.14 130.79 166.62 1.79× 208.28
@objectstack/metadata-protocol 9 345.35 489.35 615.76 1.78× 769.71
@objectstack/formula 6 25.68 28.61 45.56 1.77× 56.95
@objectstack/lint 9 150.58 170.22 265.74 1.76× 332.18
@objectstack/example-todo 11 41.63 66.07 71.07 1.71× 88.84
@objectstack/plugin-security 9 225.59 329.99 379.54 1.68× 474.43
@objectstack/service-settings 9 75.81 92.33 126.04 1.66× 157.56
@objectstack/plugin-dev 11 42.61 63.57 70.37 1.65× 87.97
@objectstack/trigger-schedule 9 35.07 42.08 57.92 1.65× 72.40
@objectstack/core 7 74.03 85.40 121.13 1.64× 151.42
@objectstack/vitest-filter-preflight 5 14.17 19.75 23.14 1.63× 28.93
@objectstack/driver-memory 8 87.96 110.29 137.30 1.56× 171.63
@objectstack/knowledge-ragflow 12 1.75 2.52 2.72 1.56× 3.40
@objectstack/example-showcase 10 99.67 142.11 153.63 1.54× 192.05
@objectstack/mcp 9 56.85 73.97 86.53 1.52× 108.17
@objectstack/service-cluster-redis 12 14.80 20.59 22.40 1.51× 28.00
@objectstack/plugin-hono-server 8 41.64 52.24 62.88 1.51× 78.61
@objectstack/sdui-parser 3 2.92 3.66 4.14 1.42× 5.18
@objectstack/service-messaging 9 94.30 130.76 133.52 1.42× 166.91
@objectstack/types 11 18.31 24.63 25.63 1.40× 32.05
@objectstack/service-automation 10 325.97 429.69 445.67 1.37× 557.10
@objectstack/organizations 10 81.71 102.91 110.32 1.35× 137.91
@objectstack/plugin-audit 9 110.50 141.61 148.74 1.35× 185.93
@objectstack/plugin-email 9 71.33 82.87 95.95 1.35× 119.94
@objectstack/cli 10 1730.23 2109.45 2294.49 1.33× 2868.12
@objectstack/driver-sql 8 273.11 340.53 360.60 1.32× 450.76
@objectstack/connector-slack 10 33.61 42.85 44.36 1.32× 55.45
@objectstack/spec 4 1156.48 1408.28 1522.84 1.32× 1903.55
@objectstack/metadata-fs 5 40.62 45.66 49.06 1.21× 61.33

Measured per-shard suite time on the newest run in the set

1: 434s  |  2: 1055s  |  3: 1081s  |  4: 1256s  |  5: 788s  |  6: 805s

Predicted bins, before and after

BEFORE  partition-test-shards: self-test OK (72 measured packages -> 74 shard items, 6 shards, max/mean 1.00x <= 1.3x, floor 1147s, bins 1772.63/1771.02/1772.63/1770.95/1771.09/1772.46s within the 1772.65s density cap, file-level slices: @objectstack/cli x3)
AFTER   partition-test-shards: self-test OK (72 measured packages -> 74 shard items, 6 shards, max/mean 1.00x <= 1.3x, floor 1408s, bins 1870.13/1870.41/1872.28/1870.02/1871.88/1871.92s within the 2109.45s density cap, file-level slices: @objectstack/cli x3)

No checks will start on this PR by themselves

It was opened with the Actions GITHUB_TOKEN, and GitHub's recursion guard means a
PR opened that way triggers no workflow runs. Push any commit to the branch, or close
and reopen the PR, to start CI.

Refs #16464, #16173, #16222.

Regenerated by .github/workflows/shard-timings-refresh.yml from the test-core-run-summary artifacts of 12 accumulated run(s) (38195222269 38192273698 38186537664 38178693315 38174616574 38170438819 38166241661 38162059938 38157849210 38153696467 38149530770 38145479058), newest 38195222269 at eab7236. Generated, never hand-edited.
@objectstack-fleet
objectstack-fleet Bot added this pull request to the merge queue Oct 12, 2026
Merged via the queue into main with commit 1bd612b Oct 12, 2026
32 checks passed
@objectstack-fleet
objectstack-fleet Bot deleted the claude/shard-timings-refresh-38195222269 branch October 12, 2026 03:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/l skip-changeset PR has no user-facing published change; bypasses the changeset gate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant