feat: add coder check and give more time (#1127)

* feat: introduce max_seconds_multiplier for timeout management across components

* avoid using assert in test

* hot fix a very small bug

* runner multiply twice

* revert feedback change

* add a switch to longer timeout
This commit is contained in:
Xu Yang
2025-07-29 14:59:38 +08:00
committed by GitHub
parent a6703aa313
commit e0519b56ae
29 changed files with 102 additions and 83 deletions
@@ -53,7 +53,10 @@ class PipelineCoSTEEREvaluator(CoSTEEREvaluator):
final_decision=False,
)
env = get_ds_env(extra_volumes={self.scen.debug_path: T("scenarios.data_science.share:scen.input_path").r()})
env = get_ds_env(
extra_volumes={self.scen.debug_path: T("scenarios.data_science.share:scen.input_path").r()},
running_timeout_period=self.scen.real_debug_timeout(),
)
stdout = ""
implementation.execute(env=env, entry=get_clear_ws_cmd())
@@ -97,6 +100,11 @@ class PipelineCoSTEEREvaluator(CoSTEEREvaluator):
else:
stdout += "Debug mode did not provide debug_time or estimated_time, it's a buggy implementation.\n"
test_eval = get_test_eval()
if test_eval.enabled(self.scen.competition):
submission_check_out, submission_ret_code = test_eval.valid(self.scen.competition, implementation)
stdout += f"\n### Submission check:\n{submission_check_out}\nIf Submission check returns a 'Submission is valid' or similar message, despite some warning messages, you should still consider the submission as valid and give a positive final decision. "
score_fp = implementation.workspace_path / "scores.csv"
score_ret_code = 0
score_check_text = ""
@@ -153,6 +161,7 @@ class PipelineCoSTEEREvaluator(CoSTEEREvaluator):
system_prompt = T(".prompts:pipeline_eval.system").r(
is_sub_enabled=test_eval.is_sub_enabled(self.scen.competition),
debug_mode=DS_RD_SETTING.sample_data_by_LLM,
mle_check=(DS_RD_SETTING.sample_data_by_LLM and test_eval.is_sub_enabled(self.scen.competition)),
)
user_prompt = T(".prompts:pipeline_eval.user").r(
scenario=self.scen.get_scenario_all_desc(eda_output=eda_output),