claude_dev
|
a0389e4f33
|
fix(factor): codex 尾批——_read_value_parquet 索引严格升序+唯一校验(embargo shift(-2) 以位置序为地基,乱序/重复件 structured reject 入缺源 skip) [nas]
|
2026-10-10 15:05:52 +08:00 |
|
claude_dev
|
3082db5a31
|
fix(factor): codex 复审班次二修批——LGBM 训练切分 embargo 2 交易日+11M 显式裁剪/三路统一可评样本 mask/缺源与坏件整月 skip/close loader purge 直读+真实路径单测/cols union/冗余按日循环/LOW 四项(docstring 语义+allow_nan=False+wrapper chal 摘要) [nas]
|
2026-10-10 14:47:31 +08:00 |
|
claude_dev
|
c4ae457563
|
docs: 三路对拍班次二落地落账 spec §4.4(含宽表源现场核实修正=stage4 截面盘) [no-doc]
|
2026-10-10 12:43:43 +08:00 |
|
claude_dev
|
d51ee7df72
|
feat(factor): challenger CLI+月度链 stage6 接线(影子失败不阻链;宽表源=stage4 截面盘,月度批 values 不含 12 源) [nas]
|
2026-10-10 12:42:28 +08:00 |
|
claude_dev
|
066a2d3b87
|
feat(factor): challenger 对拍评估——三路样外 IC/ICIR/分层多空+特征贡献+池冗余注记件 [nas]
|
2026-10-10 12:38:24 +08:00 |
|
claude_dev
|
cf451466a6
|
feat(factor): challenger 三路信号——方向调整等权/ICIR 档案加权/LGBM walk-forward(样外隔离铁律) [nas]
|
2026-10-10 12:34:10 +08:00 |
|
claude_dev
|
275c66baf5
|
feat(factor): challenger_lgbm 数据层——在役池档案/防缺口 label/双侧 CSRankNorm [nas]
|
2026-10-10 12:29:47 +08:00 |
|
claude_dev
|
5231dbc99a
|
fix(factor): codex 复审 LOW——当月点追加条件扩为 t 或 ic_mean 任一非空(degenerate 月 t=None 但 IC 有效不漏出 factor_stats) [nas]
|
2026-10-10 11:35:42 +08:00 |
|
claude_dev
|
73bddca583
|
docs: spec §4.2 AST 防换皮措辞对齐实现——方言内重实现(120 行 Python ast)+软硬口径独立声明+工厂看板落点确认 [nas]
|
2026-10-10 11:16:18 +08:00 |
|
claude_dev
|
bfd08561fc
|
fix(frontend): codex review——弹药行字段级渲染(tAll=null 单独显示—,其余字段照常,区分无报告与样本不足) [vps]
|
2026-10-10 11:14:57 +08:00 |
|
claude_dev
|
28e648b4fe
|
fix(api): codex review 修批——factors 列表 icFullT 从月报 factor_stats.tAll 接真(单次读取)+decompose similarity 仅建条落盘(已存在幂等重注册不重写) [vps]
|
2026-10-10 11:14:15 +08:00 |
|
claude_dev
|
eaac48a1db
|
fix(factor): codex review 修批——expression_match UnaryOp/keywords 编码+递归兜底签名+func名不独立计数+limit/爆栈防护;monthly_review 当月点带 ic_mean+非法 month 剔出逐年 [nas]
|
2026-10-10 11:10:29 +08:00 |
|
claude_dev
|
ca264defbd
|
docs: 流水线 spec 判定弹药/AST防换皮/三路对拍/test隔离四块增补+quant12_v2a 权重窗审计结论 [nas]
|
2026-10-10 10:43:36 +08:00 |
|
claude_dev
|
031348c9a3
|
feat(frontend): 因子详情全期弹药行+疑似换皮徽标(工厂列表/详情两触点) [vps]
|
2026-10-10 10:37:28 +08:00 |
|
claude_dev
|
f45e14234e
|
feat(api): decompose 注册时防换皮比对存 similarity 提示(非硬拒,judgement 人做)+detail/列表带出 [vps]
|
2026-10-10 10:32:04 +08:00 |
|
claude_dev
|
91c5e2a4a3
|
feat(factor): expression_match 防换皮模块——Python ast 交换律归一化+最大公共子树占比(QuantaAlpha 算法思想方言内实现) [nas]
|
2026-10-10 10:24:27 +08:00 |
|
claude_dev
|
73ba705bca
|
feat(api): 因子详情端点透传 icStats 全期弹药(无报告如实 None)+monthly_dir env 覆盖 [vps]
|
2026-10-10 10:20:45 +08:00 |
|
claude_dev
|
86bfbcf283
|
feat(factor): 月度批评报告判定弹药三件——factor_stats 聚合(全期合成t/正IC占比/逐年IC)+md 渲染 [nas]
|
2026-10-10 10:18:21 +08:00 |
|
claude_dev
|
d4617812c5
|
docs: 日度化调度实配落账——流水线 spec §4.2+runbook schtask 表/月度批节+因子线档 monthly_batch 行(含 registry 运行副本对齐决议) [nas]
CI/CD / test (push) Successful in 45s
CI/CD / nas-deploy (push) Successful in 0s
CI/CD / nas-verify (push) Successful in 12s
|
2026-10-10 07:22:15 +08:00 |
|
claude_dev
|
3bca54d69b
|
feat(factor): NAS 日度 runner 一次性容器两段链+月度 runner registry 切运行副本(存量错位修正:批侧原读 config 种子,首班后出生因子不在批视野) [nas]
|
2026-10-10 07:22:15 +08:00 |
|
claude_dev
|
299f3a27ed
|
feat(factor): VPS 日度调度壳——wrapper 两段链+schtask 注册(XML Daily 21:30,等 xt_eod 收完);月度 wrapper registry 切运行副本(与新因子/判死同源) [vps]
|
2026-10-10 07:22:15 +08:00 |
|
claude_dev
|
3ced1474a8
|
feat(factor): monthly_batch --daily 日度模式——as_of 直用不归一月末+daily_ 标签(决议 H 修订夜班批 as-of=T-1) [vps]
|
2026-10-10 07:22:15 +08:00 |
|
claude_dev
|
97764cee80
|
fix(frontend): 工厂来源列单行收敛——链接缩为🔗标识 hover 见卡号,退役长链接文字(行高被撑两三行) [no-doc] [vps]
CI/CD / test (push) Successful in 45s
CI/CD / nas-deploy (push) Successful in 28s
CI/CD / nas-verify (push) Successful in 7s
|
2026-10-09 22:44:02 +08:00 |
|
claude_dev
|
2490034b3d
|
feat(pipeline): 因子墓园可见性——factors/graveyard 端点+假设池墓园 tab 判死因子区(用户验收暴露:判死后无任何视图;老编号因子无卡回写也兜底) [vps]
CI/CD / test (push) Successful in 46s
CI/CD / nas-deploy (push) Successful in 57s
CI/CD / nas-verify (push) Successful in 8s
|
2026-10-09 22:39:37 +08:00 |
|
claude_dev
|
86f80fbdad
|
feat(frontend): 因子详情页存量因子档案制度前说明行——manual 且无表达式/承载时明示非数据丢失 [no-doc] [vps]
CI/CD / test (push) Successful in 47s
CI/CD / nas-deploy (push) Successful in 33s
CI/CD / nas-verify (push) Successful in 9s
|
2026-10-09 22:19:25 +08:00 |
|
claude_dev
|
8ec818db63
|
docs(runbook): NAS 月度批报告 API 可见性软链落账+runner 生效位提前对齐注记 [nas]
|
2026-10-09 22:19:25 +08:00 |
|
claude_dev
|
1e84b07d42
|
fix(frontend): spec 文件 mountDetail 参数类型修正——vue-tsc -b 与 CI 对齐 [vps]
CI/CD / test (push) Successful in 39s
CI/CD / nas-deploy (push) Successful in 30s
CI/CD / nas-verify (push) Successful in 8s
|
2026-10-09 20:30:20 +08:00 |
|
claude_dev
|
9475836c38
|
fix(api+frontend): codex review 六件——死因空白strip/终态422防500/落盘回读断言/validator精确断言/promoted确认路径/文案不越权承诺 [vps]
CI/CD / test (push) Successful in 41s
CI/CD / nas-deploy (push) Failing after 14s
CI/CD / nas-verify (push) Has been skipped
|
2026-10-09 20:21:23 +08:00 |
|
claude_dev
|
10a6af6338
|
docs(factor): §7.6 补出生自述行+送墓园触点增补(决议N 因子线侧记录,补 design-doc gate) [nas]
CI/CD / test (push) Successful in 41s
CI/CD / nas-deploy (push) Failing after 13s
CI/CD / nas-verify (push) Has been skipped
|
2026-10-09 20:10:33 +08:00 |
|
claude_dev
|
84d7daf139
|
feat(frontend): 因子详情页档案自述行+危险区送墓园(生产态重确认/死因必填) [vps]
CI/CD / test (push) Failing after 5s
CI/CD / nas-deploy (push) Has been skipped
CI/CD / nas-verify (push) Has been skipped
|
2026-10-09 19:59:26 +08:00 |
|
claude_dev
|
8d009dc233
|
feat(frontend): 工厂看板因子名副行展示出生 description [vps]
|
2026-10-09 19:57:39 +08:00 |
|
claude_dev
|
2b9186b6d6
|
feat(api): 因子出生链落 description——注册块/factors/detail 三处带出,registered 回传 [vps]
|
2026-10-09 19:55:56 +08:00 |
|
claude_dev
|
d43ddd851d
|
feat(api): 分解器输出 schema 四字段——description 必填清洗,缺失走反馈循环 [vps]
|
2026-10-09 19:54:41 +08:00 |
|
claude_dev
|
f3bfbc9dad
|
feat(factor): upsert_factor 条目级 description——仅建条落盘幂等不覆盖 [vps]
|
2026-10-09 19:52:35 +08:00 |
|
claude_dev
|
9777f520e8
|
docs(pipeline): 决议N——出生description链路+详情页送墓园触点(不做物理删除)+实现计划 [nas]
|
2026-10-09 19:51:30 +08:00 |
|
claude_dev
|
c6db2958df
|
feat(frontend): 因子页三修——指标列头ⓘ悬浮解释/因子列加宽防折行/列表页IC趋势卡退役(详情页承接) [vps]
CI/CD / test (push) Successful in 45s
CI/CD / nas-deploy (push) Successful in 33s
CI/CD / nas-verify (push) Successful in 9s
|
2026-10-09 19:34:18 +08:00 |
|
claude_dev
|
cb698a2199
|
docs(pipeline): 决议H修订——批评估日度化(as-of=T-1夜班)+判定层月末快照+验证期后VPS独立NAS月度抽检 [nas]
|
2026-10-09 19:34:18 +08:00 |
|
claude_dev
|
7f512f1461
|
feat(frontend+api): 因子清单加批次分割线——台账反查出生批次分组显示 [vps]
CI/CD / test (push) Successful in 45s
CI/CD / nas-deploy (push) Successful in 31s
CI/CD / nas-verify (push) Successful in 9s
用户复验追加小需求:21 条因子平铺看不出批次归属。
- 后端:hypotheses_list 每条 factor 附 batch(台账 registered
name→job 映射,新→旧先见者胜;查不到=null 归「早期」);
清单排序改按批次新→旧,无批次垫底
- 前端:批次切换处插虚线行「── 第 MM-DD HH:MM 批 · job-… ──」,
无批次段前插「── 早期(无批次记录) ──」
测试:factors[0].batch.jobId 断言;后端 28 绿+前端 76 绿+构建过
|
2026-10-09 13:01:22 +08:00 |
|
claude_dev
|
c04bd8dd0c
|
feat(api+frontend): D7 验收反馈——因子详情页(出生档案)+来源列布局+进度首轮报轮次 [vps]
CI/CD / test (push) Successful in 47s
CI/CD / nas-deploy (push) Successful in 28s
CI/CD / nas-verify (push) Successful in 7s
用户 VPS 实测四条反馈(877723a 首班):
① 因子详情页:卡片因子点名/工厂行点击原都只切工厂页或无反应
- GET /pipeline/factors/{name}/detail:registry 条目(origin/
hypothesis/首版 expression/source/justification/effective_from)
+出生批次=decompose_jobs 台账中 registered 含该名的最新 job
- 前端 FactorDetail.vue(/pipeline/factors/:name):出生档案卡
(来源假设回链/出生方式/批次回链/表达式/承载逻辑)+近窗 t+IC 趋势
② 总览无变化=数据驱动确认,非缺陷(唯一卡已 building;落新卡即现
琥珀项;地铁图属 D1-D6 后续批次)——spec 记录,无代码
③ 工厂来源列:width 130→min-width 200,徽标与回链竖排(挤行修复)
④ 轮次进度起跑即报「第 1/3 轮 · 生成候选中(≤8 条)…」——
初代 LLM 生成期不带轮次字样,像没进循环(用户质询点出)
测试:detail 端点+出生档案断言(decomposer birth/manual null/404)
+FactorDetail.spec 两件;前端 76 绿+构建过+后端 1707 绿
|
2026-10-09 12:44:57 +08:00 |
|
claude_dev
|
877723ab4a
|
feat(api+frontend): D7 落成边亮灯——假设→因子边可见性三处 [vps]
CI/CD / test (push) Successful in 40s
CI/CD / nas-deploy (push) Successful in 30s
CI/CD / nas-verify (push) Successful in 9s
体验稿(8823)逐条过审拍板后动工,不造新机器只做可见性:
件① 三件套(spec §7):
- 1a 卡片已产因子清单:列表项内联 factors(registry hypothesis
血统反查:名/表达式/origin/落成日);单因子名 factorId 前端退役
- 1b 分解批次历史:GET /pipeline/hypotheses/{id}/decompose-jobs
台账新→旧(QA tasks/list 端点形状照抄),卡片折叠区按需拉取
- 1c 轮次进度:run_decompose 每轮 on_progress 回调→内存 job
progress(currentRound/totalRounds/passed/regen;真轮数非 QA 摆设),
台账仍只记起跑+终态;worker 协议改收 job_id
件② 工厂来源列:factors 端点带 origin/hypothesis 血统,
⚡decomposer/✍manual 徽标+回链假设池
件③ 琥珀待办:todos 聚合加 queued/data_check 卡(已确认未分解),
分解转 building 即消行——人工卡点②显性化
件④ 结果持久落卡:前端一次性弹层退役,终态摘要+清单+批次全在卡
测试:后端 TestD7Visibility 六件(历史端点/内联清单/进度中飞可见/
终态不带过程态/琥珀消行/工厂血统)+前端三件套三测;8 目录 2780 绿
|
2026-10-09 11:51:00 +08:00 |
|
claude_dev
|
d92492a554
|
docs(pipeline): D7 件①扩三件套——产物清单+分解批次历史+轮次进度(QA 调研定稿) [nas]
CI/CD / test (push) Successful in 38s
CI/CD / nas-deploy (push) Successful in 32s
CI/CD / nas-verify (push) Successful in 8s
用户追加两项(分解过程可见/多次点击历史可见)+QA 复用调研:
- 1a 已产因子清单:按 registry hypothesis 血统反查,卡片单因子名退役
- 1b 批次历史:端点形状照抄 QA GET /mining/tasks/list(app.py:553-557)
→ GET /pipeline/hypotheses/{id}/decompose-jobs,台账按卡倒序
- 1c 轮次进度:字段结构照抄 QA task.progress(app.py:476-477);数据源
升级=run_decompose 进程内真轮数回调(QA currentRound 只初始化从不
更新=摆设,真驱动是 stdout 解析 phase);过程态内存/台账只记终态
- 不抄:WS 直播+ProgressSidebar 步进器→归 D2 任务墙
变更记录同步 10-09 job 化生产验证通过(job-20261009101513)。
|
2026-10-09 10:56:28 +08:00 |
|
claude_dev
|
168520014d
|
feat(api+frontend): 分解 job 化——POST 立返+后台任务+卡片轮询,治响应孤儿化 [vps]
CI/CD / test (push) Successful in 38s
CI/CD / nas-deploy (push) Successful in 29s
CI/CD / nas-verify (push) Successful in 8s
10-09 终局诊断:分解服务端已成功(registry 落册)而浏览器先超时断开,
uvicorn 对断连请求不写访问日志——当日全部「静默卡死/按钮复活无提示」
同源。分钟级 LLM 任务架在同步 HTTP 上是架构错配,前端 300s+模块级
在飞登记两缓解随本刀退役(7ae6edd/3de3cb0 完成 mission)。
移植 QuantaAlpha frontend-v2/backend/app.py 任务字典范式:
- POST /pipeline/hypotheses/{id}/decompose → 202 立返 job;前置校验
同步 fail-fast(404/状态 409/LLM 未配 503);同卡在飞 409 互斥
(治重复点击堆积 21 条)
- sanguo_api/decompose_jobs.py:内存 job 字典(在飞真相,QA tasks 同款)
+ asyncio.create_task 后台跑原 worker(_DECOMPOSE_LOCK/P2-5 竞态
守卫语义不变);LLM 失败固定文案不泄露上游体(P3-8)
- pipeline_store.decompose_jobs 表:跨重启 run 台账(QA 没有,我们补
——run 台账先于页面);台账 running 无主=重启打断,读侧判 failed 回写
- GET /pipeline/hypotheses 卡片项附 decomposeJob(内存→台账→僵尸判死)
- 前端:4s 轮询 getHypotheses 单一到终态;挂载即续接服务端在飞任务
(切页/刷新不丢);卡片新增「分解」摘要行(上次通过/失败持久可见)
- 测试:TestDecompose 全类改 job 契约(fixture with TestClient 保活
后台任务)+新增 TestDecomposeJobs(202 立返/在飞 409/台账跨重启/
僵尸 running 判死);api+portfolio+factor 1700 绿
- spec:总设计 §13 P5.3 追加 job 化决议;UX 重设计 §7 件④地基已落
|
2026-10-09 10:08:36 +08:00 |
|
claude_dev
|
acc273bbc6
|
fix(api): LLM client 全流式化——读超时从总时长赌注变块间隔看门狗 [vps]
CI/CD / test (push) Successful in 42s
CI/CD / nas-deploy (push) Successful in 28s
CI/CD / nas-verify (push) Successful in 9s
复用 QuantaAlpha 实现(llm/client.py:847,863-873,chat_stream默认True):
非流式下"调大超时"是赌生成时长,生产分解实测 3 连 60s 读超时=502
(238.6s 那次成功属侥幸挤窗)。client._send 两协议全走 SSE 流式累积:
openai=delta.content 逐块+末块 usage;anthropic=text_delta 累积(跳
thinking_delta)+message_start/delta 两段 usage 归一;SSE 中途 error
事件=传输级失败进既有重试环。60s 超时从此语义正确(块间隔看门狗),
不再调参。probe 短探测保持非流式。QA 的 finish_reason=length 自动
续写(client.py:621-639)留档待截断实发再上。
venv310 实测 86 绿(client 流式 5 新测含多块累积/SSE 中途错误重试/
无 usage 块返 None)+漏斗 23 绿;档随码走=总设计 §13 P5.1 补流式节。
|
2026-10-09 09:23:46 +08:00 |
|
claude_dev
|
3de3cb0fa7
|
fix(frontend): LLM 在飞状态提模块级——修切页重挂后按钮可重复点击 [vps]
CI/CD / test (push) Successful in 49s
CI/CD / nas-deploy (push) Successful in 31s
CI/CD / nas-verify (push) Successful in 9s
根因(10-09 用户实测): decomposing/busy 是组件内存态,执行中切路由=
组件卸载,回来重挂全部归零,在飞守卫消失。分解双发有服务端锁+状态机
兜底(排队+UI 错乱),草稿双发无任何服务端守卫=白烧 LLM 两次。
修复: api/pipeline.ts 增模块级 draftInflight/decomposeInflight(响应式,
路由切换不丢,immutable 更新),组件 decomposing 改 computed 读模块态,
向导按钮/生成守卫同步接模块标志;请求函数入口双保险拒重入。
|
2026-10-09 09:15:27 +08:00 |
|
claude_dev
|
7ae6eddb72
|
fix(frontend): 分解请求单点超时 60s→300s+按钮耗时提示——修「AI 分解」假失败 [vps]
CI/CD / test (push) Successful in 43s
CI/CD / nas-deploy (push) Successful in 4s
CI/CD / nas-verify (push) Successful in 10s
根因(10-09 VPS 实测): 分解=多轮 LLM 生成+确定性校验,真实耗时远超全局
60s axios 超时——前端先断开,uvicorn 随即取消 handler(不留访问日志/无
连接/线程 idle, 曾误判"卡死"),UI 显「分解失败」而服务端工作被腰斩。
decomposeHypothesis 单点放宽至 300s(草稿等快请求不受影响),按钮转
「分解中(约 1-3 分钟,勿关页)」防重复点击与提前关页。
|
2026-10-09 08:58:05 +08:00 |
|
claude_dev
|
85d14a1e56
|
fix(api): LLM client 补 anthropic 协议+glm_cn 改指 coding plan 接入点——修生产「AI 生成草稿」429 1113 [vps]
CI/CD / test (push) Successful in 41s
CI/CD / nas-deploy (push) Successful in 31s
CI/CD / nas-verify (push) Successful in 8s
根因(VPS 实测): glm_cn 默认 base_url=paas/v4 是按量计费端点,coding plan
的 key 打它=HTTP 429 code 1113 余额不足;同一 key 在 coding plan 接入点
/api/anthropic/v1/messages 实测 200(glm-5.2 与 glm-5.3-flash 均通)。
修复: ProviderSpec 增 protocol 字段(openai|anthropic,env SANGUO_LLM_PROTOCOL
可覆盖), glm_cn 改指 anthropic 端点; client/probe 共用 chat_endpoint() 按协议
选 URL+鉴权头; anthropic 差异面=system 提顶层/无 response_format/content 块
只取 text(glm-5.x thinking 块跳过)/usage input→prompt 归一(漏斗计量不漂移)。
草稿/分解/测试连接/漏斗 lane 四消费方同 client 一处修复全生效。
venv310 实测 82 绿(含 anthropic 协议 8 新测); 档随码走=总设计 §13 P5.1 补
端点勘误节。
|
2026-10-08 23:07:20 +08:00 |
|
claude_dev
|
41c53b9fae
|
docs(pipeline): D7落成边亮灯定案+QuantaAlpha因子出生边调研入库 [nas]
CI/CD / test (push) Successful in 45s
CI/CD / nas-deploy (push) Successful in 33s
CI/CD / nas-verify (push) Successful in 8s
spec §7 新增(原§7-§10顺延): 定谳=假设→因子边「机器已在灯没开」——P4-2分解器
全链10-02已交付但零实绩+三出口半瞎; D7=可见性四件(卡片产物视图/工厂origin
徽标+回链/分解琥珀待办/结果面板持久化)+出厂验收线(真实卡从一句话到工厂
看板全程可见)+供给源可插拔(现役分解器机芯/QuantaAlpha整机远期单独立项/
AST跨批查重=factor域小件); §8开放问题#7标记已定→D7。
调研报告=六问file:line全证(第四形态/首跑零LLM模板成码/无显式状态机/
四抄三不抄); .gitignore补.superpowers/忽略(brainstorm会话产物)。
用户VPS实测AI生成草稿报LLM上游异常,修复先行于改造(调通后按spec对比验收)。
|
2026-10-08 22:50:53 +08:00 |
|
claude_dev
|
69cff60d8f
|
docs(pipeline): UX重设计spec补变更记录节——备案81adfbc标签缺漏(纯文档,不触VPS运行时) [nas]
CI/CD / test (push) Successful in 40s
CI/CD / nas-deploy (push) Successful in 7s
CI/CD / nas-verify (push) Successful in 9s
|
2026-10-08 21:52:48 +08:00 |
|
claude_dev
|
81adfbc386
|
docs(pipeline): 控制台UX重设计v0.5工作稿+优秀实践调研报告落档
CI/CD / test (push) Failing after 3s
CI/CD / nas-deploy (push) Has been skipped
CI/CD / nas-verify (push) Has been skipped
骨架拍板(混合型+地铁图融总览)+透明车间(自动化执行可观看可回放)+
车间与总览并页决议+参数三层提案+开放问题清单十条;
调研=七工具21模式(Top5收敛:运行台账/生效参数回显/只看差异/数字落库即曲线/卡点内嵌主线)。
工作稿定稿后收编进pipeline总设计spec,不破单档原则。
|
2026-10-08 21:52:04 +08:00 |
|
claude_dev
|
8ed843284b
|
docs(pipeline): 驾驶舱 todos 聚合源清单入档——①′因子晋级评审候选补源定案(门=评审页同门常量镜像)+评审页落选原因行(鸿沟可见),档随码走随本批同 push [vps]
CI/CD / test (push) Successful in 39s
CI/CD / nas-deploy (push) Successful in 0s
CI/CD / nas-verify (push) Successful in 9s
|
2026-10-08 10:19:25 +08:00 |
|