Skip to content

Commit 9a55d1b

Browse files
committed
docs: state accessor ownership contract
1 parent e2dc5d0 commit 9a55d1b

2 files changed

Lines changed: 11 additions & 0 deletions

File tree

src/config/sessions/session-accessor.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,13 @@ import type { SessionEntry } from "./types.js";
3737
* depending on the persisted store layout. Callers provide stable session
3838
* identity, and this module resolves the current entry/transcript target while
3939
* preserving canonical-key, transcript-linking, and update-notification rules.
40+
*
41+
* Ownership contract (#88838): this accessor is the permanent storage-neutral
42+
* domain boundary for session/transcript runtime access; the SQLite storage
43+
* flip implements this interface. The entry workflow helpers in store.ts are
44+
* the file-backend implementation it delegates to plus the plugin-SDK
45+
* deprecation-window surface (RFC 0007); they become internal as direct
46+
* callers migrate here. New runtime callers use this module, not store.ts.
4047
*/
4148
export type SessionAccessScope = {
4249
/** Agent owner used when the session key does not already encode one. */

src/config/sessions/store.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -188,6 +188,10 @@ type SingleEntryPersistencePatch = {
188188
entry: SessionEntry;
189189
};
190190

191+
// The entry workflow helpers below are the file-backend implementation behind
192+
// the session-accessor domain boundary and the plugin-SDK compatibility
193+
// surface (RFC 0007). Internal runtime callers use session-accessor.ts; these
194+
// become internal as direct callers migrate (#88838).
191195
type SessionEntryWorkflowOptions = {
192196
agentId?: string;
193197
env?: NodeJS.ProcessEnv;

0 commit comments

Comments
 (0)