Vyntek 架构审查报告(Arden · 2026-10-21)
审查范围:
D:\Works\Vyntek骨架仓 vs 设计权威/workspace/mvdocs(站点 mvdocs.treeden.app)。
本轮只改 www 文档;include//src// examples / CMake 实现未改。
时区:Asia/Shanghai(UTC+8)。
目的:供 Alive 分派问题单(Rhett / Bruno / Reed / Chase)。
审查结论(一句话)
仓已立 Vyntek / vyntek:: / 单库 vyntek 骨架,但公开头路径、命名空间分层与类型外形相对 mvdocs(vyntek::toolflow / vyntek::imaging、<vyntek/toolflow/...>、libvyntek_*、TC-*)仍是扁平桩,阶段 A 最小可编译契约未对齐;www 已补导读与交叉链接。
P0(会误导后续合入 / 须先定形)
| ID | 现象 | 规格依据 | 建议责任 |
|---|---|---|---|
| P0-01 | 公开头为扁平 include/vyntek/{toolflow,imaging,memory,session}.hpp,无设计要求的 <vyntek/toolflow/...> / <vyntek/imaging/...> 子树(缺 tool.hpp / run_session.hpp / registry.hpp / serialize.hpp / handle.hpp / buffer.hpp 等) | cpp-headers.md Include 树;sketch/README.md 伪树 | Bruno(库骨架) |
| P0-02 | 全部类型落在扁平命名空间 vyntek::(ToolFlow / Image / Session / BufferView),未使用 vyntek::toolflow / vyntek::imaging | overview / cpp-headers「命名空间」;sketch namespace vyntek::toolflow | Bruno |
| P0-03 | CMake 仅产出单目标 vyntek(OUTPUT_NAME vyntek,安装 Vyntek::vyntek),与 T14 倾向的 libvyntek_toolflow + libvyntek_imaging 双库边界不符 | cpp-headers T14;host-integration 同核图 | Bruno(拆分设计落地)· Chase(合入时核对目标名/安装前缀门禁,只记规范) |
| P0-04 | 公开类型外形与规格脱节:vyntek::Image(非 PixelImageHandle)、vyntek::Session(非 RunSession / 会话生命周期)、BufferView{data,size}(非 ImageBuffer / pin / Access·ReadOnly)、ToolFlow 无 Create/Load/AddTool/Link/Validate/Run | image-model / memory-management / toolflow §3–§7 / session-lifecycle;test-contracts TC-H* / TC-MEM-* / TC-RUN-* | Bruno(头外形)· 成像数值路径后续 Reed |
| P0-05 | 伞头 vyntek.h 聚合上述扁平桩,易被宿主当成「已定 ABI」;规格明确 MVP 无稳定 ABI,且示意头不可当已发布符号 | cpp-headers「非已发布 ABI」;host-integration R7;validation 阶段 A | Bruno · Chase(文档/注释门禁:桩须标 stub) |
P1(契约空缺 / 阶段未起步)
| ID | 现象 | 规格依据 | 建议责任 |
|---|---|---|---|
| P1-01 | 无 Diagnostic / DiagnosticCode / Severity、TypeDesc、ToolId、ToolRegistry、.avtf Load/Save API 声明;全部 TC-REG-* / TC-LNK-* / TC-RUN-* / TC-SER-* / TC-CTL-* 无法对着头勾选 | toolflow v1.9 §7.4.6 / §10.1;test-contracts.md | Bruno |
| P1-02 | 无句柄交接表面(Share / Complete / CompleteAndOpenRead / Access);TC-H1–TC-H10 零覆盖 | toolflow §3.4;test-contracts §6 | Bruno · 算法侧消费句柄时 Reed |
| P1-03 | 无采集/会话/输出观察/显示相关公开面;TC-ACQ-* / TC-SESS-* / TC-OUT-* / TC-DISP-* / TC-MEM-* 均未起步(骨架阶段预期,但须进问题单) | test-contracts §7–§11;validation 阶段 B–F | Bruno(运行时/会话/ToolFlow)· Rhett(C# ImageDisplay / TC-DISP)· Reed(成像数值) |
| P1-04 | bindings/ 仅 README 占位,无 PInvoke / opaque handle / Adopt·Release;host-integration 示意 vyntek_toolflow_* / vyntek_imaging_* 与 capi/vyntek_exports.h 均缺失 | csharp-binding(T11);host-integration R7;sketch capi/vyntek_exports.h | Rhett(绑定/UI)· Bruno(C 导出外形) |
| P1-05 | examples/、tests/ 为空占位;无法对照 S01–S13 / fake_acq 链做 headless | examples-scenarios;sketch fake_acq_chain.cpp 等;toolflow §7.6 / §10.1 | Bruno(headless/fake)· Chase(日后测试门禁,本轮不改实现) |
| P1-06 | memory.hpp / session.hpp 模块名易与规格「内存协调实体」与「采集会话停流」混淆;当前 Session 更像误名的 RunSession 占位 | memory-management;session-lifecycle;cpp-headers run_session vs 会话专题 | Bruno(重命名/对齐前先出问题单,勿 silently 扩桩) |
P2(文档/导航/卫生 · 本轮部分已在 www 收口)
| ID | 现象 | 规格依据 | 建议责任 |
|---|---|---|---|
| P2-01 | 审查前 www 缺「规格对照 / 架构差距 / 角色读序」与 mvdocs 深链;API 页未标明与 vyntek::toolflow 目标外形的差距 | overview 角色路径;glossary | Arden/www(本轮已补) |
| P2-02 | 根 README / AGENTS 中文在部分控制台编码下乱码(文件本身多为 UTF-8);不影响构建,但影响 agent 阅读 | 工程卫生 | Chase(可选:统一 BOM/编码检查,不改业务) |
| P2-03 | .avtf 作为历史扩展名保留——符合规格(T8/T14 已拍板保留);非品牌残留问题。未发现 av:: / Avanti / MPF_ToolBlock / 旧 DAG 实现残留 | overview「勿混 MPF/DAG」;validation T8 | (无行动;保留说明即可) |
| P2-04 | 本地预览约定 **http://127.0.0.1:8792**;`www/README` 与计划任务已有,本站导读已强化 | 产品文档约定 | Arden/www(本轮已写明) |
对照摘要(仓现状 vs 设计)
| 维度 | 设计(mvdocs) | 仓现状(2026-10-21) |
|---|---|---|
| 品牌 / NS | Vyntek;vyntek::toolflow / vyntek::imaging | 品牌 OK;NS 扁平 vyntek:: |
| Include | <vyntek/toolflow/*.hpp> + <vyntek/imaging/*.hpp> | 扁平四头 + vyntek.h |
| 库名 | libvyntek_toolflow + libvyntek_imaging | 单库 vyntek |
| ToolFlow | Create/Load/Link/Validate/RunSession/Registry/Diagnostic | 空类 ToolFlow |
| Imaging | PixelImageHandle / Access / Buffer / 工厂 | 空类 Image |
| Memory | ImageBuffer / pin / 归还 | BufferView 两字段 |
| Session | 采集会话停流(TC-SESS)≠ RunSession | 空类 Session |
| Host C API | vyntek_toolflow_* / vyntek_imaging_* | 无 |
| C# / 显示 | PInvoke + ImageDisplay(仅 C#) | bindings 占位 |
| TC-* | 可勾选全文 | 全部未实现(骨架) |
| 旧品牌残留 | 禁 av::/Avanti/MPF/DAG | 未发现实现残留;.avtf 名保留合法 |
明确未改清单
未修改:include/**、src/**、examples/**、tests/**、根/src CMakeLists.txt、CMakePresets.json、cmake/**、任何实现代码。仅写入/更新 www/ 下 Markdown 与导航相关内容。
给 Alive
请按上表 P0 → P1 → P2 分派问题单;实现合入前优先收敛 P0-01…P0-04(头树 / 命名空间 / 双库 / 类型外形),避免在扁平桩上堆业务。
Arden 架构审查 · 2026-10-21 Asia/Shanghai