statecli-mcp-server 0.1.2 → 0.3.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/README.md +334 -153
- package/dist/cross-file-impact.d.ts +85 -0
- package/dist/cross-file-impact.d.ts.map +1 -0
- package/dist/cross-file-impact.js +338 -0
- package/dist/cross-file-impact.js.map +1 -0
- package/dist/dependency-tracker.d.ts +78 -0
- package/dist/dependency-tracker.d.ts.map +1 -0
- package/dist/dependency-tracker.js +334 -0
- package/dist/dependency-tracker.js.map +1 -0
- package/dist/enhanced-mcp-server.d.ts +50 -0
- package/dist/enhanced-mcp-server.d.ts.map +1 -0
- package/dist/enhanced-mcp-server.js +664 -0
- package/dist/enhanced-mcp-server.js.map +1 -0
- package/dist/error-recovery.d.ts +66 -0
- package/dist/error-recovery.d.ts.map +1 -0
- package/dist/error-recovery.js +210 -0
- package/dist/error-recovery.js.map +1 -0
- package/dist/file-tracker.d.ts +81 -0
- package/dist/file-tracker.d.ts.map +1 -0
- package/dist/file-tracker.js +252 -0
- package/dist/file-tracker.js.map +1 -0
- package/dist/git-integration.d.ts +95 -0
- package/dist/git-integration.d.ts.map +1 -0
- package/dist/git-integration.js +219 -0
- package/dist/git-integration.js.map +1 -0
- package/dist/index-enhanced.d.ts +12 -0
- package/dist/index-enhanced.d.ts.map +1 -0
- package/dist/index-enhanced.js +27 -0
- package/dist/index-enhanced.js.map +1 -0
- package/dist/rollback-preview.d.ts +77 -0
- package/dist/rollback-preview.d.ts.map +1 -0
- package/dist/rollback-preview.js +244 -0
- package/dist/rollback-preview.js.map +1 -0
- package/dist/session-memory.d.ts +85 -0
- package/dist/session-memory.d.ts.map +1 -0
- package/dist/session-memory.js +325 -0
- package/dist/session-memory.js.map +1 -0
- package/dist/test-awareness.d.ts +85 -0
- package/dist/test-awareness.d.ts.map +1 -0
- package/dist/test-awareness.js +329 -0
- package/dist/test-awareness.js.map +1 -0
- package/dist/types.d.ts +11 -8
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +3 -2
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rollback Preview - Preview state before undoing
|
|
3
|
+
*
|
|
4
|
+
* Shows what the state would look like after a rollback before executing it.
|
|
5
|
+
*/
|
|
6
|
+
import { StateCLI } from './statecli';
|
|
7
|
+
export interface RollbackStep {
|
|
8
|
+
step: number;
|
|
9
|
+
timestamp: string;
|
|
10
|
+
entity: string;
|
|
11
|
+
action: string;
|
|
12
|
+
stateBefore: Record<string, unknown> | null;
|
|
13
|
+
stateAfter: Record<string, unknown>;
|
|
14
|
+
willBeUndone: boolean;
|
|
15
|
+
}
|
|
16
|
+
export interface RollbackPreviewResult {
|
|
17
|
+
entity: string;
|
|
18
|
+
currentState: Record<string, unknown> | null;
|
|
19
|
+
targetState: Record<string, unknown> | null;
|
|
20
|
+
stepsToUndo: number;
|
|
21
|
+
changes: RollbackStep[];
|
|
22
|
+
diff: StateDiff[];
|
|
23
|
+
warnings: string[];
|
|
24
|
+
estimatedImpact: 'minimal' | 'moderate' | 'significant';
|
|
25
|
+
}
|
|
26
|
+
export interface StateDiff {
|
|
27
|
+
path: string;
|
|
28
|
+
currentValue: unknown;
|
|
29
|
+
targetValue: unknown;
|
|
30
|
+
action: 'add' | 'remove' | 'modify';
|
|
31
|
+
}
|
|
32
|
+
export interface CheckpointPreview {
|
|
33
|
+
checkpointName: string;
|
|
34
|
+
checkpointTimestamp: string;
|
|
35
|
+
currentState: Record<string, unknown> | null;
|
|
36
|
+
checkpointState: Record<string, unknown>;
|
|
37
|
+
changesSinceCheckpoint: number;
|
|
38
|
+
diff: StateDiff[];
|
|
39
|
+
}
|
|
40
|
+
export declare class RollbackPreview {
|
|
41
|
+
private statecli;
|
|
42
|
+
constructor(statecli: StateCLI);
|
|
43
|
+
/**
|
|
44
|
+
* Preview what will happen if we undo N steps
|
|
45
|
+
*/
|
|
46
|
+
previewUndo(entity: string, steps?: number): RollbackPreviewResult;
|
|
47
|
+
/**
|
|
48
|
+
* Preview restoring to a specific checkpoint
|
|
49
|
+
*/
|
|
50
|
+
previewCheckpointRestore(entity: string, checkpointName: string): CheckpointPreview | null;
|
|
51
|
+
/**
|
|
52
|
+
* Compare two states and show differences
|
|
53
|
+
*/
|
|
54
|
+
compareStates(state1: Record<string, unknown> | null, state2: Record<string, unknown> | null, label1?: string, label2?: string): {
|
|
55
|
+
diff: StateDiff[];
|
|
56
|
+
summary: string;
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* Get a visual diff as a string
|
|
60
|
+
*/
|
|
61
|
+
formatDiff(diff: StateDiff[]): string;
|
|
62
|
+
/**
|
|
63
|
+
* Simulate undo without actually doing it
|
|
64
|
+
*/
|
|
65
|
+
simulateUndo(entity: string, steps?: number): {
|
|
66
|
+
preview: RollbackPreviewResult;
|
|
67
|
+
wouldSucceed: boolean;
|
|
68
|
+
resultingState: Record<string, unknown> | null;
|
|
69
|
+
sideEffects: string[];
|
|
70
|
+
};
|
|
71
|
+
private calculateDiff;
|
|
72
|
+
private flattenObject;
|
|
73
|
+
private describeChange;
|
|
74
|
+
private generateWarnings;
|
|
75
|
+
private estimateImpact;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=rollback-preview.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rollback-preview.d.ts","sourceRoot":"","sources":["../src/rollback-preview.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5C,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7C,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,eAAe,EAAE,SAAS,GAAG,UAAU,GAAG,aAAa,CAAC;CACzD;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;CACrC;AAED,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7C,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,IAAI,EAAE,SAAS,EAAE,CAAC;CACnB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAW;gBAEf,QAAQ,EAAE,QAAQ;IAI9B;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,qBAAqB;IA8DrE;;OAEG;IACH,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI;IA2B1F;;OAEG;IACH,aAAa,CACX,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EACtC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EACtC,MAAM,GAAE,MAAkB,EAC1B,MAAM,GAAE,MAAkB,GACzB;QACD,IAAI,EAAE,SAAS,EAAE,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB;IAYD;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM;IAsBrC;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG;QAC/C,OAAO,EAAE,qBAAqB,CAAC;QAC/B,YAAY,EAAE,OAAO,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;QAC/C,WAAW,EAAE,MAAM,EAAE,CAAC;KACvB;IAwBD,OAAO,CAAC,aAAa;IAgDrB,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,cAAc;IAoBtB,OAAO,CAAC,gBAAgB;IA4BxB,OAAO,CAAC,cAAc;CAOvB"}
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Rollback Preview - Preview state before undoing
|
|
4
|
+
*
|
|
5
|
+
* Shows what the state would look like after a rollback before executing it.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.RollbackPreview = void 0;
|
|
9
|
+
class RollbackPreview {
|
|
10
|
+
statecli;
|
|
11
|
+
constructor(statecli) {
|
|
12
|
+
this.statecli = statecli;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Preview what will happen if we undo N steps
|
|
16
|
+
*/
|
|
17
|
+
previewUndo(entity, steps = 1) {
|
|
18
|
+
const replay = this.statecli.replay(entity);
|
|
19
|
+
const currentState = this.statecli.getCurrentState(entity);
|
|
20
|
+
const changes = replay.changes;
|
|
21
|
+
if (changes.length === 0) {
|
|
22
|
+
return {
|
|
23
|
+
entity,
|
|
24
|
+
currentState,
|
|
25
|
+
targetState: null,
|
|
26
|
+
stepsToUndo: 0,
|
|
27
|
+
changes: [],
|
|
28
|
+
diff: [],
|
|
29
|
+
warnings: ['No changes to undo for this entity.'],
|
|
30
|
+
estimatedImpact: 'minimal'
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
const actualSteps = Math.min(steps, changes.length);
|
|
34
|
+
const targetIndex = changes.length - actualSteps - 1;
|
|
35
|
+
const targetState = targetIndex >= 0 ? changes[targetIndex].after : null;
|
|
36
|
+
// Build rollback steps
|
|
37
|
+
const rollbackSteps = changes.map((change, index) => ({
|
|
38
|
+
step: change.step,
|
|
39
|
+
timestamp: change.timestamp,
|
|
40
|
+
entity: change.entity || entity,
|
|
41
|
+
action: this.describeChange(change.before, change.after),
|
|
42
|
+
stateBefore: change.before,
|
|
43
|
+
stateAfter: change.after,
|
|
44
|
+
willBeUndone: index >= changes.length - actualSteps
|
|
45
|
+
}));
|
|
46
|
+
// Calculate diff
|
|
47
|
+
const diff = this.calculateDiff(currentState, targetState);
|
|
48
|
+
// Generate warnings
|
|
49
|
+
const warnings = this.generateWarnings(currentState, targetState, actualSteps, changes);
|
|
50
|
+
// Estimate impact
|
|
51
|
+
const estimatedImpact = this.estimateImpact(diff, actualSteps);
|
|
52
|
+
// Track preview
|
|
53
|
+
this.statecli.track('rollback', 'preview', {
|
|
54
|
+
entity,
|
|
55
|
+
stepsToUndo: actualSteps,
|
|
56
|
+
diffCount: diff.length,
|
|
57
|
+
estimatedImpact
|
|
58
|
+
}, 'rollback-preview');
|
|
59
|
+
return {
|
|
60
|
+
entity,
|
|
61
|
+
currentState,
|
|
62
|
+
targetState,
|
|
63
|
+
stepsToUndo: actualSteps,
|
|
64
|
+
changes: rollbackSteps,
|
|
65
|
+
diff,
|
|
66
|
+
warnings,
|
|
67
|
+
estimatedImpact
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Preview restoring to a specific checkpoint
|
|
72
|
+
*/
|
|
73
|
+
previewCheckpointRestore(entity, checkpointName) {
|
|
74
|
+
const checkpoint = this.statecli.getCheckpoint?.(entity, checkpointName) || null;
|
|
75
|
+
if (!checkpoint) {
|
|
76
|
+
return null;
|
|
77
|
+
}
|
|
78
|
+
const currentState = this.statecli.getCurrentState(entity);
|
|
79
|
+
const replay = this.statecli.replay(entity);
|
|
80
|
+
// Count changes since checkpoint
|
|
81
|
+
const changesSince = replay.changes.filter(c => new Date(c.timestamp) > new Date(checkpoint.timestamp)).length;
|
|
82
|
+
const diff = this.calculateDiff(currentState, checkpoint.state);
|
|
83
|
+
return {
|
|
84
|
+
checkpointName: checkpoint.name,
|
|
85
|
+
checkpointTimestamp: checkpoint.timestamp,
|
|
86
|
+
currentState,
|
|
87
|
+
checkpointState: checkpoint.state,
|
|
88
|
+
changesSinceCheckpoint: changesSince,
|
|
89
|
+
diff
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Compare two states and show differences
|
|
94
|
+
*/
|
|
95
|
+
compareStates(state1, state2, label1 = 'State 1', label2 = 'State 2') {
|
|
96
|
+
const diff = this.calculateDiff(state1, state2);
|
|
97
|
+
const adds = diff.filter(d => d.action === 'add').length;
|
|
98
|
+
const removes = diff.filter(d => d.action === 'remove').length;
|
|
99
|
+
const mods = diff.filter(d => d.action === 'modify').length;
|
|
100
|
+
const summary = `Comparing ${label1} to ${label2}: ${adds} additions, ${removes} removals, ${mods} modifications`;
|
|
101
|
+
return { diff, summary };
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Get a visual diff as a string
|
|
105
|
+
*/
|
|
106
|
+
formatDiff(diff) {
|
|
107
|
+
const lines = [];
|
|
108
|
+
for (const d of diff) {
|
|
109
|
+
switch (d.action) {
|
|
110
|
+
case 'add':
|
|
111
|
+
lines.push(`+ ${d.path}: ${JSON.stringify(d.targetValue)}`);
|
|
112
|
+
break;
|
|
113
|
+
case 'remove':
|
|
114
|
+
lines.push(`- ${d.path}: ${JSON.stringify(d.currentValue)}`);
|
|
115
|
+
break;
|
|
116
|
+
case 'modify':
|
|
117
|
+
lines.push(`~ ${d.path}:`);
|
|
118
|
+
lines.push(` - ${JSON.stringify(d.currentValue)}`);
|
|
119
|
+
lines.push(` + ${JSON.stringify(d.targetValue)}`);
|
|
120
|
+
break;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
return lines.join('\n');
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Simulate undo without actually doing it
|
|
127
|
+
*/
|
|
128
|
+
simulateUndo(entity, steps = 1) {
|
|
129
|
+
const preview = this.previewUndo(entity, steps);
|
|
130
|
+
const wouldSucceed = preview.warnings.length === 0 ||
|
|
131
|
+
!preview.warnings.some((w) => w.includes('Cannot') || w.includes('Error'));
|
|
132
|
+
const sideEffects = [];
|
|
133
|
+
if (preview.stepsToUndo > 5) {
|
|
134
|
+
sideEffects.push('Large rollback - may take longer to process');
|
|
135
|
+
}
|
|
136
|
+
if (preview.diff.some(d => d.path.includes('id') || d.path.includes('Id'))) {
|
|
137
|
+
sideEffects.push('IDs will change - may affect relationships');
|
|
138
|
+
}
|
|
139
|
+
return {
|
|
140
|
+
preview,
|
|
141
|
+
wouldSucceed,
|
|
142
|
+
resultingState: preview.targetState,
|
|
143
|
+
sideEffects
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
calculateDiff(current, target) {
|
|
147
|
+
const diff = [];
|
|
148
|
+
if (!current && !target)
|
|
149
|
+
return diff;
|
|
150
|
+
if (!current && target) {
|
|
151
|
+
// All target properties are additions
|
|
152
|
+
this.flattenObject(target, '').forEach(([path, value]) => {
|
|
153
|
+
diff.push({ path, currentValue: undefined, targetValue: value, action: 'add' });
|
|
154
|
+
});
|
|
155
|
+
return diff;
|
|
156
|
+
}
|
|
157
|
+
if (current && !target) {
|
|
158
|
+
// All current properties are removals
|
|
159
|
+
this.flattenObject(current, '').forEach(([path, value]) => {
|
|
160
|
+
diff.push({ path, currentValue: value, targetValue: undefined, action: 'remove' });
|
|
161
|
+
});
|
|
162
|
+
return diff;
|
|
163
|
+
}
|
|
164
|
+
// Both exist - compare
|
|
165
|
+
const currentFlat = new Map(this.flattenObject(current, ''));
|
|
166
|
+
const targetFlat = new Map(this.flattenObject(target, ''));
|
|
167
|
+
// Check for modifications and removals
|
|
168
|
+
for (const [path, currentValue] of currentFlat) {
|
|
169
|
+
if (targetFlat.has(path)) {
|
|
170
|
+
const targetValue = targetFlat.get(path);
|
|
171
|
+
if (JSON.stringify(currentValue) !== JSON.stringify(targetValue)) {
|
|
172
|
+
diff.push({ path, currentValue, targetValue, action: 'modify' });
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
else {
|
|
176
|
+
diff.push({ path, currentValue, targetValue: undefined, action: 'remove' });
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
// Check for additions
|
|
180
|
+
for (const [path, targetValue] of targetFlat) {
|
|
181
|
+
if (!currentFlat.has(path)) {
|
|
182
|
+
diff.push({ path, currentValue: undefined, targetValue, action: 'add' });
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
return diff;
|
|
186
|
+
}
|
|
187
|
+
flattenObject(obj, prefix) {
|
|
188
|
+
const result = [];
|
|
189
|
+
for (const [key, value] of Object.entries(obj)) {
|
|
190
|
+
const path = prefix ? `${prefix}.${key}` : key;
|
|
191
|
+
if (value && typeof value === 'object' && !Array.isArray(value)) {
|
|
192
|
+
result.push(...this.flattenObject(value, path));
|
|
193
|
+
}
|
|
194
|
+
else {
|
|
195
|
+
result.push([path, value]);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
return result;
|
|
199
|
+
}
|
|
200
|
+
describeChange(before, after) {
|
|
201
|
+
if (!before)
|
|
202
|
+
return 'Created';
|
|
203
|
+
const beforeKeys = Object.keys(before);
|
|
204
|
+
const afterKeys = Object.keys(after);
|
|
205
|
+
const added = afterKeys.filter(k => !beforeKeys.includes(k));
|
|
206
|
+
const removed = beforeKeys.filter(k => !afterKeys.includes(k));
|
|
207
|
+
const modified = afterKeys.filter(k => beforeKeys.includes(k) && JSON.stringify(before[k]) !== JSON.stringify(after[k]));
|
|
208
|
+
const parts = [];
|
|
209
|
+
if (added.length)
|
|
210
|
+
parts.push(`Added: ${added.join(', ')}`);
|
|
211
|
+
if (removed.length)
|
|
212
|
+
parts.push(`Removed: ${removed.join(', ')}`);
|
|
213
|
+
if (modified.length)
|
|
214
|
+
parts.push(`Modified: ${modified.join(', ')}`);
|
|
215
|
+
return parts.join('; ') || 'No visible changes';
|
|
216
|
+
}
|
|
217
|
+
generateWarnings(currentState, targetState, steps, changes) {
|
|
218
|
+
const warnings = [];
|
|
219
|
+
if (steps > 10) {
|
|
220
|
+
warnings.push(`Rolling back ${steps} steps is a large change. Consider restoring to a checkpoint instead.`);
|
|
221
|
+
}
|
|
222
|
+
if (!targetState) {
|
|
223
|
+
warnings.push('Target state is null - entity will be effectively reset.');
|
|
224
|
+
}
|
|
225
|
+
// Check for checkpoint in undo range
|
|
226
|
+
const checkpointsInRange = changes
|
|
227
|
+
.slice(-steps)
|
|
228
|
+
.filter(c => c.checkpointName);
|
|
229
|
+
if (checkpointsInRange.length > 0) {
|
|
230
|
+
warnings.push(`This will undo past checkpoint(s): ${checkpointsInRange.map(c => c.checkpointName).join(', ')}`);
|
|
231
|
+
}
|
|
232
|
+
return warnings;
|
|
233
|
+
}
|
|
234
|
+
estimateImpact(diff, steps) {
|
|
235
|
+
const changeCount = diff.length;
|
|
236
|
+
if (changeCount === 0 || steps === 1)
|
|
237
|
+
return 'minimal';
|
|
238
|
+
if (changeCount <= 5 && steps <= 3)
|
|
239
|
+
return 'moderate';
|
|
240
|
+
return 'significant';
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
exports.RollbackPreview = RollbackPreview;
|
|
244
|
+
//# sourceMappingURL=rollback-preview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rollback-preview.js","sourceRoot":"","sources":["../src/rollback-preview.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session Memory - Cross-session persistence and memory
|
|
3
|
+
*
|
|
4
|
+
* Remembers what happened across sessions and provides memory queries
|
|
5
|
+
*/
|
|
6
|
+
import { StateCLI } from './statecli';
|
|
7
|
+
import { StateChange } from './types';
|
|
8
|
+
export interface SessionInfo {
|
|
9
|
+
id: string;
|
|
10
|
+
startTime: string;
|
|
11
|
+
endTime?: string;
|
|
12
|
+
summary: string;
|
|
13
|
+
changesCount: number;
|
|
14
|
+
entities: string[];
|
|
15
|
+
}
|
|
16
|
+
export interface MemoryQuery {
|
|
17
|
+
entity?: string;
|
|
18
|
+
entityPattern?: string;
|
|
19
|
+
timeRange?: {
|
|
20
|
+
start: string;
|
|
21
|
+
end: string;
|
|
22
|
+
};
|
|
23
|
+
actor?: string;
|
|
24
|
+
keyword?: string;
|
|
25
|
+
}
|
|
26
|
+
export interface MemoryResult {
|
|
27
|
+
query: MemoryQuery;
|
|
28
|
+
sessions: SessionInfo[];
|
|
29
|
+
changes: StateChange[];
|
|
30
|
+
summary: string;
|
|
31
|
+
}
|
|
32
|
+
export declare class SessionMemory {
|
|
33
|
+
private statecli;
|
|
34
|
+
private sessionId;
|
|
35
|
+
private sessionStartTime;
|
|
36
|
+
private memoryDir;
|
|
37
|
+
constructor(statecli: StateCLI, memoryDir?: string);
|
|
38
|
+
/**
|
|
39
|
+
* Get current session ID
|
|
40
|
+
*/
|
|
41
|
+
getSessionId(): string;
|
|
42
|
+
/**
|
|
43
|
+
* Query memory across sessions
|
|
44
|
+
*/
|
|
45
|
+
queryMemory(query: MemoryQuery): MemoryResult;
|
|
46
|
+
/**
|
|
47
|
+
* Ask a natural language question about past actions
|
|
48
|
+
*/
|
|
49
|
+
ask(question: string): MemoryResult;
|
|
50
|
+
/**
|
|
51
|
+
* Get all recorded sessions
|
|
52
|
+
*/
|
|
53
|
+
getSessions(): SessionInfo[];
|
|
54
|
+
/**
|
|
55
|
+
* Get session data by ID
|
|
56
|
+
*/
|
|
57
|
+
getSession(sessionId: string): {
|
|
58
|
+
info: SessionInfo;
|
|
59
|
+
changes: StateChange[];
|
|
60
|
+
} | null;
|
|
61
|
+
/**
|
|
62
|
+
* Save current session data
|
|
63
|
+
*/
|
|
64
|
+
saveSession(): void;
|
|
65
|
+
/**
|
|
66
|
+
* End current session
|
|
67
|
+
*/
|
|
68
|
+
endSession(): SessionInfo;
|
|
69
|
+
/**
|
|
70
|
+
* Get recent activity summary
|
|
71
|
+
*/
|
|
72
|
+
getRecentActivity(hours?: number): MemoryResult;
|
|
73
|
+
/**
|
|
74
|
+
* Get activity for a specific entity across all sessions
|
|
75
|
+
*/
|
|
76
|
+
getEntityHistory(entityPattern: string): MemoryResult;
|
|
77
|
+
private generateSessionId;
|
|
78
|
+
private ensureMemoryDir;
|
|
79
|
+
private recordSessionStart;
|
|
80
|
+
private loadSessionData;
|
|
81
|
+
private changeMatchesQuery;
|
|
82
|
+
private parseQuestion;
|
|
83
|
+
private createQuerySummary;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=session-memory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-memory.d.ts","sourceRoot":"","sources":["../src/session-memory.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAgB,MAAM,SAAS,CAAC;AAEpD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,SAAS,CAAS;gBAEd,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,MAAM;IAUlD;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,YAAY;IAkC7C;;OAEG;IACH,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY;IAMnC;;OAEG;IACH,WAAW,IAAI,WAAW,EAAE;IAqB5B;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,WAAW,CAAC;QAAC,OAAO,EAAE,WAAW,EAAE,CAAA;KAAE,GAAG,IAAI;IAInF;;OAEG;IACH,WAAW,IAAI,IAAI;IA0CnB;;OAEG;IACH,UAAU,IAAI,WAAW;IAczB;;OAEG;IACH,iBAAiB,CAAC,KAAK,GAAE,MAAW,GAAG,YAAY;IAWnD;;OAEG;IACH,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,YAAY;IAIrD,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,eAAe;IAcvB,OAAO,CAAC,kBAAkB;IA0C1B,OAAO,CAAC,aAAa;IA0CrB,OAAO,CAAC,kBAAkB;CA6B3B"}
|