kin: auto-commit after pipeline

This commit is contained in:
Gros Frumos 2026-03-17 18:33:09 +02:00
parent 9f58682689
commit 79757a3120

View file

@ -2630,10 +2630,15 @@ class TestPMStepPipelineLog:
pm_ended_at="2026-03-17T10:00:05",
)
logs = conn.execute(
"SELECT * FROM pipeline_log WHERE message='PM step: task decomposed'"
# Должно быть 2 записи: PM start + PM done
start_logs = conn.execute(
"SELECT * FROM pipeline_log WHERE message='PM start: task planning'"
).fetchall()
assert len(logs) == 1
done_logs = conn.execute(
"SELECT * FROM pipeline_log WHERE message LIKE 'PM done:%'"
).fetchall()
assert len(start_logs) == 1
assert len(done_logs) == 1
@patch("agents.runner._run_autocommit")
@patch("agents.runner._run_learning_extraction")
@ -2658,7 +2663,7 @@ class TestPMStepPipelineLog:
assert pipeline is not None
pm_log = conn.execute(
"SELECT * FROM pipeline_log WHERE message='PM step: task decomposed'"
"SELECT * FROM pipeline_log WHERE message='PM start: task planning'"
).fetchone()
assert pm_log is not None
assert pm_log["pipeline_id"] == pipeline["id"]
@ -2669,7 +2674,7 @@ class TestPMStepPipelineLog:
def test_pm_log_entry_has_step_pm_in_extra(
self, mock_run, mock_learn, mock_autocommit, conn
):
"""extra_json PM-записи содержит role='pm' и корректные данные тайминга."""
"""extra_json PM-записи содержит role='pm' и корректные метрики выполнения."""
mock_run.return_value = _mock_claude_success({"result": "done"})
mock_learn.return_value = {"added": 0, "skipped": 0}
@ -2683,14 +2688,16 @@ class TestPMStepPipelineLog:
)
row = conn.execute(
"SELECT extra_json FROM pipeline_log WHERE message='PM step: task decomposed'"
"SELECT extra_json, ts FROM pipeline_log WHERE message LIKE 'PM done:%'"
).fetchone()
assert row is not None
extra = json.loads(row["extra_json"])
assert extra["role"] == "pm"
assert extra["duration_seconds"] == 7
assert extra["pm_started_at"] == "2026-03-17T10:00:00"
assert extra["pm_ended_at"] == "2026-03-17T10:00:07"
assert extra["steps_count"] == 1
assert extra["tokens_used"] == 1500
assert extra["cost_usd"] == 0.02
# ts должен совпадать с pm_ended_at
assert row["ts"] == "2026-03-17T10:00:07"
@patch("agents.runner._run_autocommit")
@patch("agents.runner._run_learning_extraction")