Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: stacklok/toolhive
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: stacklok/toolhive
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: issue-266
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 1 commit
  • 4 files changed
  • 1 contributor

Commits on Mar 18, 2026

  1. feat(transport/session): add Redis storage backend (#266)

    Implements RedisStorage — a Redis-backed session.Storage that enables
    session sharing across proxyrunner replicas for horizontal scaling
    (R-VMCP-6). Supports standalone and Sentinel failover modes, optional
    per-connection TLS (including separate master/sentinel configs), and
    relies on Redis key TTLs for expiry rather than a background sweep.
    
    Also activates the previously-unused serializeSession/deserializeSession
    helpers in serialization.go by removing their nolint:unused annotations.
    
    New files:
    - pkg/transport/session/redis_config.go — RedisConfig, SentinelConfig,
      RedisTLSConfig types and default timeout constants
    - pkg/transport/session/storage_redis.go — RedisStorage implementation
    - pkg/transport/session/storage_redis_test.go — full test coverage via
      miniredis (constructor validation, round-trips for all session types,
      TTL refresh/expiry, key format, TLS config, Delete/DeleteExpired)
    
    Closes: #266
    taskbot committed Mar 18, 2026
    Configuration menu
    Copy the full SHA
    47f5ba5 View commit details
    Browse the repository at this point in the history
Loading