You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This file contains 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
This adds some smaller changes to Vision as part of the upcoming default perspective change (from raw => published):
Currently, raw is selected as the default. With these changes, the default becomes "unspecified" (i.e. no perspective param is sent with the request, effecively using the default for the given API version). I can imagine this can be useful for debugging. This also means published will soon become the default.
In accordance with the above, it should then also be possible to select “No perspective” from the dropdown.
With these changes, you'll get today’s date as the default API version. Currently, we’re using the last element in a hard coded array of dates. This means you'll get v2022-03-07 at the moment, and chances are you'll be given an outdated default until we remember to update this list. I can’t think of any issue with using a rolling date here. The default can always be customized on a per-studio basis if that's desirable. Let me know if I've missed a reason we should keep it hard coded.
What to review
Note: This is is ready for review, but not yet ready to merge.
Testing
Tests in this repo is sparse, so please look at the code and give it a go in the preview build.
efps — editor "frames per second". The number of updates assumed to be possible within a second.
Derived from input latency. efps = 1000 / input_latency
Detailed information
🏠 Reference result
The performance result of sanity@latest
Benchmark
latency
p75
p90
p99
blocking time
test duration
article (title)
45ms
49ms
70ms
434ms
946ms
11.6s
article (body)
15ms
20ms
32ms
229ms
386ms
5.7s
article (string inside object)
44ms
47ms
54ms
330ms
546ms
8.1s
article (string inside array)
48ms
52ms
64ms
163ms
475ms
7.7s
recipe (name)
21ms
23ms
28ms
53ms
30ms
7.0s
recipe (description)
19ms
21ms
23ms
31ms
0ms
4.6s
recipe (instructions)
5ms
7ms
8ms
30ms
0ms
3.1s
synthetic (title)
58ms
60ms
76ms
294ms
1318ms
13.3s
synthetic (string inside object)
55ms
58ms
69ms
664ms
1821ms
9.6s
🧪 Experiment result
The performance result of this branch
Benchmark
latency
p75
p90
p99
blocking time
test duration
article (title)
42ms
46ms
71ms
488ms
972ms
12.0s
article (body)
15ms
18ms
22ms
176ms
265ms
5.5s
article (string inside object)
41ms
42ms
45ms
60ms
155ms
7.1s
article (string inside array)
45ms
47ms
54ms
161ms
346ms
7.7s
recipe (name)
25ms
27ms
32ms
54ms
0ms
8.0s
recipe (description)
21ms
22ms
26ms
43ms
15ms
5.1s
recipe (instructions)
5ms
7ms
8ms
24ms
0ms
3.0s
synthetic (title)
53ms
55ms
63ms
315ms
930ms
13.3s
synthetic (string inside object)
50ms
54ms
74ms
465ms
1089ms
8.7s
📚 Glossary
column definitions
benchmark — the name of the test, e.g. "article", followed by the label of the field being measured, e.g. "(title)".
latency — the time between when a key was pressed and when it was rendered. derived from a set of samples. the median (p50) is shown to show the most common latency.
p75 — the 75th percentile of the input latency in the test run. 75% of the sampled inputs in this benchmark were processed faster than this value. this provides insight into the upper range of typical performance.
p90 — the 90th percentile of the input latency in the test run. 90% of the sampled inputs were faster than this. this metric helps identify slower interactions that occurred less frequently during the benchmark.
p99 — the 99th percentile of the input latency in the test run. only 1% of sampled inputs were slower than this. this represents the worst-case scenarios encountered during the benchmark, useful for identifying potential performance outliers.
blocking time — the total time during which the main thread was blocked, preventing user input and UI updates. this metric helps identify performance bottlenecks that may cause the interface to feel unresponsive.
test duration — how long the test run took to complete.
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.
Description
This adds some smaller changes to Vision as part of the upcoming default perspective change (from
raw
=>published
):v2022-03-07
at the moment, and chances are you'll be given an outdated default until we remember to update this list. I can’t think of any issue with using a rolling date here. The default can always be customized on a per-studio basis if that's desirable. Let me know if I've missed a reason we should keep it hard coded.What to review
Note: This is is ready for review, but not yet ready to merge.
Testing
Tests in this repo is sparse, so please look at the code and give it a go in the preview build.
Notes for release
n/a