From the Inside Claude Code: The Claude Code Ecosystem architecture map

Optional SessionStore methods raise instead of being absent, so a change in Types reaches 13 modules

risk · critical · verified

Types defines the SessionStore protocol, whose optional methods have default bodies that raise NotImplementedError. Support is detected by checking whether the adapter's class overrides the default (_store_implements), and continue_conversation is refused up front when list_sessions is not overridden. That contract lives in types.py, which 13 of 23 modules on the board depend on, only 3 directly: Control Protocol Query, Session Store and ClaudeSDKClient.

Impact: Changing which SessionStore methods are required, or what their defaults do, silently changes the override check that session validation and resume rely on.

Treat the raising defaults in SessionStore as the definition of 'optional'. Add a new optional method as a raising default, and cover it in session_store_validation so unsupported combinations fail before the subprocess starts.

The trail

  1. Types
  2. Control Protocol Query
  3. ClaudeSDKClient
  4. Session Store
  5. ClaudeSDKClient
Open on the map

More from this board

© 2026 Syntaxia App Platform Ltd.

Syntaxia App Platform Ltd. Registered in England and Wales, company no. 15272701 Registered office: 3rd Floor, 86–90 Paul Street, London EC2A 4NE, United Kingdom contact@provenmap.com