fluxloop-cli 0.3.10__tar.gz → 0.3.11__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 (82) hide show
  1. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/PKG-INFO +27 -1
  2. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/README.md +26 -0
  3. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/__init__.py +1 -1
  4. fluxloop_cli-0.3.11/fluxloop_cli/commands/data.py +1316 -0
  5. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/evaluate.py +168 -3
  6. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/inputs.py +95 -1
  7. fluxloop_cli-0.3.11/fluxloop_cli/commands/personas.py +580 -0
  8. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/sync.py +43 -0
  9. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli.egg-info/PKG-INFO +27 -1
  10. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli.egg-info/SOURCES.txt +3 -0
  11. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/pyproject.toml +1 -1
  12. fluxloop_cli-0.3.11/tests/test_data_command.py +589 -0
  13. fluxloop_cli-0.3.11/tests/test_evaluate_server_decision.py +193 -0
  14. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_inputs_command.py +80 -0
  15. fluxloop_cli-0.3.11/tests/test_personas_command.py +244 -0
  16. fluxloop_cli-0.3.11/tests/test_sync_quick_gate_output.py +34 -0
  17. fluxloop_cli-0.3.10/fluxloop_cli/commands/data.py +0 -692
  18. fluxloop_cli-0.3.10/fluxloop_cli/commands/personas.py +0 -331
  19. fluxloop_cli-0.3.10/tests/test_personas_command.py +0 -95
  20. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/api_utils.py +0 -0
  21. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/arg_binder.py +0 -0
  22. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/auth_manager.py +0 -0
  23. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/__init__.py +0 -0
  24. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/apikeys.py +0 -0
  25. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/auth.py +0 -0
  26. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/bundles.py +0 -0
  27. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/config.py +0 -0
  28. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/context.py +0 -0
  29. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/criteria.py +0 -0
  30. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/generate.py +0 -0
  31. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/init.py +0 -0
  32. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/local_context.py +0 -0
  33. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/projects.py +0 -0
  34. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/run.py +0 -0
  35. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/scenarios.py +0 -0
  36. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/status.py +0 -0
  37. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/commands/test.py +0 -0
  38. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/common_options.py +0 -0
  39. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/config_loader.py +0 -0
  40. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/config_schema.py +0 -0
  41. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/constants.py +0 -0
  42. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/context_manager.py +0 -0
  43. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/conversation_supervisor.py +0 -0
  44. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/environment.py +0 -0
  45. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/http_client.py +0 -0
  46. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/input_generator.py +0 -0
  47. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/language.py +0 -0
  48. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/llm_generator.py +0 -0
  49. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/main.py +0 -0
  50. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/progress.py +0 -0
  51. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/project_paths.py +0 -0
  52. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/runner.py +0 -0
  53. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/target_loader.py +0 -0
  54. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/templates.py +0 -0
  55. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/testing/__init__.py +0 -0
  56. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/testing/pytest_plugin.py +0 -0
  57. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/testing/types.py +0 -0
  58. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/token_usage.py +0 -0
  59. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/turns.py +0 -0
  60. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli/validators.py +0 -0
  61. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli.egg-info/dependency_links.txt +0 -0
  62. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli.egg-info/entry_points.txt +0 -0
  63. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli.egg-info/requires.txt +0 -0
  64. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/fluxloop_cli.egg-info/top_level.txt +0 -0
  65. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/setup.cfg +0 -0
  66. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_analysis_recommendations.py +0 -0
  67. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_arg_binder.py +0 -0
  68. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_config_command.py +0 -0
  69. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_conversation_supervisor.py +0 -0
  70. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_evaluate_command.py +0 -0
  71. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_evaluation_llm.py +0 -0
  72. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_init_pytest_template.py +0 -0
  73. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_input_generator.py +0 -0
  74. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_projects_language.py +0 -0
  75. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_prompt_library.py +0 -0
  76. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_pytest_plugin.py +0 -0
  77. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_run_command.py +0 -0
  78. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_runner_multi_turn.py +0 -0
  79. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_scenarios_language.py +0 -0
  80. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_success_criteria.py +0 -0
  81. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_target_loader.py +0 -0
  82. {fluxloop_cli-0.3.10 → fluxloop_cli-0.3.11}/tests/test_testing_types.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fluxloop-cli
3
- Version: 0.3.10
3
+ Version: 0.3.11
4
4
  Summary: FluxLoop CLI for running agent simulations
5
5
  Author-email: FluxLoop Team <team@fluxloop.dev>
6
6
  License: Apache-2.0
@@ -68,10 +68,36 @@ The legacy `setting.yaml` is still supported, but new projects created with
68
68
  - `fluxloop parse experiment` – convert experiment outputs into readable artifacts and emit structured per-trace JSON at `per_trace_analysis/per_trace.jsonl`
69
69
  - `fluxloop evaluate experiment` – run the LLM-driven evaluation pipeline (LLM-PT → rule aggregation → LLM-OV → HTML render). Requires the parsed per-trace file (or `--per-trace`) and writes an interactive report to `evaluation_report/report.html` by default.
70
70
  - `fluxloop config set-llm` – update LLM provider/model in `configs/input.yaml`
71
+ - `fluxloop data push|bind|gt status` – upload/bind Ground Truth (Validation) datasets and inspect GT materialization status
71
72
  - `fluxloop record enable|disable|status` – toggle recording mode across `.env` and simulation config
72
73
  - `fluxloop doctor` – summarize Python, FluxLoop CLI/MCP, and MCP index state for the active environment
73
74
  - `--yes/-y` (for `fluxloop run experiment`) – skip the interactive confirmation prompt, ideal for CI and the Pytest bridge
74
75
 
76
+ ### Ground Truth Data Workflow
77
+
78
+ Use these commands to upload validation datasets, bind them to a scenario, and
79
+ check GT materialization progress:
80
+
81
+ ```bash
82
+ # 1) Upload as Ground Truth + bind + materialize
83
+ fluxloop data push qa_pairs.csv \
84
+ --usage ground-truth \
85
+ --scenario <scenario_id> \
86
+ --split test \
87
+ --label-column expected_answer \
88
+ --row-filter "lang = 'ko'"
89
+
90
+ # 2) Bind existing data as validation (auto materialize by default)
91
+ fluxloop data bind <data_id> \
92
+ --scenario <scenario_id> \
93
+ --role validation \
94
+ --split test \
95
+ --label-column expected_answer
96
+
97
+ # 3) Check GT materialization status
98
+ fluxloop data gt status --scenario <scenario_id> [--data-id <data_id>]
99
+ ```
100
+
75
101
  ### Multi-turn supervisor options
76
102
 
77
103
  `fluxloop run experiment` supports multi-turn orchestration out of the box:
@@ -28,10 +28,36 @@ The legacy `setting.yaml` is still supported, but new projects created with
28
28
  - `fluxloop parse experiment` – convert experiment outputs into readable artifacts and emit structured per-trace JSON at `per_trace_analysis/per_trace.jsonl`
29
29
  - `fluxloop evaluate experiment` – run the LLM-driven evaluation pipeline (LLM-PT → rule aggregation → LLM-OV → HTML render). Requires the parsed per-trace file (or `--per-trace`) and writes an interactive report to `evaluation_report/report.html` by default.
30
30
  - `fluxloop config set-llm` – update LLM provider/model in `configs/input.yaml`
31
+ - `fluxloop data push|bind|gt status` – upload/bind Ground Truth (Validation) datasets and inspect GT materialization status
31
32
  - `fluxloop record enable|disable|status` – toggle recording mode across `.env` and simulation config
32
33
  - `fluxloop doctor` – summarize Python, FluxLoop CLI/MCP, and MCP index state for the active environment
33
34
  - `--yes/-y` (for `fluxloop run experiment`) – skip the interactive confirmation prompt, ideal for CI and the Pytest bridge
34
35
 
36
+ ### Ground Truth Data Workflow
37
+
38
+ Use these commands to upload validation datasets, bind them to a scenario, and
39
+ check GT materialization progress:
40
+
41
+ ```bash
42
+ # 1) Upload as Ground Truth + bind + materialize
43
+ fluxloop data push qa_pairs.csv \
44
+ --usage ground-truth \
45
+ --scenario <scenario_id> \
46
+ --split test \
47
+ --label-column expected_answer \
48
+ --row-filter "lang = 'ko'"
49
+
50
+ # 2) Bind existing data as validation (auto materialize by default)
51
+ fluxloop data bind <data_id> \
52
+ --scenario <scenario_id> \
53
+ --role validation \
54
+ --split test \
55
+ --label-column expected_answer
56
+
57
+ # 3) Check GT materialization status
58
+ fluxloop data gt status --scenario <scenario_id> [--data-id <data_id>]
59
+ ```
60
+
35
61
  ### Multi-turn supervisor options
36
62
 
37
63
  `fluxloop run experiment` supports multi-turn orchestration out of the box:
@@ -2,7 +2,7 @@
2
2
  FluxLoop CLI - Command-line interface for running agent simulations.
3
3
  """
4
4
 
5
- __version__ = "0.3.10"
5
+ __version__ = "0.3.11"
6
6
 
7
7
  from .main import app
8
8