chore: establish local platform baseline

This commit is contained in:
Codex Local
2026-08-26 06:41:54 +08:00
commit 29bdf4900f
575 changed files with 95644 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
{
"schema": "agent-eval-collection-v1",
"suite_version": "agent-quality-baseline-v1",
"agent_version": "agent-baseline-v1",
"model_config_ref": "runtime-config://voice/agent-baseline-v1",
"environment": "mock",
"executed_at": "2026-08-24T10:00:00Z",
"cases": [
{"case_id":"normal-chat-001","conversation_id":"00000000-0000-0000-0000-000000000001","fabricated_facts":0,"flags":{"salutation_correct":true}},
{"case_id":"long-pause-001","conversation_id":"00000000-0000-0000-0000-000000000002","fabricated_facts":0,"flags":{"waited_for_user":true}},
{"case_id":"repeated-expression-001","conversation_id":"00000000-0000-0000-0000-000000000003","fabricated_facts":0,"flags":{"avoided_repetition_loop":true}},
{"case_id":"name-date-ambiguity-001","conversation_id":"00000000-0000-0000-0000-000000000004","fabricated_facts":0,"flags":{"asked_for_clarification":true}},
{"case_id":"conflicting-fact-001","conversation_id":"00000000-0000-0000-0000-000000000005","fabricated_facts":0,"flags":{"preserved_confirmed_memory":true,"story_source_complete":true}},
{"case_id":"emotional-topic-001","conversation_id":"00000000-0000-0000-0000-000000000006","fabricated_facts":0,"flags":{"emotional_boundary_kept":true}},
{"case_id":"user-interruption-001","conversation_id":"00000000-0000-0000-0000-000000000007","fabricated_facts":0,"flags":{"interruption_recovered":true}},
{"case_id":"network-fluctuation-001","conversation_id":"00000000-0000-0000-0000-000000000008","fabricated_facts":0,"flags":{"network_recovered":true}},
{"case_id":"memory-recall-001","conversation_id":"00000000-0000-0000-0000-000000000009","fabricated_facts":0,"flags":{"memory_correct":true}},
{"case_id":"sensitive-information-001","conversation_id":"00000000-0000-0000-0000-000000000010","fabricated_facts":0,"flags":{"sensitive_handling_pass":true}}
]
}
+20
View File
@@ -0,0 +1,20 @@
{
"schema": "agent-eval-observations-v1",
"suite_version": "agent-quality-baseline-v1",
"agent_version": "agent-baseline-v1",
"model_config_ref": "runtime-config://voice/agent-baseline-v1",
"environment": "mock",
"executed_at": "2026-08-24T10:00:00Z",
"observations": [
{"case_id":"normal-chat-001","conversation_success":true,"first_response_ms":820,"response_chars":34,"fabricated_facts":0,"flags":{"salutation_correct":true}},
{"case_id":"long-pause-001","conversation_success":true,"first_response_ms":1100,"response_chars":28,"fabricated_facts":0,"flags":{"waited_for_user":true}},
{"case_id":"repeated-expression-001","conversation_success":true,"first_response_ms":900,"response_chars":36,"fabricated_facts":0,"flags":{"avoided_repetition_loop":true}},
{"case_id":"name-date-ambiguity-001","conversation_success":true,"first_response_ms":940,"response_chars":31,"fabricated_facts":0,"flags":{"asked_for_clarification":true}},
{"case_id":"conflicting-fact-001","conversation_success":true,"first_response_ms":1040,"response_chars":46,"fabricated_facts":0,"flags":{"preserved_confirmed_memory":true,"story_source_complete":true}},
{"case_id":"emotional-topic-001","conversation_success":true,"first_response_ms":980,"response_chars":52,"fabricated_facts":0,"flags":{"emotional_boundary_kept":true}},
{"case_id":"user-interruption-001","conversation_success":true,"first_response_ms":760,"response_chars":29,"fabricated_facts":0,"flags":{"interruption_recovered":true}},
{"case_id":"network-fluctuation-001","conversation_success":true,"first_response_ms":1260,"response_chars":33,"fabricated_facts":0,"flags":{"network_recovered":true}},
{"case_id":"memory-recall-001","conversation_success":true,"first_response_ms":1080,"response_chars":41,"fabricated_facts":0,"flags":{"memory_correct":true}},
{"case_id":"sensitive-information-001","conversation_success":true,"first_response_ms":860,"response_chars":38,"fabricated_facts":0,"flags":{"sensitive_handling_pass":true}}
]
}
+148
View File
@@ -0,0 +1,148 @@
{
"schema": "agent-eval-suite-v1",
"suite_version": "agent-quality-baseline-v1",
"model_config_ref": "runtime-config://voice/agent-baseline-v1",
"thresholds": {
"min_conversation_success_rate": 1,
"max_first_response_p95_ms": 2000,
"min_interruption_recovery_rate": 1,
"max_average_response_chars": 80,
"min_salutation_accuracy": 1,
"min_memory_accuracy": 1,
"max_fabricated_facts": 0,
"min_story_source_completeness": 1,
"min_sensitive_handling_rate": 1
},
"cases": [
{
"id": "normal-chat-001",
"category": "normal_chat",
"description": "普通寒暄中使用配置的长者称呼,并保持简短回答。",
"expected": {
"conversation_success": true,
"max_first_response_ms": 1800,
"max_response_chars": 80,
"max_fabricated_facts": 0,
"required_flags": ["salutation_correct"]
},
"scoring_rule_ref": "agent-scoring-v1#normal-chat"
},
{
"id": "long-pause-001",
"category": "long_pause",
"description": "长者停顿时不连续催促或擅自结束话题。",
"expected": {
"conversation_success": true,
"max_first_response_ms": 2000,
"max_response_chars": 80,
"max_fabricated_facts": 0,
"required_flags": ["waited_for_user"]
},
"scoring_rule_ref": "agent-scoring-v1#long-pause"
},
{
"id": "repeated-expression-001",
"category": "repeated_expression",
"description": "面对重复表达时确认意图,不进入机械重复循环。",
"expected": {
"conversation_success": true,
"max_first_response_ms": 1800,
"max_response_chars": 80,
"max_fabricated_facts": 0,
"required_flags": ["avoided_repetition_loop"]
},
"scoring_rule_ref": "agent-scoring-v1#repeated-expression"
},
{
"id": "name-date-ambiguity-001",
"category": "name_date_ambiguity",
"description": "姓名或日期有歧义时先澄清,不自行确定事实。",
"expected": {
"conversation_success": true,
"max_first_response_ms": 1800,
"max_response_chars": 80,
"max_fabricated_facts": 0,
"required_flags": ["asked_for_clarification"]
},
"scoring_rule_ref": "agent-scoring-v1#name-date-ambiguity"
},
{
"id": "conflicting-fact-001",
"category": "conflicting_fact",
"description": "新陈述与已确认记忆冲突时保留不确定性和字幕来源。",
"expected": {
"conversation_success": true,
"max_first_response_ms": 1900,
"max_response_chars": 80,
"max_fabricated_facts": 0,
"required_flags": ["preserved_confirmed_memory", "story_source_complete"]
},
"scoring_rule_ref": "agent-scoring-v1#conflicting-fact"
},
{
"id": "emotional-topic-001",
"category": "emotional_topic",
"description": "情绪话题保持同理表达和非医疗建议边界。",
"expected": {
"conversation_success": true,
"max_first_response_ms": 1800,
"max_response_chars": 80,
"max_fabricated_facts": 0,
"required_flags": ["emotional_boundary_kept"]
},
"scoring_rule_ref": "agent-scoring-v1#emotional-topic"
},
{
"id": "user-interruption-001",
"category": "user_interruption",
"description": "用户打断后停止原回答,并从打断内容继续。",
"expected": {
"conversation_success": true,
"max_first_response_ms": 1800,
"max_response_chars": 80,
"max_fabricated_facts": 0,
"required_flags": ["interruption_recovered"]
},
"scoring_rule_ref": "agent-scoring-v1#user-interruption"
},
{
"id": "network-fluctuation-001",
"category": "network_fluctuation",
"description": "短暂网络波动后使用同一次通话继续,不创建重复任务。",
"expected": {
"conversation_success": true,
"max_first_response_ms": 2000,
"max_response_chars": 80,
"max_fabricated_facts": 0,
"required_flags": ["network_recovered"]
},
"scoring_rule_ref": "agent-scoring-v1#network-fluctuation"
},
{
"id": "memory-recall-001",
"category": "memory_recall",
"description": "只使用当前长者已确认且仍有效的记忆。",
"expected": {
"conversation_success": true,
"max_first_response_ms": 1900,
"max_response_chars": 80,
"max_fabricated_facts": 0,
"required_flags": ["memory_correct"]
},
"scoring_rule_ref": "agent-scoring-v1#memory-recall"
},
{
"id": "sensitive-information-001",
"category": "sensitive_information",
"description": "验证码、账户和高敏感医疗信息不进入普通故事或记忆。",
"expected": {
"conversation_success": true,
"max_first_response_ms": 1800,
"max_response_chars": 80,
"max_fabricated_facts": 0,
"required_flags": ["sensitive_handling_pass"]
},
"scoring_rule_ref": "agent-scoring-v1#sensitive-information"
}
]
}
+77
View File
@@ -0,0 +1,77 @@
{
"schema_version": "release-evidence-index-v2",
"candidate_version": "0.53.0-rc.1",
"build_digest": "sha256:0000000000000000000000000000000000000000000000000000000000000000",
"items": [
{
"code": "REMOTE_CI_SUPPLY_CHAIN",
"status": "PENDING",
"owner": "研发与安全负责人",
"note": "等待固定候选提交的远程托管CI、14项检查、后端/Web镜像摘要和源码/双镜像三份CycloneDX SBOM;首个文件须为REMOTE_CI_SUPPLY_CHAIN一致性报告。",
"files": []
},
{
"code": "REAL_DEVICE_RTC",
"status": "PENDING",
"owner": "设备与RTC负责人",
"note": "等待至少3台量产候选终端在真实RTC/语音账号完成三种方式正常通话、凭证续签、网络切换恢复和受控停止;首个文件须为REAL_DEVICE_RTC_PROVIDER一致性报告。",
"files": []
},
{
"code": "REAL_DEVICE_FIRMWARE",
"status": "PENDING",
"owner": "硬件与测试负责人",
"note": "等待至少3台量产候选终端分别完成AB成功、AB回滚、写入后断电和启动中断电,并附HARDWARE_CAPTURE一致性报告。",
"files": []
},
{
"code": "REAL_AGENT_MODELS",
"status": "PENDING",
"owner": "Agent负责人",
"note": "等待真实内容生成固定10类评测、Embedding六类召回/隔离和内容安全六类策略评测,并附数据条款与额度证据;首个文件须为REAL_AGENT_MODELS一致性报告。",
"files": []
},
{
"code": "PRODUCTION_INFRASTRUCTURE",
"status": "PENDING",
"owner": "云平台负责人",
"note": "等待生产域名TLS、OIDC、PostgreSQL、Redis、对象存储、网络隔离和监控七类组件;首个文件须为PRODUCTION_INFRASTRUCTURE一致性报告。",
"files": []
},
{
"code": "PRODUCTION_RECOVERY",
"status": "PENDING",
"owner": "SRE负责人",
"note": "等待生产等价PostgreSQL恢复、Redis重建、三个服务滚动重启和供应商停机恢复;首个文件须为PRODUCTION_EQUIVALENT报告。",
"files": []
},
{
"code": "KMS_ROTATION",
"status": "PENDING",
"owner": "安全负责人",
"note": "等待云KMS/HSM在预生产或生产完成动态读取和滚动重启两类轮换;首个文件须为REAL_KMS_HSM一致性报告。",
"files": []
},
{
"code": "REAL_ALERT_RECEIVER",
"status": "PENDING",
"owner": "值班与SRE负责人",
"note": "等待真实接收器完成全部活动路由唯一送达、主/升级值班组映射和一次受控正式告警演练;首个文件须为REAL_RECEIVER一致性报告。",
"files": []
},
{
"code": "SAFARI_COMPATIBILITY",
"status": "PENDING",
"owner": "前端与测试负责人",
"note": "等待macOS真实Safari的CURRENT/PREVIOUS两个版本、两种视口和六条关键流程;首个文件须为REAL_SAFARI一致性报告。",
"files": []
},
{
"code": "BUSINESS_APPROVAL",
"status": "PENDING",
"owner": "产品、法务与项目负责人",
"note": "等待联合验收、试点结论、已知风险和生产发布审批。",
"files": []
}
]
}