verifiers 0.3.2.dev97__py3-none-any.whl → 0.3.2.dev98__py3-none-any.whl

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.
@@ -41,6 +41,15 @@ class _SessionSnapshot(BaseModel):
41
41
 
42
42
  session_id: str = Field(pattern=r"^[A-Za-z0-9._:-]{1,128}$")
43
43
  metrics: dict[str, int | float]
44
+ last_stop_reason: str | None = None
45
+
46
+
47
+ _TRUNCATION_STOPS = {
48
+ "max_total_tokens": "max_total_tokens",
49
+ "max_total_turns": "max_turns",
50
+ "token_budget": "max_output_tokens",
51
+ "compaction_failed": "compaction_failed",
52
+ }
44
53
 
45
54
 
46
55
  class CompactionConfig(BaseConfig):
@@ -251,6 +260,8 @@ class RLMHarness(ACPHarness[RLMHarnessConfig]):
251
260
  if snapshot.session_id != trace.id:
252
261
  raise ValueError("RLM session snapshot does not match the rollout")
253
262
  trace.record_metrics(snapshot.metrics)
263
+ if condition := _TRUNCATION_STOPS.get(snapshot.last_stop_reason or ""):
264
+ trace.stop(condition)
254
265
 
255
266
  def acp_turn_result(self, trace: Trace, result: ACPTurn) -> None:
256
267
  self._consume_snapshot(trace, result.response_metadata)
verifiers/v1/trace.py CHANGED
@@ -621,12 +621,13 @@ class Trace(BaseModel, Generic[DataT, StateT, AgentConfigT]):
621
621
 
622
622
  @property
623
623
  def is_truncated(self) -> bool:
624
- """True for framework limits or a length-finished final response."""
624
+ """True for framework limits, failed compaction, or a length-finished response."""
625
625
  if self.stop_condition in (
626
626
  "max_turns",
627
627
  "max_input_tokens",
628
628
  "max_output_tokens",
629
629
  "max_total_tokens",
630
+ "compaction_failed",
630
631
  ):
631
632
  return True
632
633
  last = next((c for c in reversed(self.calls) if c.error is None), None)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: verifiers
3
- Version: 0.3.2.dev97
3
+ Version: 0.3.2.dev98
4
4
  Summary: Verifiers: Environments for LLM Reinforcement Learning
5
5
  Project-URL: Homepage, https://github.com/primeintellect-ai/verifiers
6
6
  Project-URL: Documentation, https://github.com/primeintellect-ai/verifiers
@@ -14,7 +14,7 @@ verifiers/v1/session.py,sha256=7iarEDRH2epID_O8ai-1HwveXze_o8shnLw9pFMFX5o,18900
14
14
  verifiers/v1/state.py,sha256=EckF2bWp-vV4b1jYJ9sLI5xrfGuI5spIgYYwW926toI,595
15
15
  verifiers/v1/task.py,sha256=9YhllEDgoHSz72-1fcYwBADl-rOzASnrSVimLheWmwI,12237
16
16
  verifiers/v1/taskset.py,sha256=fp2E0IEhL_Ybj9cegZwljfTmW27p_30zTWHFKw_kXE4,4374
17
- verifiers/v1/trace.py,sha256=_FDXvMVYZD1v9pisQdu6xIUp_qcW0pXLT0g7n8qoswc,30502
17
+ verifiers/v1/trace.py,sha256=6ny9D7qXcB2NwN97UstxWCrT4_rmAAHCcW-buS7XwYs,30549
18
18
  verifiers/v1/types.py,sha256=PH1SxRWXOjPCgQD9aZgM18_bECvFSNQ25gkCbulmTKU,9857
19
19
  verifiers/v1/acp/__init__.py,sha256=Zx5FhpkpQHETc-FB_zI3Qt4TxmuMnbv7YxxXk2npjAk,12922
20
20
  verifiers/v1/acp/runner.py,sha256=ODrvrC_8DDsAoif9jr4eYJsQzesPxDorxqqm-lo5tNY,11403
@@ -110,7 +110,7 @@ verifiers/v1/harnesses/pi/harness.py,sha256=UwqzN8-PkGzo2PXsZaYiudJdz1jSpzNtXT5v
110
110
  verifiers/v1/harnesses/prime_agent/__init__.py,sha256=xfPC4RrlnyYWaf38tPAOZq4YL6M55lMpj5BoRLmaK8I,171
111
111
  verifiers/v1/harnesses/prime_agent/harness.py,sha256=cMvkNdqEutzCoX3lrmCQ5dAi_HSDV3Vhw6K1N-LiBtA,10630
112
112
  verifiers/v1/harnesses/rlm/__init__.py,sha256=hwx51xTdEWzzYgMj-p4ETNcptoub3IPMDbEdJ4uB8Ns,122
113
- verifiers/v1/harnesses/rlm/harness.py,sha256=6IYZLC4l2SrkBfaEf_pJv9IQoK4GcFw0gDNXMO_ERf4,11903
113
+ verifiers/v1/harnesses/rlm/harness.py,sha256=70HXfw88G1dfDhSCjrqFUKRvY7a8ZIp0jifPc4EJNM8,12250
114
114
  verifiers/v1/harnesses/terminus_2/__init__.py,sha256=l1pwfg1HyVDEqT9efdnFWcXqaZwtKwe7TrplkyxZSA0,166
115
115
  verifiers/v1/harnesses/terminus_2/harness.py,sha256=DMTY1bzvydyjHqzmvBSBGKJsmUzYEgxqd215a7cG7tg,3052
116
116
  verifiers/v1/harnesses/terminus_2/program.py,sha256=X8MZdyItU3gbXGXnGOlJ9LWcUTnqIDaxlhkZvoRiqKY,2703
@@ -188,8 +188,8 @@ verifiers/v1/utils/prime.py,sha256=UTYRjp9cbjNb6CVmBHda-1wWZAIIfxNOmTyNuT7_wL4,9
188
188
  verifiers/v1/utils/retries.py,sha256=Y2ZgrAjn-qNkRKZP_RVNL_7EK0iaRcZeCa404lpGYi4,5417
189
189
  verifiers/v1/utils/score.py,sha256=493yJVMw8teCu9JxapxMFPFzI0hNUqdo0Y2nGW4kckk,6200
190
190
  verifiers/v1/utils/version.py,sha256=-obEo_-l9-D8FLef4hYxncOe-uJpxrM1g2Hig_37Sgs,1607
191
- verifiers-0.3.2.dev97.dist-info/METADATA,sha256=c7d5Cu1K-DvmYxjrcfVVCXROLK8U9sn9YgGJcz7ffCo,4237
192
- verifiers-0.3.2.dev97.dist-info/WHEEL,sha256=zOwg4jB6zX2kU910N-cMawjivD6tO8NEWvE12je1bVk,87
193
- verifiers-0.3.2.dev97.dist-info/entry_points.txt,sha256=uqQje0TMsr7k6nXlWxlPs13Si0evb3pVCEDF6c-YL80,241
194
- verifiers-0.3.2.dev97.dist-info/licenses/LICENSE,sha256=v0RrUsdV3IDoZhrRce297IXS3xMHNJ-_LdLpFAUWb9k,1072
195
- verifiers-0.3.2.dev97.dist-info/RECORD,,
191
+ verifiers-0.3.2.dev98.dist-info/METADATA,sha256=yEEXS9iJ0vQSP-gb56cGxxa1DmA2Ffm2Y6g9mlXeqrY,4237
192
+ verifiers-0.3.2.dev98.dist-info/WHEEL,sha256=zOwg4jB6zX2kU910N-cMawjivD6tO8NEWvE12je1bVk,87
193
+ verifiers-0.3.2.dev98.dist-info/entry_points.txt,sha256=uqQje0TMsr7k6nXlWxlPs13Si0evb3pVCEDF6c-YL80,241
194
+ verifiers-0.3.2.dev98.dist-info/licenses/LICENSE,sha256=v0RrUsdV3IDoZhrRce297IXS3xMHNJ-_LdLpFAUWb9k,1072
195
+ verifiers-0.3.2.dev98.dist-info/RECORD,,