恢复集成(HEL-237): 以完整基线 89b8d33 为底合入登录线 cefc869

事故根因:HEL-214/221/226/233 均直接基于 main(8a5e78f) 构建部署,
绕过了 .11 正式线(HEL-183/188/190/191/192/193/199/207/208 + HEL-164
共 14 个已验收提交),导致问天工具行右对齐、侧栏等高、管理员刷新
结果、快照补档、收盘日线修复等整体丢失。

本合并以 deploy 前最后完整基线 89b8d33(镜像 official-limit-guard-d9ee725)
为底,合入 cefc869(HEL-221 情绪周期等高、HEL-226 登录门户与免密切换、
HEL-233 移动端系统管理五页),三处 CSS 缓存版本统一刷新为 20260829-hel237,
architecture-inventory 按合并后源码重新生成。

Co-authored-by: multica-agent <github@multica.ai>
This commit is contained in:
总工
2026-08-29 15:51:48 +08:00
co-authored by multica-agent
37 changed files with 2637 additions and 111 deletions
+30 -26
View File
@@ -10,10 +10,10 @@
},
"counts": {
"primary_pages": 16,
"api_exact_paths": 53,
"api_exact_paths": 56,
"api_prefixes": 0,
"api_patterns": 11,
"database_tables": 36,
"database_tables": 37,
"frontend_page_fragments": 12
},
"pages": [
@@ -96,10 +96,13 @@
"/api/assistant/chat",
"/api/assistant/messages",
"/api/auction",
"/api/auth/accounts",
"/api/auth/forget",
"/api/auth/login",
"/api/auth/logout",
"/api/auth/me",
"/api/auth/register",
"/api/auth/switch",
"/api/backfill",
"/api/chart/intraday",
"/api/dashboard",
@@ -189,6 +192,7 @@
"assistant_messages",
"heaven_readings",
"job_runs",
"account_switch_grants",
"schema_migrations"
],
"background_job_methods": [
@@ -370,11 +374,11 @@
}
],
"css_layers": [
"/shared/tokens.css?v=20260820-3",
"/shared/tokens.css?v=20260829-1",
"/shared/base.css?v=20260806-1",
"/shared/shell.css?v=20260827-hel183",
"/shared/auth.css?v=20260820-5",
"/shared/components/controls.css?v=20260827-hel183",
"/shared/shell.css?v=20260829-hel237",
"/shared/auth.css?v=20260829-hel237",
"/shared/components/controls.css?v=20260829-hel237",
"/shared/components/navigation.css?v=20260820-1",
"/shared/components/cards.css?v=20260820-1",
"/shared/components/tables.css?v=20260820-1",
@@ -461,8 +465,8 @@
},
{
"path": "frontend/index.html",
"bytes": 48077,
"lines": 662
"bytes": 48248,
"lines": 664
},
{
"path": "backend/features/screener/catalog.py",
@@ -549,16 +553,16 @@
"bytes": 13681,
"lines": 338
},
{
"path": "frontend/shared/session.js",
"bytes": 13176,
"lines": 293
},
{
"path": "frontend/shared/dashboard.js",
"bytes": 12894,
"lines": 274
},
{
"path": "frontend/shared/session.js",
"bytes": 12848,
"lines": 283
},
{
"path": "backend/features/market/insights_auction_data.py",
"bytes": 12829,
@@ -716,8 +720,8 @@
},
{
"path": "backend/http/dispatch.py",
"bytes": 4118,
"lines": 115
"bytes": 4196,
"lines": 117
},
{
"path": "frontend/shared/table.js",
@@ -734,16 +738,16 @@
"bytes": 3369,
"lines": 81
},
{
"path": "frontend/app.js",
"bytes": 3337,
"lines": 95
},
{
"path": "frontend/pages/themes/page.html",
"bytes": 3316,
"lines": 55
},
{
"path": "frontend/app.js",
"bytes": 3201,
"lines": 93
},
{
"path": "backend/features/market/insights_context.py",
"bytes": 3175,
@@ -761,7 +765,7 @@
},
{
"path": "backend/features/accounts/application.py",
"bytes": 2442,
"bytes": 2514,
"lines": 63
},
{
@@ -849,6 +853,11 @@
"bytes": 1143,
"lines": 19
},
{
"path": "backend/features/accounts/routes.py",
"bytes": 908,
"lines": 25
},
{
"path": "backend/features/popularity/routes.py",
"bytes": 822,
@@ -859,11 +868,6 @@
"bytes": 817,
"lines": 23
},
{
"path": "backend/features/accounts/routes.py",
"bytes": 803,
"lines": 22
},
{
"path": "backend/features/sentiment/routes.py",
"bytes": 724,