ask-agent 0.29.1 → 0.30.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7b6eca46c976555990a13366053665b9340f4a97d578a332a8cbf9615cd5647d
4
- data.tar.gz: 7c16e54008a44cc0eafb8ebfea51c752e0d6879749635e606142f84cdd03d682
3
+ metadata.gz: 58b285b250efd49063ba2fb5c078ea3107d3ebd583ab33b4c92c07084280a242
4
+ data.tar.gz: 1d6df4327981ec16e652cedbb864112721db2a6ae1c1c5d7d74ecacfe4a6aa38
5
5
  SHA512:
6
- metadata.gz: 05eb5c72881fcb3730dab2f89d51444b3f86f41413f454090331d5c9bb240b6ca4751c40f0fdc3ef10f2ea718989aa7e68e716e13570e247a094f76ae0702051
7
- data.tar.gz: 712139e5f89850fe706268b74a08854c2f1f0be7276e4717039c73192a872d6f4a3c2566954ae4133ce10917d51ea4ae5687995b828ef024bead95a8222ac68d
6
+ metadata.gz: 1adec012cf31271f1039068e6329c172981d631c221e5d18ce21fe2f19d2449bceac06a4fb4e8845b762c59b263b20ba947cd70463947b389e70f618beda501e
7
+ data.tar.gz: 84cdadbbf141991d3c294e06ec9f42e689835407bf3a2577d6ce8a9e173bd3eb21030313e0a59b3663f6718bee88b245deab144aaeda440e443ae176877af4cb
data/CHANGELOG.md CHANGED
@@ -1,3 +1,36 @@
1
+ ## [0.30.0] — 2026-08-06
2
+
3
+ ### Added
4
+
5
+ - **Session checkpoints: fork, rollback, resume.** Versioned, durable
6
+ checkpoints on any state adapter. Enable with
7
+ `Session.new(state: store, checkpoints: true)` — every turn is snapshotted
8
+ under a sequential key, and the session gains time travel:
9
+ - **`Session#rollback!(seq: / turn:)`** — rewind messages and turn count
10
+ to an earlier checkpoint. Later checkpoints are kept, so the session
11
+ can roll forward again. The legacy blob stays consistent.
12
+ - **`Session#fork(at_seq: / at_turn:)`** — a new session (new id, same
13
+ model/tools) whose history is everything up to that point, backed by
14
+ its own checkpoint chain; continue the branch with `run`.
15
+ - **`Session#checkpoint_history` / `Session#load_checkpoint(seq:)`** —
16
+ inspect the timeline. `Session.load` re-enables checkpointing
17
+ automatically when the stored session has checkpoints.
18
+ - `Ask::Agent::CheckpointStore` — the store itself, usable standalone.
19
+ It needs only the minimal KV contract (`get`/`set`/`delete`), so it
20
+ works with every state provider (SQLite, Redis, Postgres, MySQL) and
21
+ custom adapters — no list primitives required, no provider mandated.
22
+ - `Events::SessionRolledBack` / `Events::SessionForked` fire on rollback
23
+ and fork. `Session#delete` cleans up checkpoint keys too.
24
+
25
+ ### Fixed
26
+
27
+ - **`Session.load` could not restore sessions saved with tools.** The
28
+ built-in `LoadSkillTool` (auto-added to every session) cannot be
29
+ instantiated without a registry, so any saved session with tools failed
30
+ to load with `ArgumentError: missing keyword: :registry`. Load now
31
+ instantiates saved tool classes defensively — un-instantiable classes are
32
+ skipped and re-added by `resolve_tools` with a proper registry.
33
+
1
34
  ## [0.29.1] — 2026-08-06
2
35
 
3
36
  ### Fixed
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Ask
4
4
  module Agent
5
- VERSION = "0.29.1"
5
+ VERSION = "0.30.0"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ask-agent
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.29.1
4
+ version: 0.30.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kaka Ruto