@continuum-dev/session 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +306 -0
- package/index.d.ts +3 -0
- package/index.d.ts.map +1 -0
- package/index.js +2 -0
- package/lib/session/action-manager.d.ts +7 -0
- package/lib/session/action-manager.d.ts.map +1 -0
- package/lib/session/checkpoint-manager.d.ts +39 -0
- package/lib/session/checkpoint-manager.d.ts.map +1 -0
- package/lib/session/checkpoint-manager.js +106 -0
- package/lib/session/destroyer.d.ts +12 -0
- package/lib/session/destroyer.d.ts.map +1 -0
- package/lib/session/destroyer.js +22 -0
- package/lib/session/event-log.d.ts +13 -0
- package/lib/session/event-log.d.ts.map +1 -0
- package/lib/session/event-log.js +126 -0
- package/lib/session/intent-manager.d.ts +34 -0
- package/lib/session/intent-manager.d.ts.map +1 -0
- package/lib/session/intent-manager.js +67 -0
- package/lib/session/listeners.d.ts +49 -0
- package/lib/session/listeners.d.ts.map +1 -0
- package/lib/session/listeners.js +77 -0
- package/lib/session/persistence.d.ts +14 -0
- package/lib/session/persistence.d.ts.map +1 -0
- package/lib/session/persistence.js +99 -0
- package/lib/session/schema-pusher.d.ts +4 -0
- package/lib/session/schema-pusher.d.ts.map +1 -0
- package/lib/session/serializer.d.ts +25 -0
- package/lib/session/serializer.d.ts.map +1 -0
- package/lib/session/serializer.js +126 -0
- package/lib/session/session-state.d.ts +65 -0
- package/lib/session/session-state.d.ts.map +1 -0
- package/lib/session/session-state.js +79 -0
- package/lib/session/view-pusher.d.ts +13 -0
- package/lib/session/view-pusher.d.ts.map +1 -0
- package/lib/session/view-pusher.js +104 -0
- package/lib/session.d.ts +33 -0
- package/lib/session.d.ts.map +1 -0
- package/lib/session.js +275 -0
- package/lib/types.d.ts +265 -0
- package/lib/types.d.ts.map +1 -0
- package/lib/types.js +1 -0
- package/package.json +46 -0
package/lib/types.d.ts
ADDED
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
import type { ContinuitySnapshot, Interaction, DetachedValue, DetachedValuePolicy, ProposedValue, ViewportState, PendingIntent, Checkpoint, ViewDefinition, NodeValue, ActionRegistration, ActionHandler } from '@continuum/contract';
|
|
2
|
+
import type { ReconciliationIssue, ReconciliationOptions, ReconciliationResolution, StateDiff } from '@continuum/runtime';
|
|
3
|
+
/**
|
|
4
|
+
* Minimal storage adapter used by session persistence.
|
|
5
|
+
*
|
|
6
|
+
* Compatible with browser `localStorage`/`sessionStorage` and custom storage engines.
|
|
7
|
+
*/
|
|
8
|
+
export interface SessionPersistenceStorage {
|
|
9
|
+
/**
|
|
10
|
+
* Returns the stored string for a key, or null when absent.
|
|
11
|
+
*/
|
|
12
|
+
getItem(key: string): string | null;
|
|
13
|
+
/**
|
|
14
|
+
* Writes a string value for a key.
|
|
15
|
+
*/
|
|
16
|
+
setItem(key: string, value: string): void;
|
|
17
|
+
/**
|
|
18
|
+
* Removes a key from storage.
|
|
19
|
+
*/
|
|
20
|
+
removeItem(key: string): void;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Configures automatic persistence and cross-tab synchronization.
|
|
24
|
+
*/
|
|
25
|
+
export interface SessionPersistenceOptions {
|
|
26
|
+
/**
|
|
27
|
+
* Backing storage implementation.
|
|
28
|
+
*/
|
|
29
|
+
storage: SessionPersistenceStorage;
|
|
30
|
+
/**
|
|
31
|
+
* Storage key to write serialized session blobs under.
|
|
32
|
+
*
|
|
33
|
+
* Defaults to `continuum_session`.
|
|
34
|
+
*/
|
|
35
|
+
key?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Optional serialized payload byte limit.
|
|
38
|
+
*
|
|
39
|
+
* When exceeded, write is skipped and `onError` receives `size_limit`.
|
|
40
|
+
*/
|
|
41
|
+
maxBytes?: number;
|
|
42
|
+
/**
|
|
43
|
+
* Optional callback for persistence failures.
|
|
44
|
+
*/
|
|
45
|
+
onError?: (error: {
|
|
46
|
+
reason: 'size_limit' | 'storage_error';
|
|
47
|
+
key: string;
|
|
48
|
+
attemptedBytes?: number;
|
|
49
|
+
maxBytes?: number;
|
|
50
|
+
cause?: unknown;
|
|
51
|
+
}) => void;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Creates and configures session runtime behavior.
|
|
55
|
+
*/
|
|
56
|
+
export interface SessionOptions {
|
|
57
|
+
/**
|
|
58
|
+
* Clock source used for ids and timestamps.
|
|
59
|
+
*
|
|
60
|
+
* Defaults to `Date.now`.
|
|
61
|
+
*/
|
|
62
|
+
clock?: () => number;
|
|
63
|
+
/**
|
|
64
|
+
* Maximum number of interaction events to retain.
|
|
65
|
+
*/
|
|
66
|
+
maxEventLogSize?: number;
|
|
67
|
+
/**
|
|
68
|
+
* Maximum number of pending intents to retain.
|
|
69
|
+
*/
|
|
70
|
+
maxPendingIntents?: number;
|
|
71
|
+
/**
|
|
72
|
+
* Maximum number of checkpoints to retain.
|
|
73
|
+
*/
|
|
74
|
+
maxCheckpoints?: number;
|
|
75
|
+
/**
|
|
76
|
+
* Reconciliation options forwarded to `@continuum-dev/runtime`.
|
|
77
|
+
*
|
|
78
|
+
* `clock` is managed by session and intentionally omitted here.
|
|
79
|
+
*/
|
|
80
|
+
reconciliation?: Omit<ReconciliationOptions, 'clock'>;
|
|
81
|
+
/**
|
|
82
|
+
* When true, validates `updateState` payloads against node constraints.
|
|
83
|
+
*/
|
|
84
|
+
validateOnUpdate?: boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Enables automatic persistence to storage.
|
|
87
|
+
*/
|
|
88
|
+
persistence?: SessionPersistenceOptions;
|
|
89
|
+
/**
|
|
90
|
+
* Detached value retention policy applied on view pushes.
|
|
91
|
+
*/
|
|
92
|
+
detachedValuePolicy?: DetachedValuePolicy;
|
|
93
|
+
/**
|
|
94
|
+
* Initial action handlers to pre-register at session creation.
|
|
95
|
+
*/
|
|
96
|
+
actions?: Record<string, {
|
|
97
|
+
registration: ActionRegistration;
|
|
98
|
+
handler: ActionHandler;
|
|
99
|
+
}>;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Stateful session API for generative UI timelines.
|
|
103
|
+
*/
|
|
104
|
+
export interface Session {
|
|
105
|
+
/**
|
|
106
|
+
* Stable unique session identifier.
|
|
107
|
+
*/
|
|
108
|
+
readonly sessionId: string;
|
|
109
|
+
/**
|
|
110
|
+
* True when session has been destroyed and no further operations are allowed.
|
|
111
|
+
*/
|
|
112
|
+
readonly isDestroyed: boolean;
|
|
113
|
+
/**
|
|
114
|
+
* Returns the current combined view/data snapshot.
|
|
115
|
+
*/
|
|
116
|
+
getSnapshot(): ContinuitySnapshot | null;
|
|
117
|
+
/**
|
|
118
|
+
* Returns reconciliation and validation issues collected so far.
|
|
119
|
+
*/
|
|
120
|
+
getIssues(): ReconciliationIssue[];
|
|
121
|
+
/**
|
|
122
|
+
* Returns state diffs from the latest reconciliation.
|
|
123
|
+
*/
|
|
124
|
+
getDiffs(): StateDiff[];
|
|
125
|
+
/**
|
|
126
|
+
* Returns per-node reconciliation decisions from the latest reconciliation.
|
|
127
|
+
*/
|
|
128
|
+
getResolutions(): ReconciliationResolution[];
|
|
129
|
+
/**
|
|
130
|
+
* Pushes a new view and reconciles existing data against it.
|
|
131
|
+
*/
|
|
132
|
+
pushView(view: ViewDefinition): void;
|
|
133
|
+
/**
|
|
134
|
+
* Appends a raw interaction event to the event log and applies its payload.
|
|
135
|
+
*/
|
|
136
|
+
recordIntent(interaction: Omit<Interaction, 'interactionId' | 'timestamp' | 'sessionId' | 'viewVersion'>): void;
|
|
137
|
+
/**
|
|
138
|
+
* Convenience wrapper for `data-update` interactions.
|
|
139
|
+
*/
|
|
140
|
+
updateState(nodeId: string, payload: unknown): void;
|
|
141
|
+
/**
|
|
142
|
+
* Returns viewport metadata for a node, if present.
|
|
143
|
+
*/
|
|
144
|
+
getViewportState(nodeId: string): ViewportState | undefined;
|
|
145
|
+
/**
|
|
146
|
+
* Updates viewport metadata and notifies snapshot listeners.
|
|
147
|
+
*/
|
|
148
|
+
updateViewportState(nodeId: string, state: ViewportState): void;
|
|
149
|
+
/**
|
|
150
|
+
* Returns the interaction timeline.
|
|
151
|
+
*/
|
|
152
|
+
getEventLog(): Interaction[];
|
|
153
|
+
/**
|
|
154
|
+
* Queues an intent awaiting validation/cancellation.
|
|
155
|
+
*/
|
|
156
|
+
submitIntent(intent: Omit<PendingIntent, 'intentId' | 'queuedAt' | 'status' | 'viewVersion'>): void;
|
|
157
|
+
/**
|
|
158
|
+
* Returns currently tracked pending intents.
|
|
159
|
+
*/
|
|
160
|
+
getPendingIntents(): PendingIntent[];
|
|
161
|
+
/**
|
|
162
|
+
* Returns detached values preserved across incompatible view changes.
|
|
163
|
+
*/
|
|
164
|
+
getDetachedValues(): Record<string, DetachedValue>;
|
|
165
|
+
/**
|
|
166
|
+
* Purges detached values either fully or by predicate.
|
|
167
|
+
*/
|
|
168
|
+
purgeDetachedValues(filter?: (key: string, value: DetachedValue) => boolean): void;
|
|
169
|
+
/**
|
|
170
|
+
* Applies a value proposal immediately or stages it when current value is dirty.
|
|
171
|
+
*/
|
|
172
|
+
proposeValue(nodeId: string, value: NodeValue, source?: string): void;
|
|
173
|
+
/**
|
|
174
|
+
* Accepts a staged proposal and applies it as a data update.
|
|
175
|
+
*/
|
|
176
|
+
acceptProposal(nodeId: string): void;
|
|
177
|
+
/**
|
|
178
|
+
* Rejects and removes a staged proposal.
|
|
179
|
+
*/
|
|
180
|
+
rejectProposal(nodeId: string): void;
|
|
181
|
+
/**
|
|
182
|
+
* Returns staged proposals keyed by node id.
|
|
183
|
+
*/
|
|
184
|
+
getPendingProposals(): Record<string, ProposedValue>;
|
|
185
|
+
/**
|
|
186
|
+
* Marks a pending intent as validated.
|
|
187
|
+
*/
|
|
188
|
+
validateIntent(intentId: string): boolean;
|
|
189
|
+
/**
|
|
190
|
+
* Marks a pending intent as cancelled.
|
|
191
|
+
*/
|
|
192
|
+
cancelIntent(intentId: string): boolean;
|
|
193
|
+
/**
|
|
194
|
+
* Creates a manual checkpoint from current snapshot state.
|
|
195
|
+
*/
|
|
196
|
+
checkpoint(): Checkpoint;
|
|
197
|
+
/**
|
|
198
|
+
* Restores view/data state from a specific checkpoint object.
|
|
199
|
+
*/
|
|
200
|
+
restoreFromCheckpoint(checkpoint: Checkpoint): void;
|
|
201
|
+
/**
|
|
202
|
+
* Returns available checkpoints in chronological order.
|
|
203
|
+
*/
|
|
204
|
+
getCheckpoints(): Checkpoint[];
|
|
205
|
+
/**
|
|
206
|
+
* Rewinds state to a checkpoint id and truncates checkpoint history after it.
|
|
207
|
+
*/
|
|
208
|
+
rewind(checkpointId: string): void;
|
|
209
|
+
/**
|
|
210
|
+
* Clears active timeline state while preserving session id and configuration.
|
|
211
|
+
*/
|
|
212
|
+
reset(): void;
|
|
213
|
+
/**
|
|
214
|
+
* Subscribes to snapshot updates.
|
|
215
|
+
*
|
|
216
|
+
* Returns an unsubscribe function.
|
|
217
|
+
*/
|
|
218
|
+
onSnapshot(listener: (snapshot: ContinuitySnapshot | null) => void): () => void;
|
|
219
|
+
/**
|
|
220
|
+
* Subscribes to issue updates.
|
|
221
|
+
*
|
|
222
|
+
* Returns an unsubscribe function.
|
|
223
|
+
*/
|
|
224
|
+
onIssues(listener: (issues: ReconciliationIssue[]) => void): () => void;
|
|
225
|
+
/**
|
|
226
|
+
* Serializes the complete session into a JSON-compatible blob.
|
|
227
|
+
*/
|
|
228
|
+
serialize(): unknown;
|
|
229
|
+
/**
|
|
230
|
+
* Destroys the session and returns final issues observed before teardown.
|
|
231
|
+
*/
|
|
232
|
+
destroy(): {
|
|
233
|
+
issues: ReconciliationIssue[];
|
|
234
|
+
};
|
|
235
|
+
/**
|
|
236
|
+
* Registers an action handler for an intent id.
|
|
237
|
+
*/
|
|
238
|
+
registerAction(intentId: string, registration: ActionRegistration, handler: ActionHandler): void;
|
|
239
|
+
/**
|
|
240
|
+
* Removes a previously registered action handler.
|
|
241
|
+
*/
|
|
242
|
+
unregisterAction(intentId: string): void;
|
|
243
|
+
/**
|
|
244
|
+
* Returns action registration metadata for all registered actions.
|
|
245
|
+
*/
|
|
246
|
+
getRegisteredActions(): Record<string, ActionRegistration>;
|
|
247
|
+
/**
|
|
248
|
+
* Dispatches a registered action handler with current snapshot context.
|
|
249
|
+
*/
|
|
250
|
+
dispatchAction(intentId: string, nodeId: string): void | Promise<void>;
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Helper interface for dependency injection and test doubles.
|
|
254
|
+
*/
|
|
255
|
+
export interface SessionFactory {
|
|
256
|
+
/**
|
|
257
|
+
* Creates a fresh session.
|
|
258
|
+
*/
|
|
259
|
+
createSession(options?: SessionOptions): Session;
|
|
260
|
+
/**
|
|
261
|
+
* Reconstructs a session from serialized data.
|
|
262
|
+
*/
|
|
263
|
+
deserialize(data: unknown, options?: SessionOptions): Session;
|
|
264
|
+
}
|
|
265
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../packages/session/src/lib/types.ts"],"names":[],"mappings":"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"}
|
package/lib/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@continuum-dev/session",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"publishConfig": {
|
|
5
|
+
"access": "public"
|
|
6
|
+
},
|
|
7
|
+
"description": "Session lifecycle manager for the Continuum continuity runtime",
|
|
8
|
+
"license": "MIT",
|
|
9
|
+
"repository": {
|
|
10
|
+
"type": "git",
|
|
11
|
+
"url": "https://github.com/brytoncooper/cooper-continuum.git",
|
|
12
|
+
"directory": "packages/session"
|
|
13
|
+
},
|
|
14
|
+
"author": "CooperContinuum",
|
|
15
|
+
"keywords": [
|
|
16
|
+
"continuum",
|
|
17
|
+
"ai",
|
|
18
|
+
"ui",
|
|
19
|
+
"continuity",
|
|
20
|
+
"reconciliation",
|
|
21
|
+
"session",
|
|
22
|
+
"lifecycle"
|
|
23
|
+
],
|
|
24
|
+
"type": "module",
|
|
25
|
+
"sideEffects": false,
|
|
26
|
+
"main": "./index.js",
|
|
27
|
+
"types": "./index.d.ts",
|
|
28
|
+
"exports": {
|
|
29
|
+
".": {
|
|
30
|
+
"types": "./index.d.ts",
|
|
31
|
+
"import": "./index.js",
|
|
32
|
+
"default": "./index.js"
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"files": [
|
|
36
|
+
"**/*.js",
|
|
37
|
+
"**/*.d.ts",
|
|
38
|
+
"**/*.d.ts.map",
|
|
39
|
+
"README.md",
|
|
40
|
+
"LICENSE*"
|
|
41
|
+
],
|
|
42
|
+
"dependencies": {
|
|
43
|
+
"@continuum-dev/contract": "^0.1.0",
|
|
44
|
+
"@continuum-dev/runtime": "^0.1.0"
|
|
45
|
+
}
|
|
46
|
+
}
|