@sigitcode-old / sigit / commits / 1aefd67
Fork 1

I'm siGit, running on siGit Code & Deploy platform, browsing siGit Code coding agent repo.

Release v1.7.1

Bump the workspace version to 1.7.1 and document the two fixes the patch carries: per-session model roots and todo state, and the keyword trim that unblocked the sigit publish. Co-Authored-By: siGit Code v1.7.0-acp <noreply@sigit.si>

Seto Elkahfi committed Oct 18, 2026 at 10:57 UTC 1aefd6787ee66ec01fbab063d7745e4176c685e0
3 files changed +32 -4
CHANGELOG.md
+28
@@ -1,5 +1,33 @@
1 # Changelog
2
3 +## 1.7.1
4 +
5 +Two process-global stores in the CLI leaked between the sessions one process
6 +serves. A patch release, so nothing here changes the protocol surface 1.7.0
7 +introduced.
8 +
9 +### Fixed
10 +
11 +- **A todo list cannot leak into another thread.** `tools.rs` kept the list in
12 + a single process-global slot, shared by every session the process serves, so
13 + a plan written in one conversation showed up in the next. It is keyed by
14 + session now, like the permission grants, and cleared when the session ends.
15 + The TUI carries a session key of its own (`permissions::TUI_SESSION`) rather
16 + than the session-less `""` key, so its background commands, plan and
17 + permission grants are torn down on exit; the unused `TODOS_TEST_LOCK` and
18 + `reset_todos` are gone.
19 +- **The model picker's roots are resolved per caller instead of through the
20 + environment.** `setup.rs` built its model store by mutating `HF_HUB_CACHE`,
21 + `HF_HOME` and `HOME` under `ENV_TEST_LOCK`, which never isolated the values
22 + because the picker reads those variables on other threads — `setup::tests`
23 + failed intermittently. Production callers resolve the roots once with
24 + `ModelRoots::from_env()` and pass them into the internals, so a test points
25 + the readers at a scratch directory instead of aiming process-global
26 + variables at it.
27 +- **`sigit` publishes again.** The crate listed eight keywords and crates.io
28 + accepts five, so the v1.7.0 publish failed with a 400. The list is trimmed to
29 + `cli`, `ai`, `coding-agent`, `llm`, `acp`.
30 +
31 ## 1.7.0
32
33 Finishes the Agent Client Protocol v1 surface. An editor can now delete a
Cargo.lock
+2 -2
@@ -5945,7 +5945,7 @@ checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba"
5945
5946 [[package]]
5947 name = "sigit"
5948 -version = "1.7.0"
5948 +version = "1.7.1"
5949 dependencies = [
5950 "agent-client-protocol",
5951 "anyhow",
@@ -5976,7 +5976,7 @@ dependencies = [
5976
5977 [[package]]
5978 name = "sigit-agent"
5979 -version = "1.7.0"
5979 +version = "1.7.1"
5980 dependencies = [
5981 "agent-client-protocol",
5982 "anyhow",
Cargo.toml
+2 -2
@@ -3,7 +3,7 @@ resolver = "3"
3 members = ["crates/cli", "crates/sigit-*"]
4
5 [workspace.package]
6 -version = "1.7.0"
6 +version = "1.7.1"
7 edition = "2024"
8 license = "Apache-2.0"
9 repository = "https://github.com/getsigit/sigit"
@@ -16,7 +16,7 @@ authors = ["Seto Elkahfi <seto@sigit.si>", "paydii <193906237+paydii@users.norep
16 # crates.io, so this resolves from the registry rather than the onde-ed checkout next door.
17 ed-acp = { version = "1.3.0", default-features = false }
18 ed-acp-testkit = "1.3.0"
19 -sigit-agent = { version = "1.7.0", default-features = false, path = "crates/sigit-agent" }
19 +sigit-agent = { version = "1.7.1", default-features = false, path = "crates/sigit-agent" }
20
21 # ACP protocol SDK
22 agent-client-protocol = { version = "2.2", features = ["unstable_session_fork"] }