Commit c37d5af

mo khan <mo@mokhan.ca>
2026-01-14 21:03:59
chore: release v0.7.0 tag: v0.7.0
1 parent fb36cd1
Changed files (3)
lib/elelem/version.rb
@@ -1,5 +1,5 @@
 # frozen_string_literal: true
 
 module Elelem
-  VERSION = "0.6.0"
+  VERSION = "0.7.0"
 end
\ No newline at end of file
CHANGELOG.md
@@ -1,5 +1,22 @@
 ## [Unreleased]
 
+## [0.7.0] - 2026-01-14
+
+### Added
+- ASCII spinner animation while waiting for LLM responses
+- `Terminal#waiting` method with automatic cleanup on next output
+- Decision-making principles in system prompt (prefer reversible actions, ask when uncertain)
+- Mode enforcement tests
+
+### Changed
+- Renamed internal `mode` concept to `permissions` for clarity (read/write/execute are permissions, plan/build/verify are modes)
+- Refactored `Toolbox#run_tool` to accept `permissions:` parameter
+
+### Fixed
+- **Security**: Mode restrictions now enforced at execution time, not just schema time
+  - Previously, LLMs could call tools outside their mode by guessing tool names
+  - Now `run_tool` validates the tool is allowed for the current permission set
+
 ## [0.6.0] - 2026-01-12
 
 ### Added
Gemfile.lock
@@ -1,7 +1,7 @@
 PATH
   remote: .
   specs:
-    elelem (0.6.0)
+    elelem (0.7.0)
       cli-ui (~> 2.0)
       erb (~> 6.0)
       fileutils (~> 1.0)