Skip to content

chore(deps): bump @query-doctor/core to 0.25.0 - #227

Merged
veksen merged 1 commit into
mainfrom
chore-core-0-25-0
Aug 12, 2026
Merged

chore(deps): bump @query-doctor/core to 0.25.0#227
veksen merged 1 commit into
mainfrom
chore-core-0-25-0

Conversation

@veksen

@veksen veksen commented Aug 12, 2026

Copy link
Copy Markdown
Member

Goal

Make CI runs collect the per-column extremes that @query-doctor/core@0.25.0 added. Nothing collects them today, so a payload is still a point estimate from a mean and an index candidate is never checked for width.

Site side: Query-Doctor/Site#3955 is the feature, #3961 published core.

What

Before, a statistics dump carried a column's average serialized size. After, it also carries the widest value the sample saw, serialized and as stored.

Two things use them. A payload becomes a range: on this repo's own history query the mean gives 448 KB and the same column's maximum gives 42.5 MB. And a candidate index on a column over 2,704 stored bytes is dropped, because Postgres refuses that key — index row requires 1152048 bytes, maximum size is 8191 on a real row of ci_runs_queries.optimization.

No analyzer code changes. Statistics.dumpStats already does the sampling; the range bump is what lets a run see the version that measures both extremes.

How

"@query-doctor/core": "^0.24.0" becomes "^0.25.0", with the lockfile. A 0.x caret does not cross a minor.

Tests

No new test, since no analyzer code changed. Existing suite passes: 440 tests across 43 files. Typecheck and build clean.

0.25.0 adds `maxSerializedBytes` and `maxStoredBytes` to the statistics
export. The analyzer already calls `Statistics.dumpStats`, so this range
bump is what makes runs collect them.

A payload then reports a range instead of one number from a mean, and a
candidate index on a column too wide for a btree key is dropped.

A 0.x caret does not cross a minor, so ^0.24.0 would never have taken it.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Query Doctor — 6 successful checks

 Cost regression — No query went up more than 5%
 Untested data access — No changed data-access file without a test
 New query — No new queries
 New query with index recommendation — No new query ships an index recommendation
 Schema drift — No schema changes
 High-value nudge — No index or rewrite past the threshold


More details via MCP → get_ci_run({ runId: "019ff691-a99f-718d-9ce2-2a1027d4252f" }) · view run · docs
3 queries read against main on assumed statistics of 10,000,000 rows per table. Sync production stats for costs measured against your real data.

@veksen
veksen merged commit 24be20e into main Aug 12, 2026
6 checks passed
@veksen
veksen deleted the chore-core-0-25-0 branch August 12, 2026 20:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant