Docs for Core Player Controllers/Systems - #920
Open
KetanReddy wants to merge 1 commit into
Open
Conversation
Member
Author
|
/docs |
Contributor
Benchmark ResultsComparison against baseline from
|
| Benchmark | Current | Baseline | Change |
|---|---|---|---|
core/player/src/binding/__tests__/parser.bench.ts > parser benchmarks > Resolving binding: foo.bar |
807.95K ops/s | 722.92K ops/s | +11.8% ✅ |
core/player/src/binding/__tests__/parser.bench.ts > parser benchmarks > Resolving binding: foo.pets.1.name |
516.59K ops/s | 541.65K ops/s | -4.6% |
core/player/src/binding/__tests__/parser.bench.ts > parser benchmarks > Resolving binding: foo.pets.01.name |
493.54K ops/s | 490.79K ops/s | +0.6% |
core/player/src/binding/__tests__/parser.bench.ts > parser benchmarks > Resolving binding: foo.pets['01'].name |
483.75K ops/s | 477.60K ops/s | +1.3% |
core/player/src/binding/__tests__/parser.bench.ts > parser benchmarks > Resolving binding: foo.pets[01].name |
524.41K ops/s | 519.91K ops/s | +0.9% |
core/player/src/binding/__tests__/parser.bench.ts > parser benchmarks > Resolving binding: foo.pets[name = "frodo"].type |
290.58K ops/s | 284.75K ops/s | +2.0% |
core/player/src/binding/__tests__/parser.bench.ts > parser benchmarks > Resolving binding: foo.pets["name" = "sprinkles"].type |
236.54K ops/s | 220.52K ops/s | +7.3% ✅ |
core/player/src/binding/__tests__/parser.bench.ts > parser benchmarks > Resolving binding: foo.pets["isDog" = false].type |
289.76K ops/s | 290.37K ops/s | -0.2% |
core/player/src/binding/__tests__/parser.bench.ts > parser benchmarks > Resolving binding: foo.pets["isDog" = true].type |
274.33K ops/s | 309.01K ops/s | -11.2% |
core/player/src/binding/__tests__/parser.bench.ts > binding creation benchmarks > Resolving binding: foo.bar |
562.89K ops/s | 624.16K ops/s | -9.8% |
core/player/src/binding/__tests__/parser.bench.ts > binding creation benchmarks > Resolving binding: foo.pets.1.name |
289.96K ops/s | 388.57K ops/s | -25.4% |
core/player/src/binding/__tests__/parser.bench.ts > binding creation benchmarks > Resolving binding: foo.pets.01.name |
347.85K ops/s | 371.06K ops/s | -6.3% |
core/player/src/binding/__tests__/parser.bench.ts > binding creation benchmarks > Resolving binding: foo.pets['01'].name |
300.28K ops/s | 290.01K ops/s | +3.5% |
core/player/src/binding/__tests__/parser.bench.ts > binding creation benchmarks > Resolving binding: foo.pets[01].name |
350.06K ops/s | 365.25K ops/s | -4.2% |
core/player/src/binding/__tests__/parser.bench.ts > binding creation benchmarks > Resolving binding: foo.pets[name = "frodo"].type |
232.33K ops/s | 232.45K ops/s | -0.0% |
core/player/src/binding/__tests__/parser.bench.ts > binding creation benchmarks > Resolving binding: foo.pets["name" = "sprinkles"].type |
170.28K ops/s | 182.88K ops/s | -6.9% |
core/player/src/binding/__tests__/parser.bench.ts > binding creation benchmarks > Resolving binding: foo.pets["isDog" = false].type |
216.79K ops/s | 223.78K ops/s | -3.1% |
core/player/src/binding/__tests__/parser.bench.ts > binding creation benchmarks > Resolving binding: foo.pets["isDog" = true].type |
230.85K ops/s | 237.78K ops/s | -2.9% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: {{foo}} = 1 + 3 (sync) |
350.12K ops/s | 479.93K ops/s | -27.0% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: {{foo}} = 1 + 3 (async) |
269.40K ops/s | 383.55K ops/s | -29.8% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: conditional(true, true, false) (sync) |
366.22K ops/s | 491.89K ops/s | -25.5% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: conditional(true, true, false) (async) |
401.15K ops/s | 448.21K ops/s | -10.5% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: {{foo}} = conditional({{bar}} > 0, true, false) (sync) |
182.74K ops/s | 225.48K ops/s | -19.0% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: {{foo}} = conditional({{bar}} > 0, true, false) (async) |
124.12K ops/s | 201.47K ops/s | -38.4% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: {{foo}} = conditional(conditional(true = false, false, true), conditional(false = false, true, false), conditional(true = true, false, true)) (sync) |
120.93K ops/s | 170.13K ops/s | -28.9% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: {{foo}} = conditional(conditional(true = false, false, true), conditional(false = false, true, false), conditional(true = true, false, true)) (async) |
99.51K ops/s | 161.73K ops/s | -38.5% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: {{foo}} = await(asyncTestFunction(1)) (sync) |
N/A | N/A | N/A |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: {{foo}} = await(asyncTestFunction(1)) (async) |
273.44K ops/s | 301.22K ops/s | -9.2% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: {{foo}} = asyncTestFunction(1) (sync) |
284.74K ops/s | 345.46K ops/s | -17.6% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: {{foo}} = asyncTestFunction(1) (async) |
235.19K ops/s | 306.73K ops/s | -23.3% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: asyncTestFunction(1) (sync) |
584.30K ops/s | 840.98K ops/s | -30.5% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: asyncTestFunction(1) (async) |
521.41K ops/s | 645.43K ops/s | -19.2% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: {{foo}} = conditional(!{{bar}} == false, await(asyncTestFunction(1)), false) (sync) |
149.89K ops/s | 169.06K ops/s | -11.3% |
core/player/src/expressions/__tests__/performance.bench.ts > Expression Parsing/Execution Benchmark > Parsing: {{foo}} = conditional(!{{bar}} == false, await(asyncTestFunction(1)), false) (async) |
139.51K ops/s | 143.18K ops/s | -2.6% |
core/player/src/view/resolver/__tests__/index.bench.ts > resolver benchmarks > initial resolve |
644.76 ops/s | 653.82 ops/s | -1.4% |
core/player/src/view/resolver/__tests__/index.bench.ts > resolver benchmarks > Resolving from cache |
17.42K ops/s | 21.18K ops/s | -17.8% |
core/player/src/view/resolver/__tests__/index.bench.ts > resolver benchmarks > data changes |
2.46K ops/s | 3.04K ops/s | -19.0% |
core/player/src/view/resolver/__tests__/index.bench.ts > resolver benchmarks > data changes slow |
360.38 ops/s | 655.63 ops/s | -45.0% |
plugins/async-node/core ⚠️
| Benchmark | Current | Baseline | Change |
|---|---|---|---|
plugins/async-node/core/src/__tests__/index.bench.ts > async node benchmarks > Resolve Async Node 1 times |
14.28K ops/s | 14.39K ops/s | -0.8% |
plugins/async-node/core/src/__tests__/index.bench.ts > async node benchmarks > Resolve Async Node 5 times |
13.56K ops/s | 14.03K ops/s | -3.4% |
plugins/async-node/core/src/__tests__/index.bench.ts > async node benchmarks > Resolve Async Node 10 times |
10.29K ops/s | 10.25K ops/s | +0.4% |
plugins/async-node/core/src/__tests__/index.bench.ts > async node benchmarks > Resolve Async Node 50 times |
3.34K ops/s | 3.47K ops/s | -3.7% |
plugins/async-node/core/src/__tests__/index.bench.ts > async node benchmarks > Resolve Async Node 100 times |
1.92K ops/s | 1.85K ops/s | +4.2% |
plugins/async-node/core/src/__tests__/transform.bench.ts > async transform benchmarks > Resolve Async Node 1 times |
5.35K ops/s | 7.71K ops/s | -30.6% |
plugins/async-node/core/src/__tests__/transform.bench.ts > async transform benchmarks > Resolve Async Node 5 times |
5.93K ops/s | 8.80K ops/s | -32.6% |
plugins/async-node/core/src/__tests__/transform.bench.ts > async transform benchmarks > Resolve Async Node 10 times |
4.90K ops/s | 7.61K ops/s | -35.6% |
plugins/async-node/core/src/__tests__/transform.bench.ts > async transform benchmarks > Resolve Async Node 50 times |
2.13K ops/s | 2.85K ops/s | -25.4% |
plugins/async-node/core/src/__tests__/transform.bench.ts > async transform benchmarks > Resolve Async Node 100 times |
1.61K ops/s | 1.66K ops/s | -2.8% |
react/player
| Benchmark | Current | Baseline | Change |
|---|---|---|---|
react/player/src/asset/__tests__/index.bench.tsx > ReactAsset benchmarks > Render asset nested in 1 ReactAssets |
638.46 ops/s | 628.93 ops/s | +1.5% |
react/player/src/asset/__tests__/index.bench.tsx > ReactAsset benchmarks > Bubble errors nested in 1 ReactAssets |
1.17K ops/s | 1.13K ops/s | +3.6% |
react/player/src/asset/__tests__/index.bench.tsx > ReactAsset benchmarks > Render asset nested in 5 ReactAssets |
650.90 ops/s | 629.37 ops/s | +3.4% |
react/player/src/asset/__tests__/index.bench.tsx > ReactAsset benchmarks > Bubble errors nested in 5 ReactAssets |
1.17K ops/s | 1.13K ops/s | +3.5% |
react/player/src/asset/__tests__/index.bench.tsx > ReactAsset benchmarks > Render asset nested in 10 ReactAssets |
650.42 ops/s | 653.51 ops/s | -0.5% |
react/player/src/asset/__tests__/index.bench.tsx > ReactAsset benchmarks > Bubble errors nested in 10 ReactAssets |
933.80 ops/s | 936.46 ops/s | -0.3% |
react/player/src/asset/__tests__/index.bench.tsx > ReactAsset benchmarks > Render asset nested in 50 ReactAssets |
529.24 ops/s | 531.93 ops/s | -0.5% |
react/player/src/asset/__tests__/index.bench.tsx > ReactAsset benchmarks > Bubble errors nested in 50 ReactAssets |
280.64 ops/s | 268.09 ops/s | +4.7% |
react/player/src/asset/__tests__/index.bench.tsx > ReactAsset benchmarks > Render asset nested in 100 ReactAssets |
427.99 ops/s | 403.76 ops/s | +6.0% ✅ |
react/player/src/asset/__tests__/index.bench.tsx > ReactAsset benchmarks > Bubble errors nested in 100 ReactAssets |
132.86 ops/s | 126.76 ops/s | +4.8% |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #920 +/- ##
===========================
===========================
☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
KetanReddy
force-pushed
the
docs/player-core
branch
from
July 30, 2026 00:29
75743f3 to
008ffbc
Compare
KetanReddy
marked this pull request as ready for review
July 30, 2026 20:33
Member
Author
|
/docs |
intuit-svc
added a commit
to player-ui/player-ui.github.io
that referenced
this pull request
Jul 30, 2026
Contributor
Docs PreviewA preview of your PR docs was deployed by CircleCI #40486 on 📖 Docs (View site)
|
KetanReddy
enabled auto-merge
July 30, 2026 21:48
KetanReddy
disabled the stack merge
August 3, 2026 16:20
KetanReddy
force-pushed
the
docs/player-core
branch
from
August 3, 2026 16:43
4a6025d to
18641fa
Compare
KVSRoyal
approved these changes
Aug 4, 2026
sugarmanz
approved these changes
Aug 7, 2026
sugarmanz
left a comment
Member
There was a problem hiding this comment.
Overall looks good — couple nits:
- Would love to see a bit more structured organization of this
- This stuff probably warrants either a subsection or something under the main left nav
Player -> Architecture. I just don't want to put all this in the high touchpoint consumer facing docs and drown them with complex info. Maybe it's fine where it is - IMO the side-panel names should convey intent, not the what. For example, instead of
ViewController & ViewInstance, justView? The details are in the searchable content already, putting them in the sidenav means you need to know what those are to understand what you're going to be reading about.
- This stuff probably warrants either a subsection or something under the main left nav
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Change Type (required)
Indicate the type of change your pull request is:
patchminormajorN/ADoes your PR have any documentation updates?
Release Notes
Added docs for core player systems