claude-dev-env 1.29.0 → 1.29.2

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-dev-env",
3
- "version": "1.29.0",
3
+ "version": "1.29.2",
4
4
  "description": "Claude Code development standards — rules, hooks, agents, commands, and skills",
5
5
  "type": "module",
6
6
  "bin": {
@@ -248,6 +248,8 @@ def should_write_fixed_file(
248
248
  def is_safe_relative_path(each_path: str) -> bool:
249
249
  if os.path.isabs(each_path):
250
250
  return False
251
+ if each_path.startswith(("/", "\\")):
252
+ return False
251
253
  normalized = os.path.normpath(each_path)
252
254
  if normalized.startswith(".." + os.sep) or normalized == "..":
253
255
  return False
@@ -18,9 +18,14 @@ import subprocess
18
18
  import sys
19
19
  from pathlib import Path
20
20
 
21
- _hooks_dir = Path(__file__).resolve().parent.parent / "hooks"
22
- if str(_hooks_dir) not in sys.path:
23
- sys.path.insert(0, str(_hooks_dir))
21
+ _hooks_dir_string = str(Path(__file__).resolve().parent.parent / "hooks")
22
+ while _hooks_dir_string in sys.path:
23
+ sys.path.remove(_hooks_dir_string)
24
+ sys.path.insert(0, _hooks_dir_string)
25
+
26
+ for _cached_module_name in list(sys.modules):
27
+ if _cached_module_name == "config" or _cached_module_name.startswith("config."):
28
+ del sys.modules[_cached_module_name]
24
29
 
25
30
  from config.project_paths_reader import registry_file_path
26
31
  from config.setup_project_paths_constants import (
@@ -112,10 +112,10 @@ def test_contract_should_require_files_opened_in_proof_of_absence() -> None:
112
112
  )
113
113
 
114
114
 
115
- def test_step2_spawn_should_include_model_sonnet_parameter() -> None:
115
+ def test_step2_spawn_should_include_model_opus_parameter() -> None:
116
116
  skill_text = _load_skill_text()
117
- assert 'model="sonnet"' in skill_text, (
118
- "Step 2 Agent() spawn template must include model=\"sonnet\" for the primary subagent"
117
+ assert 'model="opus"' in skill_text, (
118
+ "Step 2 Agent() spawn template must include model=\"opus\" for the primary subagent"
119
119
  )
120
120
 
121
121