- wire SQLite control-plane access/session paths into Rust web local-folder routes - preserve local Markdown attachment semantics across upload, reload, and secondary-pane resource tabs - refresh design governance docs, Reasonix task templates, and bug records - retire root .mcp.json local MCP config
1.7 KiB
1.7 KiB
Reasonix Worker E:control-plane share_links / audit / outbox 扩展
Project root: /mnt/Data1T/mnote
你不是独自在代码库中工作。其他 worker 可能并行修改 mnote-web 适配层、auth/session 或 access policy。不要还原、覆盖或清理不属于你任务范围的改动。不要提交 git。
背景
上位设计稿:
design/02-convex-rust-long-term-architecture/process/2-8-convex-replace-with-rust-sqlite-control-plane-v1.md
当前 control-plane crate 已有 users/auth/workspaces/directory_grants/sync_state 的骨架,但 share_links、audit_log、outbox 的能力还不够完整。
Ownership
允许修改:
rust/crates/control-plane/src/model.rsrust/crates/control-plane/src/store.rsrust/crates/control-plane/src/sqlite.rsrust/crates/control-plane/src/migrations.rsrust/crates/control-plane/migrations/*.sqlrust/crates/control-plane/src/error.rs仅限必要错误映射
禁止修改:
rust/crates/mnote-web/**infra/convex/**.env*scripts/**
任务
- 补强
control-plane模型与 store trait:share_links的 create/list/revoke/resolveaudit_logappend/list 最小能力outbox_eventsdrain/mark-delivered 的稳定方法
- 为 share_links 增加 SQLite 实现与单测:
- token 只保存 hash
- revoke 后不可再 resolve
- 为 audit_log 增加最小单测:
- 创建分享、撤销授权、AI/控制面关键事件可追加
- 保持 schema 迁移幂等。
验收命令
cargo test --manifest-path rust/Cargo.toml -p control-plane -- --nocapture
最终回复格式
请列出:
- 修改文件
- 新增 API / 表能力
- 实际运行过的命令及结果
- 未完成项 / 风险