세션 평가와 교수자 분석 보강
This commit is contained in:
parent
5c4ac04e06
commit
fe2796f05a
51 changed files with 4928 additions and 240 deletions
|
|
@ -146,7 +146,7 @@ class RuntimeFallbackPolicyTest(unittest.IsolatedAsyncioTestCase):
|
|||
"has_engine_config": False,
|
||||
"has_session_columns": False,
|
||||
"has_state_columns": False,
|
||||
"has_turn_provider_events": False,
|
||||
"has_turn_voice_metadata_columns": False,
|
||||
"has_session_review_worksheet_columns": False,
|
||||
"has_stage_defs": False,
|
||||
"has_admin_health_event": False,
|
||||
|
|
@ -185,6 +185,50 @@ class RuntimeFallbackPolicyTest(unittest.IsolatedAsyncioTestCase):
|
|||
|
||||
self.assertIn("runtime DB schema is incomplete", str(caught.exception))
|
||||
|
||||
async def test_runtime_readiness_requires_all_turn_voice_metadata_columns(self) -> None:
|
||||
class VoiceMetadataDriftConn:
|
||||
def __init__(self) -> None:
|
||||
self.query = ""
|
||||
|
||||
async def fetchrow(self, query: str, *args, **kwargs):
|
||||
self.query = query
|
||||
return {
|
||||
"has_user_columns": True,
|
||||
"has_persona_triggers": True,
|
||||
"has_persona_voice_map": True,
|
||||
"has_auth_session": True,
|
||||
"has_preferences": True,
|
||||
"has_engine_config": True,
|
||||
"has_session_columns": True,
|
||||
"has_state_columns": True,
|
||||
"has_turn_voice_metadata_columns": False,
|
||||
"has_session_review_worksheet_columns": True,
|
||||
"has_stage_defs": True,
|
||||
"has_admin_health_event": True,
|
||||
"has_admin_health_daily_rollup": True,
|
||||
"has_admin_health_daily_rollup_columns": True,
|
||||
"has_support_ticket": True,
|
||||
"has_support_ticket_duplicate_columns": True,
|
||||
"has_learner_prepost_measure": True,
|
||||
"has_admin_health_event_policies": True,
|
||||
"has_admin_health_daily_rollup_policies": True,
|
||||
"has_support_ticket_policies": True,
|
||||
"has_learner_prepost_measure_policies": True,
|
||||
"has_session_write_policies": True,
|
||||
"removed_old_session_policy": True,
|
||||
"has_turn_write_policies": True,
|
||||
"removed_old_turn_policy": True,
|
||||
}
|
||||
|
||||
conn = VoiceMetadataDriftConn()
|
||||
|
||||
ready = await auth_sessions._runtime_tables_ready(conn)
|
||||
|
||||
self.assertFalse(ready)
|
||||
for column in ("audio_ref", "silence_ms", "speech_rate", "barge_in", "provider_events"):
|
||||
self.assertIn(column, conn.query)
|
||||
self.assertIn("HAVING count(*) = 5", conn.query)
|
||||
|
||||
async def test_staging_uses_env_engine_config_when_row_missing(self) -> None:
|
||||
class EmptyConfigConn:
|
||||
async def fetchrow(self, *args, **kwargs):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue