Skip to main content

changelog.md for @push.rocks/smartvpn

2026-03-29 - 1.8.0 - feat(auth,client-registry)

add Noise IK client authentication with managed client registry and per-client ACL controls

    switch the native tunnel handshake from Noise NK to Noise IK and require client keypairs in client configuration add server-side client registry management APIs for creating, updating, disabling, rotating, listing, and exporting client configs enforce client authorization from the registry during handshake and expose authenticated client metadata in server client info introduce per-client security policies with source/destination ACLs and per-client rate limit settings add Rust ACL matching support for exact IPs, CIDR ranges, wildcards, and IP ranges with test coverage

    2026-03-29 - 1.7.0 - feat(rust-tests)

    add end-to-end WireGuard UDP integration tests and align TypeScript build configuration

    • Add userspace Rust end-to-end tests that validate WireGuard handshake, encryption, peer isolation, and preshared-key data exchange over real UDP sockets.
    • Update the TypeScript build setup by removing the allowimplicitany build flag and explicitly including Node types in tsconfig.
    • Refresh development toolchain versions to support the updated test and build workflow.

    2026-03-29 - 1.6.0 - feat(readme)

    document WireGuard transport support, configuration, and usage examples

    • Expand the README from dual-transport to triple-transport support by adding WireGuard alongside WebSocket and QUIC
    • Add client and server WireGuard examples, including live peer management and .conf generation with WgConfigGenerator
    • Document new WireGuard-related API methods, config fields, transport modes, and security model details

    2026-03-29 - 1.5.0 - feat(wireguard)

    add WireGuard transport support with management APIs and config generation

    • add Rust WireGuard module integration using boringtun and route management through client/server management handlers
    • extend TypeScript client and server configuration schemas with WireGuard-specific options and validation
    • add server-side WireGuard peer management commands including keypair generation, peer add/remove, and peer listing
    • export a WireGuard config generator for producing client and server .conf files
    • add WireGuard-focused test coverage for config validation and config generation

    2026-03-21 - 1.4.1 - fix(readme)

    preserve markdown line breaks in feature list

    • Adds trailing spaces to the README feature list so each highlighted capability renders on its own line.

    2026-03-19 - 1.4.0 - feat(vpn transport)

    add QUIC transport support with auto fallback to WebSocket

    • introduces a transport abstraction in the Rust daemon so client and server can operate over WebSocket or QUIC
    • adds dual-mode server configuration with websocket, quic, and both transport modes plus QUIC idle timeout and listen address options
    • adds client transport selection with auto mode that attempts QUIC first and falls back to WebSocket
    • adds QUIC certificate hash pinning support and required Rust dependencies for QUIC and TLS
    • updates TypeScript interfaces, config validation, tests, and documentation to cover the new transport modes

    2026-03-17 - 1.3.0 - feat(tests,client)

    add flow control and load test coverage and honor configured keepalive intervals

    • Adds end-to-end node tests for client/server flow control, keepalive exchange, connection quality telemetry, rate limiting, concurrent clients, and disconnect tracking.
    • Adds load testing with throttled proxy scenarios to validate behavior under constrained bandwidth and repeated client churn.
    • Updates the Rust client to pass configured keepaliveIntervalSecs into the adaptive keepalive monitor instead of always using defaults.

    2026-03-15 - 1.2.0 - feat(readme)

    document QoS, telemetry, MTU, and rate limiting capabilities in the README

    • Expand the architecture and feature overview to cover adaptive keepalive, telemetry, QoS, rate limiting, and MTU handling
    • Update client and server examples to show new APIs such as getConnectionQuality(), getMtuInfo(), setClientRateLimit(), and getClientTelemetry()
    • Add TypeScript interface documentation for connection quality, MTU info, enriched client statistics, and per-client telemetry

    2026-03-15 - 1.1.0 - feat(rust-core)

    add adaptive keepalive telemetry, MTU handling, and per-client rate limiting APIs

    • adds adaptive keepalive monitoring with RTT, jitter, loss, and link health reporting to client statistics and management endpoints
    • introduces MTU overhead calculation and oversized-packet handling support, plus client MTU info APIs
    • adds token-bucket rate limiting with configurable default limits and server management commands to set, remove, and inspect per-client telemetry
    • extends TypeScript client and server interfaces with connection quality, MTU, and client telemetry methods

    2026-02-27 - 1.0.3 - fix(build)

    add aarch64 linker configuration for cross-compilation

    • Added rust/.cargo/config.toml to configure linker for target aarch64-unknown-linux-gnu
    • Sets linker to 'aarch64-linux-gnu-gcc' to enable cross-compilation to ARM64

    2026-02-27 - 1.0.2 - fix()

    no changes detected - no code or content modifications

    2026-02-27 - 1.0.1 - fix(release)

    bump patch version (no code changes)

    • No changes detected in the provided git diff
    • Current package.json version is 1.0.0
    • Recommend patch bump to 1.0.1 to create a release/trivial update

    2026-02-27 - 1.0.0 - initial release

    Initial commit creating the project repository and baseline files.

    • Initial project scaffold and configuration
    • Repository initialized with base files and metadata