## Why

PocketBase hooks 项目最近连续完成了附件集中存储、文档管理增强、字典项图片、用户图片字段收敛、SDK 直连权限管理等一批跨模块能力，但仓库里还没有对应的 OpenSpec 记录。现在这些功能已经全部落地，需要把需求范围、能力边界和影响面正式归档，避免后续继续开发时只能依赖聊天记录回溯。

## What Changes

- 将业务表中的上传文件统一收敛为 `tbl_attachments.attachments_id` 引用，实际文件仅保存在 `tbl_attachments.attachments_link`。
- 扩展 `tbl_document`，新增 `document_file`，并让 `document_image`、`document_video`、`document_file` 全部支持多附件、`|` 分隔存储与联表回读。
- 增强 `manage/document-manage` 页面，补齐三类附件上传、拖拽上传、编辑态保持、局部状态提示、全屏图片预览和大文件上传体验。
- 新增 `manage/sdk-permission-manage` 页面，用于按角色为 `tbl_auth_users` 用户分配 PocketBase SDK 直连 CRUD 权限，并把角色授权与 collection rules 管理收敛到 hooks 页面中。
- 同步更新 OpenAPI、项目归档文档、PocketBase schema 脚本与线上 `document_file` 字段。

## Capabilities

### New Capabilities

- `attachment-backed-media`: 统一附件存储、附件 ID 引用、附件回读与公开下载策略。
- `document-manage-console`: 文档管理页面的三类附件编辑、上传体验和保存反馈。
- `sdk-collection-permissions`: 面向角色的 PocketBase SDK 直连权限分配与可视化管理。

### Modified Capabilities

- None.

## Impact

- 受影响代码位于 `pocket-base/bai_api_pb_hooks/`、`pocket-base/bai_web_pb_hooks/`、`script/`、`docs/`、`pocket-base/spec/`。
- 受影响系统包括 PocketBase schema、PocketBase hooks 页面、附件上传路由、文档管理 API、字典管理 API、用户资料返回结构与 SDK 直连权限页。
- 线上已通过 `POCKETBASE_AUTH_TOKEN` 补齐 `tbl_document.document_file` 字段，后续部署需继续保持 hooks 与 schema 一致。
