Skip to content

docs: Rename oracle guide to Oracle Testing Rubric - #2197

Merged
KyleAMathews merged 1 commit into
mainfrom
codex/oracle-rubric-rename
Oct 16, 2026
Merged

KyleAMathews merged 1 commit into
mainfrom
codex/oracle-rubric-rename

Conversation

@KyleAMathews

@KyleAMathews KyleAMathews commented Oct 16, 2026 •

Copy link
Copy Markdown
Collaborator

🎯 Changes

The oracle guide is now named Oracle Testing Rubric. Its new path makes its role as the source of oracle testing requirements clear.

The 14 numbered requirements and their explanations stay the same. Contributor guidance, agent skills, coverage notes, and review documents now use the new path.

🔬 Oracle Coverage

This PR changes documentation names and links. It changes no runtime behavior or oracle law. The coverage map points to the renamed rubric. No executable oracle applies to this rename.

✅ Checklist

  • I have tested this code locally with pnpm test.

The full local suite was not run. I compared the old and new rubric, checked the updated relative Markdown links, checked formatting, and ran git diff --check. CI runs the repository tests.

🚀 Release Impact

  • This change affects published code, and I have generated a changeset.
  • This change is docs/CI/dev-only (no release).

Summary by CodeRabbit

  • Documentation
    • Updated contributor and review guidance to reference the Oracle Testing Rubric.
    • Clarified that historical entries in the oracle test notes are archived reports and audits.
    • Updated related documentation references to the rubric.

@changeset-bot

changeset-bot Bot commented Oct 16, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: ab192b2

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@coderabbitai

coderabbitai Bot commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 600f09b7-9af9-4950-b6e2-1cc8a0989bcb
📥 Commits

Reviewing files that changed from the base of the PR and between 468db85 and ab192b2.

📒 Files selected for processing: 15
  • .agents/skills/oracle-authoring/SKILL.md
  • .agents/skills/oracle-review/SKILL.md
  • AGENTS.md
  • CONTRIBUTING.md
  • docs/contributing/instruments/index.md
  • docs/contributing/instruments/mutant-gap-hunt.md
  • docs/contributing/oracle-coverage.md
  • docs/contributing/oracle-reviews/2026-09-25-query-readiness.md
  • docs/contributing/oracle-reviews/code-weight-draft-proxy.md
  • docs/contributing/oracle-reviews/issue-2034-design/model.md
  • docs/contributing/oracle-reviews/issue-2071-refused-insert.md
  • docs/contributing/oracle-rubric.md
  • docs/contributing/oracle-test-notes.md
  • packages/db-ivm/tests/incrementalization-law-oracle.property.test.ts
  • packages/query-db-collection/tests/cursor-pagination/LOSS-AUDIT.md

Included review availability: This review used your included allowance. Your plan provides up to 8 included reviews per hour; 3 remain after this review.

📝 Walkthrough

The Oracle Testing Rubric replaces the former oracle tests guide title. Related guidance, review records, and test comments now link to oracle-rubric.md.

Changes: Oracle rubric references

Layer / File(s) Summary
Rubric naming and companion references
docs/contributing/oracle-rubric.md, docs/contributing/oracle-test-notes.md
The rubric title and conformance-audit filename change. The companion notes link to the rubric and describe historical entries as archived reports and audits.
Guidance and audit citations
.agents/skills/*, AGENTS.md, CONTRIBUTING.md, docs/contributing/*, packages/*/tests/*
Oracle guidance, review records, audit notes, and a test comment now cite the Oracle Testing Rubric.

Priority: ⬇️ Low

Estimated code review effort: 1 (Trivial) | ~5 minutes

Change: Other

Merge Risk: ⚪ Minimal · up to ab192

This change updates the rubric name and related references without an indicated product behavior change or unresolved merge risk.

Pre-merge checks: Passed 5
Check name Status Explanation
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Title check Passed The title clearly and concisely describes the main change: renaming the oracle guide to Oracle Testing Rubric.
Description check Passed The description includes all required sections. It explains the documentation-only change, addresses oracle coverage, states that the local test suite was not run, and identifies the release impact as…
Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1 files. (14 skipped: 14 unsupported.)

Full details: Description check

Explanation

The description includes all required sections. It explains the documentation-only change, addresses oracle coverage, states that the local test suite was not run, and identifies the release impact as docs-only.

✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown
Contributor

Size Change: 0 B

Total Size: 218 kB

ℹ️ View Unchanged
Filename Size
packages/db/dist/esm/client.js 4.22 kB
packages/db/dist/esm/collection-options-brand.js 219 B
packages/db/dist/esm/collection-options.js 258 B
packages/db/dist/esm/collection/change-events.js 1.76 kB
packages/db/dist/esm/collection/changes.js 2.96 kB
packages/db/dist/esm/collection/cleanup-queue.js 901 B
packages/db/dist/esm/collection/config-errors.js 547 B
packages/db/dist/esm/collection/events.js 481 B
packages/db/dist/esm/collection/index.js 5.27 kB
packages/db/dist/esm/collection/indexes.js 2.3 kB
packages/db/dist/esm/collection/lifecycle.js 2.94 kB
packages/db/dist/esm/collection/mutations.js 2.99 kB
packages/db/dist/esm/collection/state.js 7.16 kB
packages/db/dist/esm/collection/subscription.js 8.9 kB
packages/db/dist/esm/collection/sync.js 5.4 kB
packages/db/dist/esm/collection/validate-config.js 1.17 kB
packages/db/dist/esm/deferred.js 207 B
packages/db/dist/esm/error-message.js 642 B
packages/db/dist/esm/errors.js 6.53 kB
packages/db/dist/esm/event-emitter.js 1.06 kB
packages/db/dist/esm/index.js 4.52 kB
packages/db/dist/esm/indexed-db-wrapper.js 1.91 kB
packages/db/dist/esm/indexed-db.js 3.7 kB
packages/db/dist/esm/indexes/auto-index.js 924 B
packages/db/dist/esm/indexes/base-index.js 1.92 kB
packages/db/dist/esm/indexes/basic-index.js 1.93 kB
packages/db/dist/esm/indexes/btree-index.js 1.62 kB
packages/db/dist/esm/indexes/index-registry.js 916 B
packages/db/dist/esm/indexes/reverse-index.js 1.01 kB
packages/db/dist/esm/live-query-adapter.js 338 B
packages/db/dist/esm/live-query-observer.js 4.8 kB
packages/db/dist/esm/live-query-options.js 1.41 kB
packages/db/dist/esm/live-query-window-controller.js 4.27 kB
packages/db/dist/esm/local-only.js 1.08 kB
packages/db/dist/esm/local-storage.js 3.93 kB
packages/db/dist/esm/optimistic-action.js 359 B
packages/db/dist/esm/paced-mutations.js 1.11 kB
packages/db/dist/esm/persisted-readiness.js 195 B
packages/db/dist/esm/proxy.js 3.51 kB
packages/db/dist/esm/query/builder/clone-query.js 849 B
packages/db/dist/esm/query/builder/functions.js 1.56 kB
packages/db/dist/esm/query/builder/index.js 7.48 kB
packages/db/dist/esm/query/builder/query-ir.js 312 B
packages/db/dist/esm/query/builder/ref-proxy-identity.js 292 B
packages/db/dist/esm/query/builder/ref-proxy.js 1.67 kB
packages/db/dist/esm/query/builder/wrapper-identity.js 221 B
packages/db/dist/esm/query/compiler/evaluators.js 2.51 kB
packages/db/dist/esm/query/compiler/expressions.js 603 B
packages/db/dist/esm/query/compiler/group-by.js 4.48 kB
packages/db/dist/esm/query/compiler/index.js 10.3 kB
packages/db/dist/esm/query/compiler/joins.js 3.42 kB
packages/db/dist/esm/query/compiler/lazy-targets.js 1.11 kB
packages/db/dist/esm/query/compiler/order-by.js 2.8 kB
packages/db/dist/esm/query/compiler/parent-routes.js 319 B
packages/db/dist/esm/query/compiler/query-equivalence.js 568 B
packages/db/dist/esm/query/compiler/route-metadata.js 1.24 kB
packages/db/dist/esm/query/compiler/select.js 1.5 kB
packages/db/dist/esm/query/effect.js 5.36 kB
packages/db/dist/esm/query/equality-conjunct.js 486 B
packages/db/dist/esm/query/equality-value-identity.js 735 B
packages/db/dist/esm/query/expression-helpers.js 1.61 kB
packages/db/dist/esm/query/ir-stable-identity.js 4.2 kB
packages/db/dist/esm/query/ir.js 2.2 kB
packages/db/dist/esm/query/join-conditions.js 257 B
packages/db/dist/esm/query/live-query-collection.js 391 B
packages/db/dist/esm/query/live/bucket-facade-adapter.js 3.17 kB
packages/db/dist/esm/query/live/collection-config-builder.js 6.84 kB
packages/db/dist/esm/query/live/collection-registry.js 264 B
packages/db/dist/esm/query/live/collection-subscriber.js 2.28 kB
packages/db/dist/esm/query/live/graph-scheduler.js 305 B
packages/db/dist/esm/query/live/internal.js 145 B
packages/db/dist/esm/query/live/materialized-pipeline.js 2.39 kB
packages/db/dist/esm/query/live/ordered-source-loader.js 5.35 kB
packages/db/dist/esm/query/live/subset-demand-controller.js 1.73 kB
packages/db/dist/esm/query/live/utils.js 1.35 kB
packages/db/dist/esm/query/optimizer.js 2.95 kB
packages/db/dist/esm/query/pooled-live-query.js 4.13 kB
packages/db/dist/esm/query/query-once.js 359 B
packages/db/dist/esm/query/runtime-reference-identity.js 630 B
packages/db/dist/esm/query/subset-dedupe.js 493 B
packages/db/dist/esm/scheduler.js 1.23 kB
packages/db/dist/esm/SortedMap.js 1.6 kB
packages/db/dist/esm/strategies/commit-completion.js 156 B
packages/db/dist/esm/strategies/debounceStrategy.js 658 B
packages/db/dist/esm/strategies/queueStrategy.js 523 B
packages/db/dist/esm/strategies/serial-pacer.js 486 B
packages/db/dist/esm/strategies/throttleStrategy.js 738 B
packages/db/dist/esm/sync-persistence.js 626 B
packages/db/dist/esm/sync-receipt.js 211 B
packages/db/dist/esm/transaction-commit-work.js 351 B
packages/db/dist/esm/transactions.js 4.61 kB
packages/db/dist/esm/utils.js 1.67 kB
packages/db/dist/esm/utils/array-utils.js 270 B
packages/db/dist/esm/utils/browser-polyfills.js 304 B
packages/db/dist/esm/utils/btree.js 3.02 kB
packages/db/dist/esm/utils/callbacks.js 174 B
packages/db/dist/esm/utils/comparison.js 1.94 kB
packages/db/dist/esm/utils/cursor.js 753 B
packages/db/dist/esm/utils/error.js 262 B
packages/db/dist/esm/utils/get-or-create.js 155 B
packages/db/dist/esm/utils/index-optimization.js 2.58 kB
packages/db/dist/esm/utils/source-record.js 140 B
packages/db/dist/esm/utils/type-guards.js 230 B
packages/db/dist/esm/utils/uuid.js 530 B
packages/db/dist/esm/virtual-props.js 413 B
packages/react-db/dist/esm/DbProvider.js 317 B
packages/react-db/dist/esm/development.js 190 B
packages/react-db/dist/esm/HydrationBoundary.js 263 B
packages/react-db/dist/esm/index.js 330 B
packages/react-db/dist/esm/live-query-internals.js 282 B
packages/react-db/dist/esm/source-id-bindings.js 746 B
packages/react-db/dist/esm/useLiveInfiniteQuery.js 2.15 kB
packages/react-db/dist/esm/useLiveQuery.js 3.34 kB
packages/react-db/dist/esm/useLiveQueryEffect.js 504 B
packages/react-db/dist/esm/useLiveSuspenseQuery.js 1.33 kB
packages/react-db/dist/esm/usePacedMutations.js 429 B

compressed-size-action::db-and-react-package-size

@pkg-pr-new

pkg-pr-new Bot commented Oct 16, 2026

Copy link
Copy Markdown
More templates

@tanstack/angular-db

npm i https://pkg.pr.new/@tanstack/angular-db@2197

@tanstack/browser-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/browser-db-sqlite-persistence@2197

@tanstack/capacitor-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/capacitor-db-sqlite-persistence@2197

@tanstack/cloudflare-durable-objects-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/cloudflare-durable-objects-db-sqlite-persistence@2197

@tanstack/db

npm i https://pkg.pr.new/@tanstack/db@2197

@tanstack/db-ivm

npm i https://pkg.pr.new/@tanstack/db-ivm@2197

@tanstack/db-sqlite-persistence-core

npm i https://pkg.pr.new/@tanstack/db-sqlite-persistence-core@2197

@tanstack/electric-db-collection

npm i https://pkg.pr.new/@tanstack/electric-db-collection@2197

@tanstack/electron-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/electron-db-sqlite-persistence@2197

@tanstack/expo-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/expo-db-sqlite-persistence@2197

@tanstack/node-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/node-db-sqlite-persistence@2197

@tanstack/offline-transactions

npm i https://pkg.pr.new/@tanstack/offline-transactions@2197

@tanstack/powersync-db-collection

npm i https://pkg.pr.new/@tanstack/powersync-db-collection@2197

@tanstack/query-db-collection

npm i https://pkg.pr.new/@tanstack/query-db-collection@2197

@tanstack/react-db

npm i https://pkg.pr.new/@tanstack/react-db@2197

@tanstack/react-native-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/react-native-db-sqlite-persistence@2197

@tanstack/react-router-with-db

npm i https://pkg.pr.new/@tanstack/react-router-with-db@2197

@tanstack/rxdb-db-collection

npm i https://pkg.pr.new/@tanstack/rxdb-db-collection@2197

@tanstack/solid-db

npm i https://pkg.pr.new/@tanstack/solid-db@2197

@tanstack/svelte-db

npm i https://pkg.pr.new/@tanstack/svelte-db@2197

@tanstack/tauri-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/tauri-db-sqlite-persistence@2197

@tanstack/trailbase-db-collection

npm i https://pkg.pr.new/@tanstack/trailbase-db-collection@2197

@tanstack/vue-db

npm i https://pkg.pr.new/@tanstack/vue-db@2197

commit: ab192b2

@github-actions

Copy link
Copy Markdown
Contributor

Incremental update benchmark

Comparing b152a8ad (this PR) against 468db85f (base). Write times are per-write medians over 100 iterations (20 warmup writes). Cold hydrate is one timed first load of each query.

Overall median write time vs base: 1.00× · cold hydrate time: 1.04× (geometric mean of per-case ratios; lower is faster).

Writes: 2 regression(s), 2 improvement(s) (threshold: ±20% and >0.05ms).

Cold hydrate: 2 regression(s), 0 improvement(s) (threshold: ±50% and >5ms).

Per-case flags are noisy on shared runners. Read the geometric means first.

Writes

Query Δ median write time (geomean) Best case Worst case Flags
list: newest 50 open -0.8% -36.9% +63.1% —
list + author +1.8% -20.8% +63.6% 1 🔴
list + comment count +2.4% -20.2% +59.8% 1 🔴 1 🟢
list + 3 recent comments -2.4% -13.7% +3.5% —
issue detail + comments -1.5% -45.7% +38.0% 1 🟢

Cold hydrate

Query Δ cold hydrate time (geomean) Best case Worst case Flags
list: newest 50 open +0.4% -69.1% +1007.3% 1 🔴
list + author +1.8% -29.0% +29.4% —
list + comment count +14.9% -13.1% +85.3% 1 🔴
list + 3 recent comments +5.1% -19.4% +64.1% —
issue detail + comments +4.2% -17.2% +47.7% —

Each row aggregates the 14.4 scale/index/write-mode configurations of that query; per-configuration tables below.

100 rows/collection | source indexes: none | synced writes — geomean 0.97×, cold 0.96×, 1 change(s)
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.195ms 0.210ms +7.5% 0.325ms 0.348ms +7.3% 13.264ms 15.587ms +17.5%
list: newest 50 open 0.462ms 0.478ms +3.5% 0.723ms 0.867ms +19.9% 3.050ms 2.710ms -11.1%
list + author 0.200ms 0.197ms -1.6% 0.341ms 0.351ms +3.1% 8.687ms 8.729ms +0.5%
list + comment count 0.413ms 0.329ms -20.2% 0.629ms 0.539ms -14.3% 🟢 12.279ms 12.160ms -1.0%
list + 3 recent comments 0.229ms 0.219ms -4.5% 0.369ms 0.404ms +9.4% 11.113ms 8.957ms -19.4%
issue detail + comments 0.154ms 0.157ms +1.7% 0.277ms 0.289ms +4.3% 1.657ms 1.567ms -5.4%
100 rows/collection | source indexes: none | optimistic writes — geomean 1.03×, cold 1.00×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.137ms 0.136ms -0.7% 0.218ms 0.227ms +4.1% 2.850ms 2.671ms -6.3%
list: newest 50 open 0.092ms 0.090ms -2.2% 0.160ms 0.167ms +4.3% 1.956ms 1.551ms -20.7%
list + author 0.155ms 0.154ms -0.1% 0.259ms 0.260ms +0.6% 3.270ms 3.936ms +20.4%
list + comment count 0.230ms 0.225ms -2.3% 0.371ms 0.406ms +9.5% 3.595ms 3.975ms +10.6%
list + 3 recent comments 0.143ms 0.130ms -8.7% 0.255ms 0.282ms +10.9% 8.574ms 9.175ms +7.0%
issue detail + comments 0.115ms 0.159ms +38.0% 0.222ms 0.242ms +9.0% 1.017ms 0.991ms -2.6%
100 rows/collection | source indexes: manual | synced writes — geomean 0.91×, cold 0.90×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.148ms 0.104ms -29.5% 0.211ms 0.141ms -33.3% 3.152ms 2.902ms -7.9%
list: newest 50 open 0.421ms 0.430ms +2.2% 0.732ms 0.651ms -11.0% 1.688ms 1.393ms -17.5%
list + author 0.154ms 0.122ms -20.8% 0.254ms 0.196ms -22.8% 5.423ms 3.853ms -29.0%
list + comment count 0.243ms 0.241ms -1.2% 0.402ms 0.447ms +11.2% 4.634ms 4.025ms -13.1%
list + 3 recent comments 0.163ms 0.160ms -1.6% 0.214ms 0.212ms -1.2% 4.434ms 4.260ms -3.9%
issue detail + comments 0.123ms 0.129ms +4.8% 0.234ms 0.256ms +9.4% 0.509ms 0.595ms +16.8%
100 rows/collection | source indexes: manual | optimistic writes — geomean 1.00×, cold 1.04×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.106ms 0.104ms -1.4% 0.174ms 0.147ms -15.9% 1.335ms 2.939ms +120.1%
list: newest 50 open 0.083ms 0.085ms +2.6% 0.147ms 0.179ms +21.7% 2.909ms 0.898ms -69.1%
list + author 0.135ms 0.134ms -1.0% 0.236ms 0.217ms -7.8% 2.969ms 2.626ms -11.5%
list + comment count 0.200ms 0.197ms -1.2% 0.322ms 0.328ms +1.9% 2.744ms 3.005ms +9.5%
list + 3 recent comments 0.123ms 0.123ms +0.4% 0.201ms 0.207ms +3.1% 4.915ms 8.062ms +64.1%
issue detail + comments 0.103ms 0.103ms -0.1% 0.171ms 0.171ms -0.3% 0.491ms 0.563ms +14.6%
1,000 rows/collection | source indexes: none | synced writes — geomean 0.83×, cold 1.00×, 2 change(s)
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.130ms 0.082ms -36.9% 0.167ms 0.171ms +1.9% 11.821ms 9.419ms -20.3%
list: newest 50 open 1.114ms 1.095ms -1.7% 2.151ms 2.103ms -2.2% 8.729ms 5.969ms -31.6%
list + author 0.104ms 0.104ms +0.2% 0.133ms 0.195ms +46.3% 18.873ms 20.612ms +9.2%
list + comment count 0.188ms 0.196ms +4.4% 0.280ms 0.322ms +14.9% 10.182ms 15.621ms +53.4% 🔴
list + 3 recent comments 0.208ms 0.192ms -7.7% 0.324ms 0.323ms -0.2% 9.661ms 12.505ms +29.4%
issue detail + comments 0.179ms 0.097ms -45.7% 0.268ms 0.155ms -42.2% 🟢 1.466ms 1.214ms -17.2%
1,000 rows/collection | source indexes: none | optimistic writes — geomean 0.98×, cold 0.91×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.133ms 0.113ms -15.2% 0.254ms 0.224ms -11.7% 8.821ms 5.218ms -40.8%
list: newest 50 open 0.064ms 0.066ms +3.3% 0.117ms 0.130ms +11.4% 7.667ms 6.692ms -12.7%
list + author 0.125ms 0.124ms -1.4% 0.176ms 0.169ms -4.4% 19.156ms 20.124ms +5.1%
list + comment count 0.267ms 0.256ms -4.1% 0.370ms 0.391ms +5.7% 9.452ms 11.696ms +23.7%
list + 3 recent comments 0.112ms 0.115ms +3.1% 0.141ms 0.187ms +32.4% 10.468ms 10.374ms -0.9%
issue detail + comments 0.103ms 0.104ms +1.7% 0.148ms 0.134ms -9.5% 1.499ms 1.285ms -14.3%
1,000 rows/collection | source indexes: manual | synced writes — geomean 0.99×, cold 1.15×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.075ms 0.078ms +4.1% 0.098ms 0.104ms +7.1% 1.023ms 1.022ms -0.0%
list: newest 50 open 0.333ms 0.319ms -4.5% 0.588ms 0.590ms +0.3% 0.795ms 0.819ms +3.0%
list + author 0.115ms 0.109ms -5.0% 0.207ms 0.184ms -11.2% 1.699ms 1.708ms +0.5%
list + comment count 0.219ms 0.214ms -2.2% 0.324ms 0.266ms -17.9% 3.066ms 5.682ms +85.3%
list + 3 recent comments 0.144ms 0.146ms +1.3% 0.175ms 0.199ms +13.7% 5.131ms 5.811ms +13.2%
issue detail + comments 0.105ms 0.109ms +3.5% 0.136ms 0.146ms +7.2% 0.356ms 0.381ms +7.0%
1,000 rows/collection | source indexes: manual | optimistic writes — geomean 1.04×, cold 1.01×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.086ms 0.089ms +2.4% 0.112ms 0.116ms +3.2% 0.773ms 0.746ms -3.5%
list: newest 50 open 0.071ms 0.072ms +1.2% 0.128ms 0.113ms -11.5% 0.806ms 0.990ms +22.7%
list + author 0.115ms 0.119ms +3.7% 0.180ms 0.217ms +20.4% 2.066ms 1.846ms -10.6%
list + comment count 0.193ms 0.207ms +7.2% 0.328ms 0.352ms +7.4% 2.693ms 2.642ms -1.9%
list + 3 recent comments 0.118ms 0.123ms +3.5% 0.157ms 0.165ms +4.9% 3.837ms 3.765ms -1.9%
issue detail + comments 0.103ms 0.108ms +5.4% 0.139ms 0.185ms +33.7% 0.383ms 0.405ms +5.7%
10,000 rows/collection | source indexes: none | synced writes — geomean 1.15×, cold 1.03×, 2 change(s)
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.072ms 0.075ms +4.7% 0.097ms 0.102ms +5.8% 76.646ms 73.969ms -3.5%
list: newest 50 open 10.258ms 10.673ms +4.1% 11.041ms 11.524ms +4.4% 68.567ms 76.711ms +11.9%
list + author 0.103ms 0.169ms +63.6% 0.134ms 0.227ms +69.5% 🔴 203.798ms 205.556ms +0.9%
list + comment count 0.200ms 0.319ms +59.8% 0.296ms 0.443ms +49.8% 🔴 78.384ms 81.343ms +3.8%
list + 3 recent comments 0.153ms 0.132ms -13.7% 0.282ms 0.239ms -15.4% 91.297ms 81.247ms -11.0%
issue detail + comments 0.104ms 0.097ms -6.3% 0.197ms 0.163ms -17.2% 9.736ms 11.743ms +20.6%
10,000 rows/collection | source indexes: none | optimistic writes — geomean 1.05×, cold 0.97×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.101ms 0.094ms -6.8% 0.155ms 0.157ms +1.2% 69.312ms 64.025ms -7.6%
list: newest 50 open 0.063ms 0.103ms +63.1% 0.099ms 0.128ms +29.5% 61.615ms 64.609ms +4.9%
list + author 0.120ms 0.117ms -2.2% 0.149ms 0.152ms +2.2% 197.218ms 194.932ms -1.2%
list + comment count 0.225ms 0.210ms -6.5% 0.389ms 0.253ms -34.9% 80.636ms 75.114ms -6.8%
list + 3 recent comments 0.117ms 0.113ms -2.9% 0.156ms 0.155ms -0.6% 70.799ms 70.652ms -0.2%
issue detail + comments 0.107ms 0.105ms -1.9% 0.138ms 0.137ms -1.2% 5.523ms 5.172ms -6.3%
10,000 rows/collection | source indexes: manual | synced writes — geomean 1.04×, cold 1.05×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.092ms 0.101ms +9.5% 0.146ms 0.151ms +3.9% 3.410ms 2.199ms -35.5%
list: newest 50 open 0.950ms 0.952ms +0.2% 1.535ms 1.496ms -2.5% 1.658ms 1.744ms +5.2%
list + author 0.106ms 0.106ms +0.2% 0.153ms 0.202ms +32.0% 3.040ms 3.749ms +23.3%
list + comment count 0.218ms 0.235ms +7.9% 0.262ms 0.403ms +54.0% 3.907ms 4.088ms +4.6%
list + 3 recent comments 0.147ms 0.150ms +2.0% 0.196ms 0.252ms +28.7% 4.999ms 5.147ms +3.0%
issue detail + comments 0.112ms 0.116ms +3.8% 0.166ms 0.171ms +2.8% 0.551ms 0.814ms +47.7%
10,000 rows/collection | source indexes: manual | optimistic writes — geomean 1.02×, cold 1.68×, 1 change(s)
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.102ms 0.106ms +4.0% 0.221ms 0.186ms -15.8% 2.187ms 24.214ms +1007.3% 🔴
list: newest 50 open 0.078ms 0.078ms -0.6% 0.125ms 0.104ms -16.5% 1.867ms 1.921ms +2.9%
list + author 0.120ms 0.123ms +2.7% 0.153ms 0.153ms -0.2% 2.680ms 3.468ms +29.4%
list + comment count 0.247ms 0.256ms +3.7% 0.394ms 0.419ms +6.6% 3.385ms 4.952ms +46.3%
list + 3 recent comments 0.129ms 0.131ms +2.0% 0.155ms 0.228ms +47.2% 4.450ms 4.584ms +3.0%
issue detail + comments 0.117ms 0.116ms -0.9% 0.212ms 0.149ms -29.8% 0.583ms 0.581ms -0.4%

Runner: node v24.8.0, linux 6.17.0-1022-azure, AMD EPYC 7763 64-Core Processor. Timings on shared CI runners are noisy; treat small deltas as indicative only.

@KyleAMathews
KyleAMathews merged commit 7d60818 into main Oct 16, 2026
27 checks passed
@KyleAMathews
KyleAMathews deleted the codex/oracle-rubric-rename branch October 16, 2026 20:27
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