Skip to content

chore(entity-caching): benchmark suite and dev tooling (6/6)#2954

Draft
SkArchon wants to merge 8 commits into
milinda/entity-caching-3-playground-studiofrom
milinda/entity-caching-4-benchmark-docs-tooling
Draft

chore(entity-caching): benchmark suite and dev tooling (6/6)#2954
SkArchon wants to merge 8 commits into
milinda/entity-caching-3-playground-studiofrom
milinda/entity-caching-4-benchmark-docs-tooling

Conversation

@SkArchon

Copy link
Copy Markdown
Contributor

Replaces #2947, which was auto-closed as merged when a bad force-push momentarily collapsed the stack branches onto one commit. Same content, same stack position.

Part 6 of 6 — split out from #2777. Stacked on the playground/studio PR.

What's included

  • benchmark: k6 cache-demo scenarios, fixtures, response-equivalence verification, Redis/pprof capture scripts, suite runner + tests
  • perf(router): no-op tracer provider when tracing has no realistic export destination (no graph token + only the default Cosmo Cloud exporter) — benchmark-motivated (~60% of allocations at 50 VUs were span work exporting to nowhere)
  • root Makefile targets and .gitignore entries for the demo/benchmark stacks
  • CLAUDE.md session notes and composition meta-docs (composition/CLAUDE.md, AGENTS.md, COMPOSITION_CONVENTIONS.md)

🤖 Generated with Claude Code

Milinda Dias and others added 8 commits June 11, 2026 00:48
…tooling

Extracted from jensneuse/entity-caching-v2 (PR #2777) — supporting material,
stacked on entity-caching-3-playground-studio.

- benchmark: k6 cache-demo scenarios, fixtures, response-equivalence verification,
  Redis/pprof capture scripts, suite runner + tests
- docs/entity-caching: configuration, directives, analytics + RFC, engineering
  brief, demo guide, REQUEST_SCOPED.md, and the self-contained pre-release
  testing kit (docker-compose, Yoga subgraph, smoke-test scripts)
- cli/cachegraph-cachedemo: composition fixtures for the cache demo
- root Makefile targets and .gitignore entries for the demo/benchmark stacks
- CLAUDE.md session notes and PLAN.md working plan (PLAN.md likely should be
  dropped before merge)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Unreferenced wgc compose working directory; duplicates demo/config-cache-only.json
and the subgraph SDLs in demo/pkg/subgraphs — demo/Makefile's compose-cache target
is the canonical compose path.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Keeps the working plan with the rest of the entity caching docs instead of
at the repo root.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Removes docs/entity-caching (incl. the PR-checkout-based pre-release testing kit
and PLAN.md) and docs/REQUEST_SCOPED.md. The kit is tied to PR #2777's source
branch and becomes obsolete once the feature ships; the remaining docs can be
reintroduced separately if wanted. Pre-existing files under docs/ are untouched.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…on PR

composition/CLAUDE.md, AGENTS.md, and COMPOSITION_CONVENTIONS.md are agent/dev
working notes, not feature code — relocated from the composition+proto PR to
keep that diff reviewable.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…xport destination

Moved here from the router PR — this is a general tracing optimization, not
entity caching. Motivated by benchmarking the cache demo: with tracing enabled
by default, no graph token, and only the auto-inserted Cosmo Cloud exporter,
the router records 100%-sampled spans and runs the BatchSpanProcessor for an
export that goes nowhere (~60% of allocations at 50 sustained VUs were OTel
span work). Keeping the NeverSample placeholder provider makes IsRecording()
false and short-circuits all span work.

Recording still happens when a graph token is set, a custom exporter endpoint
is configured, or a test memory exporter is installed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
composition-go was removed on main (#2830); the compose path is wgc from the
workspace (consuming composition's built dist). Also reflect the
router-tests/entitycaching package rename.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 73394a6d-43b8-4e1b-bbcb-a526d1ce91d4

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

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

@codecov

codecov Bot commented Jun 10, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 42.85714% with 20 lines in your changes missing coverage. Please review.
✅ Project coverage is 44.89%. Comparing base (4d87678) to head (1316bd8).

Files with missing lines Patch % Lines
router/pkg/trace/config.go 0.00% 15 Missing ⚠️
router/core/router.go 75.00% 2 Missing and 3 partials ⚠️
Additional details and impacted files
@@                              Coverage Diff                               @@
##           milinda/entity-caching-3-playground-studio    #2954      +/-   ##
==============================================================================
- Coverage                                       46.22%   44.89%   -1.34%     
==============================================================================
  Files                                            1121     1101      -20     
  Lines                                          158932   154457    -4475     
  Branches                                        11122    10123     -999     
==============================================================================
- Hits                                            73464    69341    -4123     
+ Misses                                          83515    83158     -357     
- Partials                                         1953     1958       +5     
Files with missing lines Coverage Δ
router/core/router.go 66.24% <75.00%> (-0.45%) ⬇️
router/pkg/trace/config.go 55.93% <0.00%> (-19.07%) ⬇️

... and 46 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions

Copy link
Copy Markdown

Router image scan failed

❌ Security vulnerabilities found in image:

ghcr.io/wundergraph/cosmo/router:sha-96b34a7ad610c2b77f8b958a28fe1466768d89dc

Please check the security vulnerabilities found in the PR.

If you believe this is a false positive, please add the vulnerability to the .trivyignore file and re-run the scan.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant