Skip to content

History / Provider State Management

Revisions

  • docs(developer): rewrite Architecture, Provider-State-Management, Adding-a-Provider for 4.0.0 seam These three docs predated the User/Credential domain model (#1222), the BaseLock User->Credential seam (#1225), and the user-tag identity model (#1239/#1240/#1242). The old contract described async_set_usercode/async_clear_usercode at the provider boundary and dict[int, str | None] coordinator data, neither of which match current code. Rewrites pin the 4.0.0 contract: Architecture.md: - Adds the domain model section (User, Credential, CredentialRef, SlotCredential, LockCapabilities). - Updates coordinator data shape to dict[int, SlotCredential]. - Documents the user-tag identity model and persistent-user-anchor lifecycle for native-user providers. - Replaces the provider-boundary description with the two-tier split (slot-only vs native-user) and the @final seam methods + the _set_credential/_delete_credential/_build_tagged_user_name orchestration helpers. - Updates exception hierarchy to include LockOperationFailed, LockCodeManagerProviderError, and the seam's routing per subclass. Provider-State-Management.md: - New section on slot-only vs native-user providers and how the seam routes each. - Method surface updated to async_get_users/async_set_credential/ async_delete_credential/async_set_user/async_delete_user/ async_get_capabilities. - Push updates use coordinator.push_update({slot: SlotCredential}). - Documents the LCM-slot-from-tag pattern for push handlers under the user-tag identity model. - Exception routing table per subclass. - Adds the async_release_managed_slot slot-teardown hook. Adding-a-Provider.md: - Reorganized around the slot-only vs native-user split. - All code examples rewritten against the current contract, including the find-or-create-by-tag pattern with legacy adoption for native-user providers. - Updated complete minimal example. - Manual + automated test guidance updated for the new fixtures.

    @raman325 raman325 committed Jun 10, 2026
  • Update dev docs from repo (adding-a-provider, provider-state-management, development-guide)

    @raman325 raman325 committed Mar 29, 2026
  • Add developer docs and organize sidebar - Add Development-Guide.md with architecture overview and dev container setup - Add Adding-a-Provider.md with step-by-step tutorial - Add Provider-State-Management.md with poll/push modes documentation - Add _Sidebar.md for organized navigation - Update Home.md with structured sections - Update Supporting-new-lock-integrations.md to redirect to new docs

    @raman325 raman325 committed Jan 4, 2026