这是什么 · What this is
面向 2026-06-24 上线团队会的 prior——ZH 与 MenoClaw 基于真实材料(dev log / 代码 / feedback+bug / test+bot 日志 / 雨来现状 / hub 结构)对开发状态的诚实评估。每条判断都可溯源到代码/日志;这里的观点是讨论的起点,不是结论,欢迎来会上反驳。受众=内部(本频道 dev + 雨来 final-push)。不含任何密钥/内部 URL。
TL;DR — 6/24 之前必须解决的(headline)
- 数字捏造(fabricated stats) — 最大质量风险。运行时 guard 已上线(
18185e1),但未量化、ZH 未最终确认关闭。→ 需要一次新测试 + 你签字。- 录取分/位次 = 志愿填报最核心、却最不就绪。本地零分数据;雨来是唯一来源,等位分仅云南。→ 验证雨来 key 实时有效 + 明确”分数=云南 only”的上线预期。
- 成本/滥用敞口 — 线上公开、无鉴权、无限速、无预算上限;prefetch 5× 扇出。→ 上线前必须加 gate + 限速 + OpenRouter 花费上限。
- 就业率渲染 bug — ~1388 所学校的就业/升学率因类型不一致被静默丢弃(只有 667 所正确渲染)。→ 一行修复,launch 前做。
- Free Render = 易失盘 + autoDeploy from main → 每次 push 抹掉所有在玩会话 + 全部遥测。→ 解耦部署 / 加持久存储。
🚀 6-24 上线日更新 (MenoClaw, launch day)
6-20 以来已上线 (live on
gaokao.meno.sh)
- 会话持久化(原 §7 P0):
_rank_save每轮异步把会话推到机器(box)持久层;Render 重启后_rank_load从 box 恢复 → 重启不再丢局(d376d8b)。⚠️ 这是备份/恢复,非零停机:部署仍会重启、清内存,但用户下一步操作时自动恢复。根因:Render/data不可写,旧的本地 pickle 一直静默失败、会话只在内存 → 每次重启全丢。- 回访码:结尾页给
?run=<sid>链接,凭码只读回看该局结尾(经 box/rank_revisit)。- /kpi 看板(经 box,持久):使用数 / 完成率 / 每局 起始%→结束%(+Δ)/ 深度 / 徽章 + OpenRouter 额度。遥测
session_log.jsonl在 box 上、扛重启(补上原 §3 缺口)。- 主动识别 / 画像实时更新(原 §5 P1 已做):每站「最想听你说」追问 + 多轮小对话(
/rank_chat,只显最新 2 条、每轮并进画像)+ 结尾对话框。轮次上限服务端强制(每站 3 / 结尾 5)防刷 token。- 成就徽章(Claude Design 墨章);框架/抗话术测试已接线(原 §6 P0 之一:
frame_results进结尾 + log)。- resolver:无
@也能从连写抽出学校+专业(LLM 抽取,assembly bug 已修fbbda28)。- 其它:mock 假数据已 gate(
?mock=1才走);语音改 base64-JSON 上传(绕开 HTTP2 报错);KPI 隐私(画像不入日志可选,目前按 ZH”先保留”)。
新发现的工程问题(代码审计 2026-06-24)— 按严重度
P0(上线即暴露,匿名可达):
- 存储型 XSS — 用户输入的”专业”标签未转义直插
innerHTML(rank_page.htmlrenderStage 的${st.top}/${st.contender}/${st.factor.label}),填<img onerror=…>当专业即执行。修:这些字段套escHtml(页面已有此函数、这里漏用)。- 请求体无大小上限 → 内存 DoS — 所有 POST(尤其
/voice_profile)按客户端Content-Length整体读入内存、无 cap;Content-Length: 5亿即可 OOM 掉 512MB 实例。修:MAX_BODY早拒(JSON ~2MB / 语音 ~15MB);int(Content-Length)也要 try。/prompts_save公开可写 — 匿名访客能 POST 改写线上 LLM 模板(prompt 注入 / 烧 token / 套画像)。修:/prompts*加 token 门或绑非公开端口。- 解析模型太弱(本次 考古系 bug 根因) —
RESOLVE_MODEL=deepseek-v4-flash抽取不稳(北京大学考古系→失败、北大考古系→成功);考古学在清单里、非覆盖问题。换gpt-4o-mini(更稳、一样便宜快 0.6s)。P1(上线周): 5.
_rank/IG/JOBS缓存无上限 → 慢性内存泄漏(配合 #2 = OOM);加 LRU+TTL。 6. box 持久化:每轮一个异步 POST 上传整份(增长中)pickle、多线程无序 → 可能写入过期状态;应去抖/合并(仅结尾 + 每 N 轮)。 7. box 读路径key/sid未校验(应^[0-9a-f]{10}$+ quote)。 8. 顶层open().read()读 HTML 无 try → 缺文件整服务起不来。 9. 多处错误返 HTTP 200(监控看不出错误率)。仍未做的老 P0: 公开链接无鉴权 / 无限速 / 无 OpenRouter 花费上限(§8);就业率
pct()仍丢字符串型(~1388 校,grounding.py);intake 仍不收用户分数 / 家庭状况(§2)。
6·20 会议结论与行动项
今日会议(2026-06-20)纪要已并入本页。参会:何忠豪(ZH)· 邱天异(Tianyi)· 叶晓阳(Ye Xiaoyang)· 高钰贺(Yuhe Gao)· 谢嘉扬(Xie Jiayang,平台数据)· LuKe。
结论
- 数据层方向: 现状 = LLM 蒸馏 + 少量公开信息(不足、不够真实、易刻板)。路线:① 整合学校官网 / 培养方案等系统性信息;② 建在校生 / 毕业生真实体验分享机制(需激励 + 审核保真);③ 优先用 AI 从现有海量真实数据(如知乎)提取,而非投大量精力爬精确结构化数据。 › 对齐当前抓取: 结构化抓取(阳光高考课程 + gaokao.cn 各校就业质量报告)已近完成、是真实来源背书的硬数据,低剩余成本不浪费;知乎-AI 提取正是此前悬而未决的**软字段(日常体感 / 体验)**的答案——两者互补。
- 体验与核心目标: 核心 = 引导用户达成反思均衡(充分了解可能性后对选择满意)。daily reality 太刻板 → 用真实数据 + 校准(见 §6)做得更具体多样;帮用户区分专业技能 vs 大学生活、打破刻板印象;定位”表面效度”(face validity)——让信息显得合理,而非追求内 / 外效度的极致精确。
- 技术路线: 「预设框架 + AI 实时生成」:每专业一个基础”路径(path)“,选定学校后 AI 结合该校特点个性化;流程引导反思而非灌输答案(末尾加总结性问题)。
行动项(owner)
- 数据 / 技术对接: 谢嘉扬 → 会后把平台现有学生数据(CSV,脱敏)给 何忠豪 做接口对接;何忠豪 把现有数据与新数据维度对齐。
- 体验优化(何忠豪): ① 流程中加引导,明确目标是「反思均衡」;② 开头加功能说明 + 免责声明(AI 生成、仅供参考);③ 末尾加总结性问题引导反思。
- 用户测试: 叶晓阳 → 联系一位大一学生实测、收集意见;叶晓阳 + 何忠豪 会后继续 UI/UX + 小程序集成。
上线就绪度记分卡(Scorecard)
| 维度 | 就绪 | 一句话 |
|---|---|---|
| 部署 (deploy) | 🟡 | gaokao 已 live 在 Render(gaokao.meno.sh DNS 处理中,ZH 负责);但 free 单实例、易失盘、autoDeploy 危险 |
| 专业/院校 KB | 🟢→🟡 | 856 专业 / 2347 校,广度够;但全是 LLM 断言未核验,且就业率渲染 bug 吃掉大半 |
| 录取分数 | 🔴 | 本地无;雨来 等位分仅云南,录取分按省、key 待验证 |
| 雨来集成 | 🟡 | client 已建、优雅降级;key 已写入 Render,但实时有效性 + 省份覆盖未确认 |
| 算法 (反思均衡) | 🟡 | 单次推理的 WTE+investigator+writer 已 live;但bias/框架测试已下线(算法文档仍宣称),narrative 不随游戏更新 |
| 人物模型 | 🟡 | NL 画像是真模型;8 极数值层算了即弃(死代码)——ZH 的怀疑被代码证实 |
| 指标 (metrics) | 🔴 | 没有任何”理想偏好”质量指标;现有 eval 全是过程/多样性 |
| 测试 | 🟡 | 引擎套件绿但完全不覆盖 gaokao;gaokao 无确定性回归测试 |
| 工程稳健 | 🟡 | 捏造 guard、429 退避、pickle 续跑都在;但无限速/无预算/线程无背压 |
| 扩展性 | 🔴 | pickle 会话 → 水平扩展结构上不可能;单实例封顶 |
| 微信小程序 | 🟡 | 审核已过(ZH);仅剩雨来交接 + 代码转换(~1–2 天移植) |
| 协调 | 🟡 | 人齐(ZH/Tianyi/Ahmed/雨来);但 SPEC/render.yaml 文档漂移,雨来侧 owner 未记录 |
1. 真实世界数据 —— 专业 / 就业 / 录取 / 体验
现状(有据). 广度已具备:856 专业,横跨 12 学科门类(major_catalogue.json);859 张 grounding 卡 = 100% 目录覆盖(major_grounding.json,facts+lived 分离,各带 confidence/provenance);2347 所学校,其中 2121 所有就业数据(uni_employment.json);层次信号 985/211/双一流(school_index_sample.json)。
缺口(诚实).
- 所有”事实”都是 LLM 断言,未经核验. 在已提交的
main上,859/859 张卡 = “待真实报告交叉核验” —— 0% 对照源 PDF 核验过。“lived 体验”是 LLM 观点(已明确标注),不是抓取的 UGC —— 真实的知乎/小红书抓取试过、因反爬放弃。 - 🔴 就业率渲染 bug(影响上线).
uni_employment_block()里的pct()(grounding.py:67)只格式化 int/float,但 1373 所学校的就业率是字符串(“96.60”、“99%”)→ ~1388 所学校的就业/升学/出国率被静默丢弃,只有 ~667 所正确渲染。你”拥有”的就业数据大半从未进入 prompt。 - 本地完全没有分数(见 §2)—— 志愿填报最核心的字段。
- hub 的覆盖数字略有夸大(如 data-overview 说 ~2075 所有数据;实际 2121;data-employment 说 就业率 2029 / salary 692;实际 2026 / 612)。需对齐,使上线叙述准确。
TODO. (P0) 修 pct() 的字符串/数字兼容 —— 最便宜、收益最大。(P1) 拿到有效雨来 key 后,对全部 859 专业重跑 enrich_grounding.py(目前仅 11 个已富化)并提交。(P1) 把 hub 数字与数据对齐。(P2) 回填来源 URL(sources.py 里院校条目只有名字没链接),让出处可点击、卡片脱离”AI蒸馏待核”。
→ 见 grounding-layer · data-overview · data-employment · data-schools-majors · data-admissions
2. 雨来(Yulai)集成
现状. client 已建且设计上优雅降级(yulai.py):6 组端点(major detail/decision/facets、equivalent_score、scores、student_profile),Bearer 鉴权,绝不抛错(出错返回 None/回退 → 游戏不崩)。已接入 investigator 的来源层,排在本地 KB 之上。gaokao Render 服务上已设了一个 yl_live_… key(来自 menoclaw/.env)。
缺口.
- 实时有效性未确认. 6 月初该 key 曾 401(
INVALID_API_KEY);据称 2026-06-19 有效 key 到位。已接线但在部署的服务上未实测。上线前要验。 - 等位分仅云南;录取分按省、带
data_may_be_partial标记。即便 key 有效,上线时分数仍是单省。 - 分数查询只映射了 12 个省(
grounding.py_PROV_MAP);其他省即便雨来有数据也查不到。 - 已提交的富化是部分的(11 专业,10 个 verified)且本地未提交 ——
main上 0 个雨来块。
需要雨来给的(阻塞项).(1)确认有效的生产 key + base URL;(2)录取/等位分的省份覆盖时间表 —— 6/24 前云南之外有 ready 的吗?(3)确认 student-profile 授权流程对上线属 out-of-scope。
TODO. (P0) 有效 key + 对 major_detail + equivalent_score 做冒烟测试。(P0/协调) 拿到雨来省份时间表的书面确认。(P1) 明确上线预期:分数=云南 only;其他省=层次 + 定性回退(设计如此)。
集成结论(2026-06-20 ZH 讨论,基于实测 live API):
- 分工: 雨来 → 录取分(按省核验)/ 等位分 / 专业判别;我们补就业(gaokao.cn 各校就业质量报告 ~2300 校带链接,抓取中)+ 专业课程(阳光高考官方)。互补不重复——雨来无就业端点(证实 ZH 判断)。
- 用户侧数据(年龄/家庭收入/分数)拿不到: 雨来合作方画像接口明确剔除「精确分数位次 / 年龄性别」,只给抽象画像 + 人格 DNA。→ 要么我们自己 intake 收,要么和雨来谈更深共享。这是对接第一问。
- 用户数据缺口(ZH 指出,真问题): 现 intake 没收用户自己的分数 + 家庭状况——而这两者决定「可达学校」与「冲/稳」倾向,是真实志愿的核心输入。
- 集成设计: 学生从雨来窗口进(已授权)→ 用雨来录取/等位框定可达集(让模拟真实)→ 在可达集内跑反思均衡。雨来管「能去哪」,我们管「你到底想要哪、为什么」。
→ 见 yulai-integration · data-admissions
3. 真实世界反馈 —— 该问真实用户什么
现状. ?dev=1 dev-feedback 按钮 + listener 管线已存在(devfeedback.json 当前为空 —— 零条目;迄今所有反馈都是 ZH/测试者经 Slack :zh-claw: 来的)。
我们其实该问真实用户的(提议).
- “它有没有让你觉得被理解了?”(felt-understood 信号 —— 已可采集,未分析)。
- “有没有哪个场景显得套路/不对劲/像在引导你?”(直接检验”不推荐”原则 + 泛泛的抱怨)。
- “有没有看起来像编的数字/说法?”(把 eval 缺的捏造审计众包出去)。
- 前后的信心,以及为什么变(有据 vs 虚增 —— 见 §4)。
- 垫底的专业有没有被检视过?(Zhilin 的抱怨:只浮现头部两两对比)。
TODO. (P1) 上线链接打开 dev-feedback 按钮;结尾页加这 5 个问题;确保回答写进能扛重启的存储(目前遥测在 Render 易失盘上 —— §7)。
→ 见 log
4. 指标 —— 衡量”理想偏好”
现状 —— 诚实的真相:没有任何理想偏好质量指标. eval/analyze.py 里全是过程/多样性指标:维度轮转(5.4/7)、家庭默认率(3%)、场景覆盖(18/18)、个性化(1K 时 58% 不同维度集)。它们回答的是*“引擎是否多样、不退化?”* —— 一个健康检查 —— 而非*“我们有没有把这个人的理想/低后悔偏好引出来?”*
为什么它本质上难.(1)没有 ground truth —— 理想偏好是反事实的。(2)路径依赖 —— 偏好在检视过程中形成,所以最终排序不是一个先验潜变量可供恢复。(3)收敛 ≠ 质量 —— 排序稳定既可能是反思均衡,也可能是疲劳/固化。
可采纳的代理指标(挑 1–2 个落进 ending() + session log):
- 扰动下的稳定性 —— #1 能否扛住一个循环里没见过的对抗性 framing?(这正是已下线的框架测试做的 —— 复活它就拿回最好的单一代理。见 §6。)
- 信息驱动的重排比例 —— 重排里多少是引用了选项特定的新信息 vs 漂移(
player.py的materially_newgate,跑在真实会话上)。 - 有据的信心增量 —— 信心上升且扛住了一次扰动,而非单纯虚增。
- 留出维度的后悔 —— 结束后探一个 WTE 没浮现的维度;若它会翻转排序,说明引出不完整。
TODO. (P1) 至少把一个结果代理写进 session log,让上线后的会话可解释 —— 这个工具”就是数据集”,但前提是它记录了质量信号,而不只是过程多样性。(P2) 等真实会话积累后,跑”显式 14 维 vs LLM 隐式”的 A/B。
→ 见 eval · ideal-preference-dimensions
5. 人物模型 —— 偏好维度
现状. 三套词汇并存,只有一套是 live 的:
- NL 叙事画像(
profile.narrative)—— 从 intake 合成的那一段 150–250 字第二人称散文。这才是生成器读的模型。 经 🪞 面板可实时编辑。 - 14 个理想偏好维度(
human_dimensions.json)—— WTE 每回合打分的轴(“我们在学什么”那层)。但它是 prompt 时让 LLM 每次从头重打分的枚举 —— 不是持久、会更新的信念状态;只有examined_dims往下传。所以路径依赖的更新比理论页宣称的弱。 - 8 个数值极(
personality.py)—— 算了即弃。serialize_for_prompt()已不再输出它们(注释:“弱信号,ZH 2026-06-17”)。ZH 的怀疑是对的,代码本身已经承认了 —— 它是死重(quiz 选项仍带极标注,但什么都不喂)。
缺口.(a)narrative 只在 intake 时建一次,不含游戏内选择 → 静态画像,不是会更新的信念;(b)8 极 vs 14 维 vs 18 场景是三套互不相连的词汇。
TODO. (P1) 每次重排后刷新/增量更新 narrative,把游戏内选择传进去。(P1) 持久化并回读不确定性 ledger,让 VOI 针对真实更新过的信念计算。(P2) 决定:删掉死的 8 极层,还是把 observed 接回 narrative 合成。
→ 见 profile-construction · ideal-preference-dimensions
6. 理想偏好 / 反思均衡算法 —— 功能
现状(实际在跑的). 每个 stage = 一次 unified_turn LLM 调用(ranked.py:240),融合了:(1)WTE 选出价值-信息最高的未检视维度;(2)选一个 probes 覆盖该维度的未出现场景;(3)investigator 选最有区分度的 contender + 一个针对此人的问题;(4)writer 产出 ≤110 字第一人称小景 + 各选项的 take。重排 = pivot;prefetch-all 预热每个选项的下一 stage,使重排瞬时。结尾 = checklist + 信心增量。一个硬性捏造 guard 会删掉数字若其位数不在 grounding 里。
ZH 的一句话概括(“检视最少被检视的维度 → 给信息 → checklist”)方向对、但机制已过时:它是一次融合调用,不是三个 stage;独立的
wte.py/trajectory.py/ 单独的investigate()在 live 路径里是遗留/死代码。
缺口.
- 🟡 bias 处理这根支柱没接线. 框架稳定性测试已从 UI 下线,但作为死代码还在,且
reflective-equilibrium-algorithm.md仍宣称它;ending()报了一个空洞的frames_stable。这既是文档诚实问题,也丢掉了我们最好的理想偏好代理(§4)。 - 选项不自洽 / 跨领域串味(quality-plan §3)—— 仍是计划,未确认上线。
TODO. (P0) 决定 bias 处理:复活框架测试(它已建好;拿回稳定性代理)或从算法文档里删掉它。别上线一个不跑的招牌支柱。(P1) 选项身份锁定(quality-plan §2/§3)。
→ 见 reflective-equilibrium-algorithm · world-turning-engine · investigator · ideal-preference-checklist
7. 工程 —— 推理、错误、稳健性
现状. stdlib ThreadingHTTPServer(线程/请求,无 WSGI/队列)。会话在内存 + 本地磁盘 pickle 文件。每 stage = 1 次 LLM 调用(stage = DeepSeek-V3 deepseek-chat;narrative/ending = V4-Pro;web-search 插件开),~20–75s,靠 prefetch 掩盖。捏造 guard + 429 退避(4 次)+ 权威源白名单都是真的、在工作。
缺口 / 失败模式.
- 🔴 易失盘 + autoDeploy from main —— Render free 盘在每次重部署/休眠时被清 → 每次 push 到 main 抹掉所有在玩会话 + 全部遥测。这里的
/data不是持久盘。 - 线程饿死(未观测,扩展性隐患) —— 理论上卡住的调用占线程 ~5 分钟(75s×4),高并发 + 单 key 无界并发可能 429 级联。目前低/单用户测试未发生,仅作扩展期风险记。
/voice_profile无请求体大小限制(整体读入内存)—— 易内存 DoS。- 文档/配置漂移:
render.yaml描述的是旧 reflect 应用(plot.web --mock),不是 gaokao;SPEC.md描述的是被取代的 A/B 模型,不是 live 的 ranked 流。新人上手会被误导。
TODO. (P0,ZH 已定) 加持久盘 + 会话存储(对话存储)+ 部署与 main 解耦,push 不再抹掉在玩会话。(P0) intake 增收用户分数 + 家庭状况(见 §2 集成结论)。(P1) voice 请求体上限;render.yaml + SPEC.md 漂移修复。
→ 见 backend · per-stage-anatomy
微信小程序
现状(ZH 更正 2026-06-20):审核已通过。 之前我评估「合规要数周」是错的——主体/备案/审核都已完成。只剩两件:与雨来团队交接 + 代码转换(repo 里目前零 MP 脚手架;一个 HTML 页 + 几个 JSON 端点 → WXML/WXSS + wx.request,~1–2 天移植)。仍需注意:20–75s 延迟 vs MP 对「秒响应」的预期(prefetch + loading 态要稳);CDN 依赖(Google Fonts/jsDelivr)在国内须本地化。MP 因此可进 6/24 视野,不再是纯上线后项。
8. 扩展 —— 1k / 10k+ 用户
先坏什么,按顺序.(1)free Render 单实例 + 休眠(冷启 30–50s;只能服务个位数并发会话)。(2)ThreadingHTTPServer —— 无背压;每个活跃 stage = 一个被阻塞 20–75s 的线程。(3)🔴 pickle/内存会话 → 水平扩展结构上不可能(两个实例不共享状态;用户 stage-2 请求路由到别的实例 = “会话丢失”)。(4)LLM 限流 + 成本 —— prefetch-all 每 stage 打 ~N(≈5)个投机调用 → ~5× 过度生成;V3 stage 估 ~500–$2k+。(5)🔴 无鉴权 / 无限速 / 无花费上限 —— 公开无鉴权端点;一次爆量或一个滥用者就能把账单打到无界。
1k+ 需要什么. 付费 Render + 多实例;共享会话存储(Redis/Postgres)替换 pickle(或 sticky sessions 作权宜);持久盘/DB 存遥测;应用内并发上限 + 单 IP 限速;OpenRouter 花费上限 + 告警;高负载时把 prefetch 降到只预热 #1;软启动邀请制/加门。
上线前最重要的单个基础设施决定
上线 URL 将是公开、无鉴权、无花费上限、且 5× prefetch 扇出。广传之前:钉死每-stage 模型、加 gate + 单 IP 限速、设 OpenRouter 预算告警。这很便宜,且能避免一次”钱包敞开”事故。
9. 用户体验
未做的测试者诉求 —— 会上需分流:
- Tianyi:intake 应做多选 + 排序;专业内路径(绩点/竞赛/科研/社团)可选可排;*“把就业相关信息都删掉”*除非校准好。
- Zhilin:🪞 画像不影响后续问题;选了创业但后续问题全是传统求职;只有头部两两对比 → 垫底 3 个专业从不出现(建议:信心低时为全部 5 个生成场景);7 个问题感觉同质化。
- 延迟 UX:20–75s 等待大多被 prefetch 掩盖,但冷启动 + 重排到未预热的选项仍会卡。
TODO. (P1) 决定哪些测试者诉求进 6/24、哪些延后;“画像不影响后续 stage”这条与 §5 的 narrative-refresh 修复重叠,值得做。
10. 协调 —— 谁需要知道什么
人. ZH(owner/拍板/主测试);Tianyi(U08DH1JD8R1,co-lead,给了 6 条评审);Zhilin(测试者,4 条评审);Ahmed(U09LV5P3DQD);MenoClaw(唯一搭建者);雨来/Yusoong(伙伴数据)—— 雨来侧的集成 owner 没有记录 → 责任空缺。
6/24 前每个人都该知道:
- 数字捏造是头号风险;guard 已提交但需 ZH 签字 + 一次新测试(他那个失败会话没自动保存 —— 一个该补的日志缺口)。
- 上线链接必须加门 + 花费上限才能广传。
- SPEC.md / render.yaml 已过时 —— 以 hub(variant 文档 + log)为准,别看 SPEC。
- 雨来数据 owner:key 已 live 但富化在半途(未提交);谁为上线的伙伴数据准确性负责?
会上待拍的决定(需要决策)
范围已定:公开链接,接入雨来窗口。 → gate/限速/花费上限 + 扩展性优先级随之上调。- 捏造修复(a) —— 是否算关闭?live 跑一局确认。
- 分数 —— 以”云南 only,其余省层次+定性”上线,还是分数全部押后到雨来扩省?
- bias / 框架测试 —— 复活(拿回稳定性指标)还是从算法文档删掉?
- 指标 —— 从第一天起承诺记录哪个结果代理?
数据已定:对全 859 专业重跑雨来富化 + 抓取权威公开源(进行中)。基础设施已定:加会话存储 + 持久盘(+ 解耦部署)。- 测试者诉求 —— Tianyi/Zhilin 哪些进 6/24?
TODO 分级
P0(上线前 / 上线日).
- 🔝 关掉 Render autoDeploy,解耦部署与
main;正式上线后改为低流量一次性批量部署(ZH 2026-06-24)。← 置顶。 - 修存储型 XSS:用户”专业”标签转义(审计 #1,匿名可达、一行级)。
- 请求体大小上限:防内存 DoS(审计 #2)。
- 关闭 / 加门
/prompts_save等 dev 端点:防匿名改写 LLM 模板(审计 #3)。 RESOLVE_MODEL→gpt-4o-mini:解析稳定(审计 #4,考古系 bug 根因)。- 公开链接加 gate + 单 IP 限速 + OpenRouter 花费上限(§8,仍未做)。
- 修就业率
pct()字符串兼容(§1,仍未做)。 - ✅ 会话存储 + 解耦部署的”存储”部分已做(box 持久化);仅剩”解耦”= 上面置顶项。
- ⬜ 验雨来 key live + 分数冒烟测试(§2);intake 增收用户分数 + 家庭(§2)。
- ✅ bias 框架测试已接线(§6);⬜ 确认捏造修复关闭(§4/§10)。
P1(上线周).
- 对全专业重跑并提交雨来富化(§2);对齐 hub 数据数字(§1)。
- 游戏中刷新 narrative(§5);至少把一个理想偏好代理写进 log(§4)。
- dev-feedback 按钮 + 5 个用户问题,落到能扛重启的存储(§3)。
- 修 SPEC.md / render.yaml 漂移(§7);voice 请求体上限。
上线后.
- 共享会话存储 + 多实例 + 付费 plan,做扩展(§8)。
- 微信小程序(卡在企业主体 + 备案)(§7)。
- 选项身份锁定(§6);8 极层的去留决定(§5);显式 vs 隐式维度 A/B(§4)。
出处
2026-06-20 由 MenoClaw 基于
meno-sh/reflection-gamemain@18185e1、hub 的 reflection-game 子页、dev/eval 日志、以及 gaokao git 历史编纂。数字由实际数据文件重新推导(并在 hub 页漂移处更正)。观点已标明 —— 欢迎反驳。