Roopalgn commited on
Commit
8ccf96d
·
1 Parent(s): 2216a4d

Ignore action metadata in extra field validation

Browse files
server/environment.py CHANGED
@@ -115,7 +115,7 @@ class HelpdeskTicketRoutingEnvironment(
115
  f
116
  for f, v in action.model_dump(exclude_none=True).items()
117
  if v is not None
118
- and f not in {"action_type", "tool_name", "tool_target_ticket_id"}
119
  }
120
  allowed = set(task["allowed_fields"])
121
  extra_fields = submitted_fields - allowed
 
115
  f
116
  for f, v in action.model_dump(exclude_none=True).items()
117
  if v is not None
118
+ and f not in {"action_type", "tool_name", "tool_target_ticket_id", "metadata"}
119
  }
120
  allowed = set(task["allowed_fields"])
121
  extra_fields = submitted_fields - allowed
tests/test_extra_fields_penalty.py CHANGED
@@ -132,6 +132,24 @@ class TestExtraFieldsPenalty(unittest.TestCase):
132
  self.assertEqual(len(result_obs.history), 1)
133
  self.assertNotIn("penalty_reason", result_obs.history[0])
134
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
135
  def test_extra_fields_no_exception_raised(self) -> None:
136
  """Requirement 7.4: extra fields must not raise an unhandled exception."""
137
  env = _make_env()
 
132
  self.assertEqual(len(result_obs.history), 1)
133
  self.assertNotIn("penalty_reason", result_obs.history[0])
134
 
135
+ def test_action_metadata_is_not_treated_as_extra_field(self) -> None:
136
+ """OpenEnv Action metadata should not trigger the extra-fields penalty."""
137
+ env = _make_env()
138
+ obs = env.reset(seed=42, task_id=1)
139
+ ticket_id = obs.current_ticket["ticket_id"]
140
+ current_ticket = env._tickets_by_id[ticket_id] # noqa: SLF001 - test-only inspection
141
+
142
+ result_obs = env.step(
143
+ HelpdeskTicketAction(
144
+ issue_type=current_ticket.issue_type,
145
+ metadata={},
146
+ )
147
+ )
148
+
149
+ self.assertEqual(len(result_obs.history), 1)
150
+ self.assertNotIn("penalty_reason", result_obs.history[0])
151
+ self.assertGreater(result_obs.history[0]["score"], 0.0)
152
+
153
  def test_extra_fields_no_exception_raised(self) -> None:
154
  """Requirement 7.4: extra fields must not raise an unhandled exception."""
155
  env = _make_env()