summaryrefslogtreecommitdiffhomepage
path: root/.rules/changelog/2026-03
diff options
context:
space:
mode:
authorAdam Malczewski <[email protected]>2026-03-31 23:10:45 +0900
committerAdam Malczewski <[email protected]>2026-03-31 23:10:45 +0900
commit57c56daf5906442dacc15951c9b3405f89309839 (patch)
treee76890119c0e47acb48f8585222b7a2f5e22df56 /.rules/changelog/2026-03
parent25488d32336e05b69a41391cc7b5153478d3cc8a (diff)
downloaddispatch-tool-files-57c56daf5906442dacc15951c9b3405f89309839.tar.gz
dispatch-tool-files-57c56daf5906442dacc15951c9b3405f89309839.zip
impdev
Diffstat (limited to '.rules/changelog/2026-03')
-rw-r--r--.rules/changelog/2026-03/31/01.md21
1 files changed, 21 insertions, 0 deletions
diff --git a/.rules/changelog/2026-03/31/01.md b/.rules/changelog/2026-03/31/01.md
new file mode 100644
index 0000000..ff5291f
--- /dev/null
+++ b/.rules/changelog/2026-03/31/01.md
@@ -0,0 +1,21 @@
+# 2026-03-31 — Add interface dependency and full test suite
+
+## Changes
+
+### Dependency Setup
+- Added `dispatch-tools-interface` as a runtime dependency in `gemspec` (`~> 0.1`)
+- Added local path reference in `Gemfile` for development
+
+### Source Updates
+- `lib/dispatch/tool/files.rb`: Added `require "dispatch/tools/interface"` and defined `SandboxError`, `FileNotFoundError`, `FileExistsError` error classes
+- `spec/spec_helper.rb`: Added interface, tmpdir, and fileutils requires
+- `spec/dispatch/tool/files_spec.rb`: Removed placeholder failing test
+
+### Test Suite (7 spec files)
+- `sandbox_spec.rb` — Path resolution, traversal attacks, symlinks, absolute paths, `within_worktree?`
+- `read_file_spec.rb` — Full read, line ranges, line numbers, not found, binary detection
+- `write_file_spec.rb` — Write new, overwrite, parent dirs, byte count, sandbox
+- `edit_file_spec.rb` — Single/multiple edits, sequential application, not found, ambiguous match
+- `create_file_spec.rb` — Create new, fail on existing, parent dirs, sandbox
+- `list_files_spec.rb` — Recursive/non-recursive, glob patterns, relative paths, directory errors
+- `search_files_spec.rb` — Plain text, regex, invalid regex, path scoping, pattern filter, result limit