docs: S-9 sync READMEs and porting notes with W5 code

- contracts README lists files.ts / auth.ts / browser.ts / redact.ts and auth:"session"
- adapters README fs row: FsProxy and the ./fsworker export
- server README: file-manager module, worker:agent and internal fsworker roles
- moviepilot-rust-transfer §7: compiled-binary fsworker and trash_item done (W5-E)
- 04 S9 row marked fixed (W6-B TOTP entry)

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
rootandClaude Opus 5.5 committed 2026-09-28 00:50:29 +08:00
1 parent 2ddaf7bfa6
commit 2e3c2098fd
6 files changed
+14 -8

No files matched your search

+1 -1
View File
@@ -11,7 +11,7 @@
| [`sites`](src/sites/README.md) | `createSiteAdapter` / `getSiteAdapter`、`listSiteDefinitions`、`siteFetch` | 观众(NexusPHP 配置驱动 spider)与馒头 M-Team API |
| [`tmdb`](src/tmdb/README.md) | `createTmdbClient` / `TmdbClient`、`matchTmdb`、`matchTmdbMulti`、`TmdbError` | 多语言搜索、详情、季集;缓存限流;错误信息不带 api_key |
| [`emby`](src/emby/README.md) | `createEmbyClient` / `EmbyClient`、`MediaServerRegistry` | Emby / Jellyfin 库存查询,失败返回 `unknown` 而不是"不存在" |
| [`fs`](src/fs/README.md) | `copyWithVerify`、`moveSafe`、`crossDeviceMove`、`checkRoot`、`scanIncremental`、`diskUsage`、`ffprobe` | 校验复制、跨卷移动、库根哨兵、增量扫描 |
| [`fs`](src/fs/README.md) | `copyWithVerify`、`moveSafe`、`crossDeviceMove`、`checkRoot`、`scanIncremental`、`diskUsage`、`ffprobe`、`FsProxy`;另有子路径导出 `@umt/adapters/fsworker`(`fsWorkerMain`,供 `--role fsworker`) | 校验复制、跨卷移动、库根哨兵、增量扫描;FsProxy 把文件操作放进可杀子进程(挂死 → SIGKILL → TIMEOUT) |
| [`browser`](src/browser/README.md) | `BrowserProvider` 合同、`createNoneBrowserProvider`、camofox 适配骨架、`redactBrowserUrl` | 浏览器服务接口(M1 只有接口与骨架) |
测试:`deno task test`(vitest,外部服务全部用 `@umt/testkit` 的 mock)。
+5 -1
View File
@@ -10,7 +10,11 @@
| `settings.ts` | `GlobalSettings`、`DEFAULT_SETTINGS`、`GlobalSettingsUpdate`、`mergeSettings()` |
| `capability.ts` / `capabilities-io.ts` | `CapabilityDescriptor`、首批 14 个能力 ID 与目录、各能力 Input/Output schema、`CAPABILITY_IO` |
| `events.ts` | SSE 信封、`EventType`、`EVENT_PAYLOADS`、`TypedEvent` 判别联合 |
| `api.ts` | `Api` 端点表(method/path/scope/params/query/body/response)、`buildPath()`、`listEndpoints()` |
| `files.ts` | 文件管理(`/files/*`)的请求/响应:根与条目、dryRun 计划(planId)、move/copy/organize/delete、回收站 `TrashItem`、identify/probe/scrape、download |
| `auth.ts` | 登录、会话探测 `SessionInfo`、改密、TOTP(`TotpStatus`/`TotpAction`)、审计动作枚举 |
| `browser.ts` | BrowserProvider 合同:会话/标签/快照、快照脱敏类别 `SnapshotRedactionKind` |
| `redact.ts` | 凭证脱敏的唯一键表与规则:`SENSITIVE_KEY_PARTS`、`SENSITIVE_QUERY_PARAMS`、`isSensitiveKey`、`isSensitiveQueryParam`、`redactString`、`redactUrl`(server logger、Agent 模型上下文、adapters 的 rss/browser 共用) |
| `api.ts` | `Api` 端点表(method/path/scope/auth/params/query/body/response;`auth:"session"` 表示只接受管理员控制台会话)、`buildPath()`、`listEndpoints()` |
约定:
- Row schema 与 `packages/db/src/types.ts` 的列一一对应(`test/db-sync.test.ts` 校验);只在 DB 存在的列(密文、key_hash、change_xid)不对外。