feat(ipuaro): add session management (v0.10.0)

- Add ISessionStorage interface and RedisSessionStorage implementation
- Add ContextManager for token budget and compression
- Add StartSession, HandleMessage, UndoChange use cases
- Update CHANGELOG and TODO documentation
- 88 new tests (1174 total), 97.73% coverage
This commit is contained in:
imfozilbek
2025-12-01 12:27:22 +05:00
parent 56643d903f
commit 0f2ed5b301
22 changed files with 2798 additions and 261 deletions

View File

@@ -45,10 +45,7 @@ function createMockContext(storage?: IStorage): ToolContext {
}
type ExecResult = { stdout: string; stderr: string }
type ExecFn = (
command: string,
options: Record<string, unknown>,
) => Promise<ExecResult>
type ExecFn = (command: string, options: Record<string, unknown>) => Promise<ExecResult>
function createMockExec(options: {
stdout?: string
@@ -127,9 +124,7 @@ describe("RunTestsTool", () => {
})
it("should return null for valid params", () => {
expect(
tool.validateParams({ path: "src", filter: "login", watch: true }),
).toBeNull()
expect(tool.validateParams({ path: "src", filter: "login", watch: true })).toBeNull()
})
it("should return error for invalid path", () => {