后端核心变更: - API 层: 新增 AppError 枚举统一错误类型,替代散落的 (StatusCode, String) - Agent 工具域: 重组为 astro/system/ 和 astro/research/ 两级域,新增 ProcessPaperTool 流水线工具 - 安全: 新增 SSRF 双层防护 (同步字符串级 + 异步 DNS 解析级),覆盖 IPv4/IPv6 私网段 - 弱密码检测: 扩展弱密码列表并增加最小长度检查 - LLM 客户端: 新增 ChatCompleter/Embedder trait,支持依赖注入与批量向量化 embed_batch - 批量处理: AssetBatch 从串行改为 Semaphore 并发池 (BATCH_CONCURRENCY=3) - 分块器: 重写为三阶段结构化管线 (章节解析→短节合并→带标题路径子块) - RAG: embedding 计算移出事务,RetrievalResult 新增 headings/section_index 字段 - 检索: ADS/arXiv 并行检索 (tokio::join!),去重改用 HashSet,本地库回填批量 IN 查询 - 天体查询: Sesame API 升级到 v4,新增视差误差/自行/视向速度/多波段测光字段 - 迁移: 14 个增量文件合并为单一 init.sql,支持 sqlx::migrate! 内存库集成测试 - 测试: circuit_breaker/hooks/task_board/session/memory/streaming_executor 新增修正 15+ 测试 前端架构重构: - 目录重组: features/ → pages/ + components/ + hooks/ 三层分离 - App.tsx 从 1181 行压缩至 ~174 行 (逻辑抽入 9 个自定义 Hook) - Agent 面板拆分为 AgentSessionSidebar/AgentMessageList/AgentInputArea 子组件 - 新增 GlobalDialog/PaperDetailModal/UncachedPaperModal 通用对话框组件 - 工具函数抽取: celestial.ts (天体坐标格式), paper.tsx (文献信息渲染)
44 lines
1.5 KiB
Markdown
44 lines
1.5 KiB
Markdown
# AstroResearch Dashboard / 前端仪表盘控制台
|
||
|
||
本模块是 AstroResearch 的前端部分,基于 **React (TypeScript) + Vite + Tailwind CSS** 构建。
|
||
|
||
---
|
||
|
||
## 1. 本地开发与调试 (Setup & Dev)
|
||
|
||
### 1.1 安装依赖
|
||
确保已安装 Node.js (v18+),在当前目录下运行:
|
||
```bash
|
||
npm install
|
||
```
|
||
|
||
### 1.2 启动开发服务器
|
||
```bash
|
||
npm run dev
|
||
```
|
||
开发服务器将默认运行在 `http://localhost:5173`。Vite 已配置了对 `http://localhost:8000` (后端) 的代理转发,跨域请求会自动路由。
|
||
|
||
---
|
||
|
||
## 2. 核心功能及文件结构 (Core Modules)
|
||
|
||
- `src/pages/`:页面级大组件视图(如统一检索、馆藏管理、对照阅读、引文星系、批量同步、智能科研、系统设置)。
|
||
- `src/components/`:通用与专有 UI 组件(如力导向引文星系图、文献阅读器子组件、流水线任务终端等)。
|
||
- `src/hooks/`:抽取出的全局共享及业务数据逻辑 Hooks(如 `useLibrary`、`useReaderState`、`useSyncState` 等)。
|
||
- `src/types/`:全局 TypeScript 静态类型定义(`types/index.ts`)。
|
||
|
||
---
|
||
|
||
## 3. 生产构建 (Build)
|
||
|
||
若需打包生成生产环境静态文件:
|
||
```bash
|
||
npm run build
|
||
```
|
||
打包文件将输出至当前目录下的 `dist/`,后端 Axum 在编译时会直接将其静态托管。
|
||
|
||
---
|
||
|
||
## 4. 开发规范 (Coding Standards)
|
||
- 本模块的详细前端开发约定,请参阅本目录下的 [前端开发规范-React篇.md](前端开发规范-React篇.md)。
|