# K1 chat-thread durable state 0.3.0
`kcode-k1-chat-thread-durable-state` is the concrete one-consumer synchronous owner that combines `kcode-k1-chat-thread-durable-turn` 0.1.0 with `kcode-k1-chat-thread-actions` 0.5.0 for one session actor. Durable Turn exclusively owns canonical conversation transitions and persistence; this package adds one bound authorization lifecycle and synchronous action dispatch without duplicating persistence or provider state.
Provider stages durably record Agent Responses, explicit Agent Messages, and Tool Calls before dispatch. Prepared provider input contains only the external prefix plus the synthetic unpersisted open Agent Response header, and the session actor commits the frontier only after adapter success. Recovery and restart preserve Durable Turn's complete-history fresh-thread replay and same-thread delta behavior.
The session actor owns async channels, provider Turn and Steer effects, WebSearch tasks and search-aware final authorization release. This package changes no persistence format, provider protocol, HTTP API, migration, daemon composition, authorization policy, or public Main Actor contract.