costcodev
|
111b56f2ee
|
test(BIZ-129): pytest 端到端 19/19 全绿 + 修 reset-confirm bug
测试覆盖:
- login: 成功 / 错密码 / 缺失字段 / 未知用户 (4)
- me: 未登录 / 已登录 / fake cookie → session_expired (3)
- logout: 清 session (1)
- change-password: 成功(强制重新登录)/ 旧密码错 / 密码过短 (3)
- reset-request: 已存在用户 / 未知用户(防枚举)/ 完整重置流程 / 无效 token (4)
- 限流: login 6/min 触发 429 + reset-request 4/min 触发 429 (2)
- 安全约束: session 存 sha256 hash + bcrypt $2b$12$ (2)
修复 bug:
- reset-confirm 把 consume_reset_token 返回的 dict 当 user_id 传给 update_password
→ 修复为 user_info['user_id']
测试结果:19 passed, 65 warnings in 18.34s
依赖:b002e92(7 路由)+ 44f46a0(限流)+ 1df6e7f(前端)
Co-authored-by: multica-agent <github@multica.ai>
|
2026-09-05 07:22:31 +08:00 |
|
vincent
|
dcc7339384
|
feat(BIZ-110): index.html 前端鉴权适配 - localStorage + login 页 + Bearer 注入
方案 A 落地(严维序 COO 09-01 14:46 GMT+8 确认):
- 新增登录浮层(#/login 概念,hash 路由由 bootstrap() 管控)
- localStorage.lotto_api_token 存/取/清 token
- api() 函数自动注入 'Authorization: Bearer <token>'
- 401 → 清 token + 跳登录页
- Header 右侧 '退出' 按钮
- bootstrap() 启动入口:无 token 跳登录,有 token 进主页
测试:tests/mock_auth_server.py + jsdom 21/21 全过。
闭环:前端适配完成,待严维序撤 AUTH_BYPASS_PATHS 白名单。
—— 徐聪 (costcodev) | 2026-09-02 16:35 GMT+8
Co-authored-by: multica-agent <github@multica.ai>
|
2026-09-02 16:45:43 +08:00 |
|
徐聪
|
5d459b4505
|
feat(BIZ-105): 记录-比对 中奖金额展示 v1.2 实施
PRD v1.2 §4.3 落地,参考 BIZ-102 PRD 与 UI 原型。
后端(app.py):
- 新增 PRIZE_AMOUNT / PRIZE_KEY_MAP 常量双表(PRD §4.3)
- 新增 format_amount 千分位格式化(PRD §3.2:紧邻「元」不空格)
- 新增 compute_prize_summary 聚合函数
- api_compare_record 接口扩展:
- 单注:prize_amount + prize_amount_display 字段
- 顶层:total_prize / total_prize_display / has_variable_prize /
prize_summary / prize_display 字段
- 一/二等奖标记为浮动奖(历史数据无奖池字段),不计入 total_prize
前端(index.html):
- 总中奖金额字段(橙色「含浮动奖」角标)
- 中奖奖项汇总表(不含浮动奖金额)
- 浮动奖橙色提示条(区别于固定奖绿色 #1e8e4a)
- 每注金额 badge(固定奖绿 / 浮动奖橙)
测试(tests/test_compare_prize.py):
- 31 个用例,100% 通过
- 覆盖:6 档奖金档 / 未中奖 / waiting 契约 / 0 注 / 全中奖 /
仅有浮动奖 / 混合 / Mock 一致性(验收 #16)/ 响应结构契约
- running: pytest tests/test_compare_prize.py -v → 31 passed
不变项:比对算法 / 归期规则 / Excel 解析 / 认证 — 全部不动。
Co-authored-by: multica-agent <github@multica.ai>
|
2026-08-31 04:45:06 +08:00 |
|