馃悰 Keep screenshot properties separate from options - #355
Open
Robdel12 wants to merge 1 commit into
Open
Conversation
Stop generating viewport metadata and stop filtering option-shaped property names. Keep released local request handling isolated behind an explicit format version so current property bags remain untouched.
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.
Why
propertiesis the user-owned metadata bag. The CLI and framework clients were generating viewport fields inside it, while a broad reserved-name filter could delete legitimate user keys such asthreshold,component, ordeviceScaleFactor. That blurred the public contract and made the API guess which values were user data versus Vizzly settings.The uploaded image already gives Vizzly the dimensions it needs. Sending CSS viewport values adds another conflicting source of truth without improving comparison identity.
Approach
properties; no property name is promoted, filtered, or interpreted as a Vizzly option.threshold,minClusterSize,fullPage,requestTimeout, andbuildId. Framework-specific capture fields remain internal transport data.propertieslocal request shape in one compatibility file. Current clients send a small format version so even a user key literally namedpropertiesis preserved; the compatibility file can be deleted after those older clients are unsupported.Compatibility
The current stable package is 0.35.2 and remains supported by the API-side compatibility path. The 0.35.3 beta formats are handled at their exact behavior boundaries, while new clients use the clean property/options split.
Confidence
The complete CLI suite passes 1,942 tests with 5 expected platform skips. The Ember, Vitest, and Ruby client suites also pass, and the production build, type checks, and lint are clean.