v0.1.2 - Reliability & Security Hardening
·
12 commits
to master
since this release
π Summary
Critical infrastructure hardening and security sandboxing to prepare the system for safe, high-concurrency production use.
β¨ Key Features & Improvements
π‘ Security Sandboxing
- What changed: Implemented a `run_safe_command` utility with a strict executable allowlist and hardened path traversal validation.
- Reasoning: Since the AI can generate shell commands, we must ensure it cannot execute dangerous scripts or access files outside the project directory.
π Data Integrity & Atomicity
- What changed: Added `filelock` and temporary file writes for knowledge base updates, along with PII/Secret scrubbing.
- Reasoning: Prevented data corruption during parallel agent runs (race conditions) and ensured sensitive keys are never leaked into the vector database.
π Standardized Utility Architecture
- What changed: Reorganized the flat `utils/` folder into categorized sub-packages (`io/`, `security/`, `knowledge/`).
- Reasoning: As the project grows, a flat structure leads to circular imports and "god objects." This modularity makes the codebase easier for both humans and AI to navigate.
π Issues Addressed
- #42 [Security]: Sandbox isolation for command execution.
- #43 [Data Integrity]: Atomic indexing and PII protection.
- #48 [Architecture]: Standardization of logging and utility interfaces.
π Technical Notes
- Standardized logging to use a centralized `rich.console` provider in `utils/io/logger.py`.
- Updated release-tagging permissions (CI/CD fix).