fluxloop-cli 0.2.7__tar.gz → 0.2.9__tar.gz

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.
Files changed (35) hide show
  1. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/PKG-INFO +1 -1
  2. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/__init__.py +1 -1
  3. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/arg_binder.py +26 -4
  4. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/templates.py +1 -1
  5. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli.egg-info/PKG-INFO +1 -1
  6. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/pyproject.toml +1 -1
  7. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/README.md +0 -0
  8. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/commands/__init__.py +0 -0
  9. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/commands/config.py +0 -0
  10. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/commands/generate.py +0 -0
  11. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/commands/init.py +0 -0
  12. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/commands/parse.py +0 -0
  13. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/commands/record.py +0 -0
  14. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/commands/run.py +0 -0
  15. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/commands/status.py +0 -0
  16. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/config_loader.py +0 -0
  17. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/config_schema.py +0 -0
  18. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/constants.py +0 -0
  19. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/input_generator.py +0 -0
  20. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/llm_generator.py +0 -0
  21. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/main.py +0 -0
  22. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/project_paths.py +0 -0
  23. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/runner.py +0 -0
  24. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/target_loader.py +0 -0
  25. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli/validators.py +0 -0
  26. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli.egg-info/SOURCES.txt +0 -0
  27. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli.egg-info/dependency_links.txt +0 -0
  28. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli.egg-info/entry_points.txt +0 -0
  29. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli.egg-info/requires.txt +0 -0
  30. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/fluxloop_cli.egg-info/top_level.txt +0 -0
  31. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/setup.cfg +0 -0
  32. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/tests/test_arg_binder.py +0 -0
  33. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/tests/test_config_command.py +0 -0
  34. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/tests/test_input_generator.py +0 -0
  35. {fluxloop_cli-0.2.7 → fluxloop_cli-0.2.9}/tests/test_target_loader.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fluxloop-cli
3
- Version: 0.2.7
3
+ Version: 0.2.9
4
4
  Summary: FluxLoop CLI for running agent simulations
5
5
  Author-email: FluxLoop Team <team@fluxloop.dev>
6
6
  License: Apache-2.0
@@ -2,7 +2,7 @@
2
2
  FluxLoop CLI - Command-line interface for running agent simulations.
3
3
  """
4
4
 
5
- __version__ = "0.2.7"
5
+ __version__ = "0.2.9"
6
6
 
7
7
  from .main import app
8
8
 
@@ -141,7 +141,9 @@ class ArgBinder:
141
141
  callable_markers = {
142
142
  key: value
143
143
  for key, value in kwargs.items()
144
- if isinstance(value, str) and value.startswith("<")
144
+ if isinstance(value, str)
145
+ and value.startswith("<")
146
+ and not value.startswith("<repr:")
145
147
  }
146
148
 
147
149
  if not callable_markers:
@@ -206,10 +208,30 @@ class ArgBinder:
206
208
 
207
209
  def _set_by_path(self, payload: Dict[str, Any], path: str, value: Any) -> None:
208
210
  parts = path.split(".")
209
- current = payload
211
+ current: Any = payload
212
+
210
213
  for key in parts[:-1]:
211
- current = current[key]
212
- current[parts[-1]] = value
214
+ if isinstance(current, list):
215
+ index = self._coerce_list_index(key)
216
+ current = current[index]
217
+ else:
218
+ current = current[key]
219
+
220
+ final_key = parts[-1]
221
+ if isinstance(current, list):
222
+ index = self._coerce_list_index(final_key)
223
+ current[index] = value
224
+ else:
225
+ current[final_key] = value
226
+
227
+ @staticmethod
228
+ def _coerce_list_index(key: str) -> int:
229
+ try:
230
+ return int(key)
231
+ except ValueError as exc:
232
+ raise TypeError(
233
+ "List index segments in override_param_path must be integers"
234
+ ) from exc
213
235
 
214
236
  def _resolve_config_target(self) -> Optional[str]:
215
237
  runner = self.config.runner
@@ -108,7 +108,7 @@ def create_simulation_config(project_name: str) -> str:
108
108
  function_name: "run"
109
109
  target: "examples.simple_agent:run"
110
110
  working_directory: .
111
- python_path: []
111
+ python_path:
112
112
  timeout_seconds: 120
113
113
  max_retries: 3
114
114
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fluxloop-cli
3
- Version: 0.2.7
3
+ Version: 0.2.9
4
4
  Summary: FluxLoop CLI for running agent simulations
5
5
  Author-email: FluxLoop Team <team@fluxloop.dev>
6
6
  License: Apache-2.0
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "fluxloop-cli"
7
- version = "0.2.7"
7
+ version = "0.2.9"
8
8
  description = "FluxLoop CLI for running agent simulations"
9
9
  authors = [
10
10
  {name = "FluxLoop Team", email = "team@fluxloop.dev"}
File without changes
File without changes