Skip to content

Harden parser performance, protocol validation and WebSocket lifecycle - #3

Merged
Lyptik merged 13 commits into
mainfrom
fix/sdk-production-hardening
Sep 30, 2026
Merged

Lyptik merged 13 commits into
mainfrom
fix/sdk-production-hardening

Conversation

@Lyptik

@Lyptik Lyptik commented Sep 30, 2026

Copy link
Copy Markdown
Contributor

Summary

Production-hardening pass for the JS SDK before wider beta use.

Binary parser

  • bulk typed-array path for large point clouds instead of one DataView call per float
  • validates declared point payload size before allocation
  • constrains nested packets/properties to their parent packet boundaries
  • safely skips unknown packet families by declared size
  • keeps unknown property skipping behavior

API correctness

  • only accepts verified protocol V2/V3 layouts
  • Euler rotation getter now rejects quaternion data
  • WebSocket transport ignores delayed events from replaced sockets
  • polling requires an open socket

Regression coverage

  • deterministic Pleiades V2/V3 wire fixtures mirroring current develop writer layout
  • standalone point clouds, cluster + point cloud, intensities, slider/XY/zone point cloud
  • V3 timestamps, UUID/readable ID
  • 100k-point cloud
  • malformed point count / nested boundary
  • unknown future packet family
  • stale WebSocket events and poll-before-open

CI/docs

  • test Node 18/20/22/24 to match engines >=18
  • use npm ci in contributing docs
  • document version guard, rotation semantics, fixture coverage and transport behavior

Intentionally does not address value-range mapping or WSS/HTTPS behavior.

@Lyptik
Lyptik merged commit 115b77c into main Sep 30, 2026
4 checks passed
@github-actions
github-actions Bot deleted the fix/sdk-production-hardening branch September 30, 2026 23:05
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