docs: 用户/开发手册 HTML 版、db-schema 补 license_purchases、CLAUDE.md 文档地图、pay 对接指南
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JJ1g8XV1YhhmHRzhwWEW7o
This commit is contained in:
@@ -4,6 +4,12 @@
|
||||
|
||||
**开始任何任务前,先读 `docs/context/project.md`** 了解项目全貌。
|
||||
|
||||
**文档地图**(入口 `docs/index.html`):
|
||||
- 用户使用手册:`docs/manual/user-manual.html`(官网帮助页精简版源=`web/content/docs.md`,两者同步改)
|
||||
- 开发手册(架构/后端/前端/数据库/API/运维/发版):`docs/manual/dev-manual.html`
|
||||
- 数据库列级文档:`docs/db-schema.html`(schema 变更时同步)
|
||||
- 设计契约与像素闸:`design/CONTRACT.md` + `tools/screens.mjs`
|
||||
|
||||
---
|
||||
|
||||
## Orchestrator:如何自动选择 Agent
|
||||
@@ -248,10 +254,10 @@ cd client && flutter test
|
||||
- 使用 `dart:io` 的 `Platform` 类前,必须先检查 `kIsWeb`(`import 'package:flutter/foundation.dart'`)
|
||||
- Web 平台不支持 `dart:io`,直接使用会在 Web 构建时崩溃
|
||||
|
||||
### 表格列头筛选
|
||||
- 可筛选列使用 `FilterableColumnHeader`(来自 `widgets/multi_select_dropdown.dart`)
|
||||
- 不要在 toolbar 放独立的筛选按钮,筛选入口应内嵌在列头
|
||||
- 列定义使用 `ColDef`,可隐藏列用 `ColumnToggleButton` 控制
|
||||
### 表格与列头筛选(ds 真相源)
|
||||
- 列表屏统一 `DsTable`(`widgets/ds/ds_table.dart`:toolbar+表格+pager 连成一卡),列定义 `DsColumn`,可筛选列走其列头漏斗(`filtered` 态高亮),可隐藏列走列设置菜单
|
||||
- 不要在 toolbar 放独立筛选按钮,筛选入口内嵌列头或工具栏 `DsChip`
|
||||
- 旧 `FilterableColumnHeader`/`multi_select_dropdown.dart` 仅存量引用,勿在新屏使用
|
||||
|
||||
### 响应式 / 移动端适配
|
||||
- 断点判定统一用 `context.isMobile`(`client/lib/core/responsive/responsive.dart`,宽度 < 600 为窄屏/手机),**禁止**在各处散落 `MediaQuery.width < 600` 这类魔法数
|
||||
@@ -290,7 +296,7 @@ cd client && flutter test
|
||||
```
|
||||
|
||||
执行顺序:本地 build → test(按 part)→ 更新对应 CHANGELOG → git commit → tag `<part>-v<ver>` → push main+tag。
|
||||
CI/CD(Forgejo)按 tag 前缀触发对应 workflow,自动:编译 → 测试 → 创建 Release → 部署 EC2 → Telegram 通知。
|
||||
CI/CD(Forgejo)按 tag 前缀触发对应 workflow,自动:编译 → 测试 → 创建 Release → 部署 ali(jiu.51yanmei.com,443)→ Telegram 通知。
|
||||
|
||||
**归属与解耦**(关键):
|
||||
- `version.yaml` 归 **client**(写 version/build_number/release_notes/下载链接/changelog);nginx/systemd 归 **server**。
|
||||
|
||||
Reference in New Issue
Block a user