跳转到内容

Lane F 工业隐式产品轨研究:边界、缺口与可执行启动方案

状态:Research Complete / Pre-RFC(未启用 production Field) 日期:2026-08-31 基线 Revision:4025769c87a9fff20ee67317f268a576fac17c2c 研究范围:Lane F 的准确含义、仓库现状、外部一手资料、候选路线、Lane R 接口与验证计划 实施纪律:本轮只新增研究文档;没有修改 AMIR、Field、mesher、UI 或 exporter 产品代码

Lane F 的准确含义不是“继续做 SDF 研究”,也不是 Lane R 的别名。它是一个已获授权、但尚未启动 F1 Gate 的工业隐式产品轨:面向晶格、gyroid/TPMS、超材料与功能梯度零件,把类型化 Field 从孤立 spike 接入 Aira 的 capability、AMIR transaction、ArtifactGraph、Certificate、浏览器产品流和制造出口。 仓库治理文件固定的顺序是:

F1 Field capability RFC
-> F2 Field IR 扩展(smooth blend、lattice/gyroid)
-> F3 production Field 求值与 meshing
-> F4 浏览器产品闭环
-> F5 3MF 为主的出口对接

研究结论是:应从 F1 开始,不能直接写 gyroid 节点或放开当前 mesher。 原因有四个:

  1. 当前 AMIR 的 PortDefinition.type 被 schema 固定为 MeshSolid;Field3D 虽已存在于独立 Field、 ArtifactGraph、SemanticRef 与 translation contracts 中,却还不能成为 committed AMIR node 的端口类型。
  2. 当前 capability catalog 只有 6 个 Mesh/参数能力,Runtime Snapshot 也只发布 5 个 Mesh operation; Field 还没有可发现、可授权、可 propose/preview/validate/commit 的产品面。
  3. Lane F 首批目标 smooth blend、gyroid/TPMS 和重复晶格都不是 TrueSDF;而当前 Manifold adapter 明确只接受 Field3D<TrueSDF>,并拒绝 GeneralImplicit。删除这道检查不会让距离、误差或采样前提 自动成立。
  4. 工业晶格必须被有限 host/skin 截断。周期场本身无界;用 hard min/max 与 host 相交会产生当前 smooth proof lane 明确不接受的非光滑 seam。这个边界问题必须成为 F2/F3 的显式 contract,而不是 UI 里的一次 隐式裁剪。

建议采用“Aira typed Field IR 保持权威 + 两个隔离 backend spike + 分层证书/出口”的路线:

  • F1 先升级 AMIR/operation catalog 的表示类型和 capability binding,但保持现有九元 Meta-operation 不变;
  • F2 只加入少量具名、可静态分析的工业节点,不引入任意表达式或 shader 文本;
  • F3 同时比较 Manifold 与 Fidget 的 GeneralImplicit/TPMS 求值和网格化,不预先把任一候选升级为生产权威;
  • F4 首个闭环以“创建并编辑一个有界 gyroid/TPMS 零件”为目标,但只声明实际检查到的 manifold、预算、 residual 等结论;
  • F5 分为 3MF Core mesh、Beam Lattice 和 Volumetric/Implicit 三个不同 profile,不能互相冒充;
  • Lane R 只为满足其前提的 smooth regular zero set 提供更高 assurance 的 meshing 证据。F1/F2 不依赖 Lane R,F3/F5 可选择消费 Lane R 已关闭的证书,但不能把未关闭义务写成出口保证。

本研究按以下顺序核对:

  1. 全仓检索 Lane F、Lane R、Field3D、lattice、gyroid、GeneralImplicit、3MF;
  2. 阅读 Lane F 激活提交 a5f7943、Lane R 恢复提交 4a7579a 与当前治理提交 4025769;
  3. 对照 Field IR schema/实现、AMIR schema、capability catalog、Field→Mesh adapter、ArtifactGraph、 Certificate、proof matrix 与出口 RFC;
  4. 离线冻结安装依赖,重放 Field IR、Field ArtifactGraph 与 GeneralImplicit 三组机器 Gate;
  5. 只使用标准组织、上游项目和论文的一手资料核验 3MF、Manifold、Fidget、PicoGK 与 TPMS 产品假设。

本文使用三种证据标签:

  • [Repo]:当前 Revision 中的规范、代码、测试或机器报告;
  • [Primary]:标准组织、上游项目、论文原文;
  • [Inference]:由前两类证据推导出的设计判断,必须经后续 Gate 验证。

仓库没有配置 Git remote,也没有 .github issue、Git notes 或独立 backlog 文件;因此不存在可核对的远端 issue 状态。Lane F/R 的权威命名来源是仓库治理文档与上述两次用户裁决提交,而不是 issue label。

传统 B-rep/mesh 对高密度周期结构、连续形变和空间梯度表达成本很高。Lane F 要让 Aira 能以有限、类型化、 可内容寻址的 Field graph 表达这些结构,并把下列闭环连起来:

  • 人类 UI 与 AI 使用同一 typed Patch 创建和修改 Field body;
  • CPU/WASM 权威求值,GPU 最多作为未来 preview;
  • Field contract 显式携带 sign、单位、kind、bounds、Lipschitz/gradient 与未知项;
  • Field→Mesh/3MF 是具名、有损、可审计的转换;
  • 结果绑定 Revision、Evaluation、ArtifactGraph、Certificate 与可复现证据;
  • 轻量化、超材料、功能梯度和增材制造用途不被“看起来像”替代。

TPMS 产品假设有实验依据,而不只是视觉题材。Maskery 等人的增材制造实验直接比较 gyroid、diamond、 primitive 晶格,发现等质量不同 cell geometry 的变形机制和有效刚度显著不同,并讨论 functional grading; 这说明 cell type、period、relative density/level 和 grading 都应是可编辑、可追溯参数,而不是 bake 后丢失的 mesh 细节。Primary: Polymer 2018

  • 视觉优先的 SDF 雕刻、游戏资产或 shader demo;
  • 任意 JavaScript、Rhai、WGSL/GLSL 文本作为 committed authoring truth;
  • 把 mesh、voxel、3MF implicit graph 或 kernel-local handle 升级为 AMIR Revision identity;
  • 通用 hard min/max 非光滑 CSG certified mesher;
  • WebGPU authoritative 求值或 validation token;
  • 以“Manifold 输出成功”“网格闭合”“低 residual”替代 isotopy、无自交或 Hausdorff 证明;
  • FEA/拓扑优化本身。Lane F 可为其提供参数化几何,但分析求解与设计优化需要独立 capability/Gate。

3.3 与根任务和 Lane R 的治理边界

Section titled “3.3 与根任务和 Lane R 的治理边界”

长期架构计划和 Core MVP 进度账本固定了三轨治理:根任务、Lane F、Lane R 分别 记录预算、Gate 与证据。本轮是独立 Lane F 研究任务,但没有开始 F1 RFC,因此账本中的 F1 仍应保持 Queued;研究结论不能把 production 状态改成 In Progress 或 Verified。

层 已有证据 当前缺口 Lane F 含义
治理 F1–F5 和产品假设已固定;F1 为 Queued 尚无 Lane F 专用 RFC/实现 commit 从 F1 起步
AMIR Revision、typed Patch、九元 Meta-operation 已有 Gate AMIR port schema 只允许 MeshSolid;catalog 版本仍为 amir.ops/0.1.0 F1 必须做版本化协议变化
Capability search/describe、Snapshot、Grant、6 个现有 capability 已实现 无 Field capability、Field operationRef 或 Field applicability 不能让 UI 或 AI 合法发现 Field
Field IR 0.1.0 内容寻址图;sphere/box/hard CSG;kind/bounds/Lipschitz/gradient 静态传播;CPU evaluator 无 smooth blend、repeat、lattice、gyroid、material/grading、pruning F2 的可信基础,不是产品完成态
ArtifactGraph Field graph 0.2.0、Region/zero-set、lineage 与 translation endpoint binding 已有 Gate Field Region 未接产品 SemanticRef/query;无 material/feature provenance 与 Field→Mesh face mapping F1/F2 需定义产品绑定
Field→Mesh Manifold 3.5.1 LevelSet、预算/margin/sign adapter、deterministic buffers 与 Loss Certificate 已有 Gate 仅 TrueSDF;requireBoundedError=true 必拒绝;同步 callback;无 cancellation/adaptive path 只能作为 F3 的候选基线
GeneralImplicit outward interval、PV regularity prerequisite、eligible/unresolved/ineligible 与 fail-closed fixtures 已实现 hard seam/box/cusp unresolved;现有 adapter 未消费此 checker 可作为 F3 eligibility 输入,不是 mesher
Smooth extraction uniform-grid accepted subset、combinatorial manifold、local fan embeddedness 与 18 项 proof matrix 已有证据 isotopy、自交、Hausdorff、adaptive extraction 未关闭 属 Lane R 证据,不得由 F 侧改写
Certificate checker registry、precondition DAG、unknown propagation、SARIF sidecar 已有 Gate 没有 Field production profile 或 independent Field checker F3 必须新增 profile,不可硬编码 pass
浏览器产品 M5 MeshSolid UI/AI/IndexedDB 闭环已验证 无 Field body、Field Patch、Field RenderPacket/selection/query F4 复制闭环纪律,不复制 Mesh 假设
出口 RFC-0005 已固定 bundle/loss/certificate 与 Core/Beam/Volumetric 区分 exporter 未启用;Volumetric 状态判断已过时 F5 先修订事实,再做互操作 spike

在本 Revision 的独立 worktree 中执行:

终端窗口
pnpm install --frozen-lockfile --offline
pnpm run verify:field-ir
pnpm run verify:field-artifact-graph
pnpm run verify:general-implicit

结果:

  • 冻结安装复用本地 store,197 个 package,零下载;
  • Field IR:contracts 6/6、field-spike 20/20;sphere=TrueSDF、Boolean=GeneralImplicit; 1320/6960 triangles;deterministic=true;globalHausdorff=unknown;
  • Field ArtifactGraph:contracts 9/9、field-spike 20/20;3 artifacts、1 derivation;source/target graph 均绑定, target invented face count=0;
  • GeneralImplicit:contracts 7/7、field-spike 9/9;smooth sphere=eligible,Boolean/cusp=unresolved, boundary=ineligible;globalHausdorff=unknown;manifoldCallsExecuted=false。

这证明当前 spike 基线可复现,也证明它没有越过 production/GeneralImplicit meshing 的边界。

5.1 F1 是真实协议 Gate,不是文档包装

Section titled “5.1 F1 是真实协议 Gate,不是文档包装”

[Repo] packages/aira-contracts/schema/amir-core.schema.json 把 PortDefinition.type 固定为 MeshSolid;packages/aira-contracts/src/m1-catalog.ts 的 Snapshot 和 6 个 capability 也没有 Field。 独立 field-ir.schema.json 存在,并不意味着 Field 能进入 committed AMIR。

[Inference] F1 至少需要 AMIR schema/operation catalog 版本变化、migration fixture、Field port typing、 capability contract、Runtime Snapshot、Session Grant、ArtifactGraph/Certificate binding 和三端 corpus。 若先改 F2,节点只能留在 spike,或被迫塞进 extensions/MeshSolid,都会破坏类型和身份边界。

5.2 Lane F 的首批几何都不会自然保持 TrueSDF

Section titled “5.2 Lane F 的首批几何都不会自然保持 TrueSDF”

[Repo] 当前 hard union/intersection/difference 已保守降级为 GeneralImplicit;Field→Mesh adapter 只接受 TrueSDF。旧调研与 SDFE 论文都不支持把 smooth blend 自动升级为严格距离场。

[Inference] F2 新节点默认规则应是:

  • compact smooth union:GeneralImplicit,除非未来有逐算子证明支持更强 kind;
  • gyroid/TPMS:GeneralImplicit;
  • 多 beam union/周期 lattice:GeneralImplicit;
  • ConservativeDistance 只能由明确、可验证的 propagation rule 产生,不能作为“比 GeneralImplicit 好看”的标签。

5.3 Gyroid 的单位和“厚度”语义必须先固定

Section titled “5.3 Gyroid 的单位和“厚度”语义必须先固定”

常见 gyroid 近似可写为:

g(q) = sin(qx)cos(qy) + sin(qy)cos(qz) + sin(qz)cos(qx)
q = 2π (p - origin) / period

g 和 level 参数是无量纲的,而当前 Field IR 要求输出 Length。对各向同性 period,可定义

phi(p) = period / (4π√3) * (g(q) - level)

因为每个 phase-space 偏导的绝对值不超过 2,可得到 |∇phi| <= 1 的保守上界。这个缩放只建立 Length 与 Lipschitz 语义,不把 phi 变成 TrueSDF。sheet TPMS 常用 abs(g-level)-halfWidth,其中 halfWidth 仍是无量纲 level-band;其实际法向壁厚随局部梯度变化。

因此 F2 v1 应暴露 level/levelHalfWidth,而不是声称一个精确毫米 wallThickness。若产品需要毫米厚度, 必须增加 requestedOnly / measuredEstimate / proven 的独立 thickness claim 和测量 Gate。

5.4 “有界周期复制”不是只加一个 bounds 字段

Section titled “5.4 “有界周期复制”不是只加一个 bounds 字段”

gyroid 与晶格本身周期无界。有限 evaluationDomain 只限制算力,不会自动把零集闭合成可制造 solid:周期 surface 若在 domain 边界被截断,会留下开口;与 host Field 做 hard intersection 又会制造 non-smooth seam。

F2 必须选择并版本化 closure policy:

  1. clipByHost:保持锐利 host 边界,进入非光滑 feature-aware meshing,不能消费 Lane R smooth theorem;
  2. smoothEnvelope:以具名过渡函数闭合,几何被改变,必须记录 blend width/loss;
  3. periodAlignedCell:只接受特定周期对齐、可证明闭合的有限结构,产品自由度最低;
  4. skinAndInfill:外 skin 与内部 lattice 分表示构造,再显式 union;接口和出口最复杂,但最接近制造工作流。

只写 meshingBounds 不属于上述任何一种 closure policy。

5.5 现有 Manifold 路径是基线,不是 F3 的既定答案

Section titled “5.5 现有 Manifold 路径是基线,不是 F3 的既定答案”

Manifold 上游把 LevelSet 描述为 SDF evaluator,并强调输出 manifold;Aira 当前 Gate 也只验证 TrueSDF sphere。上游的 manifold 保证不能推出输入为 GeneralImplicit 时的 feature capture、无自交或全局 误差。Primary: Manifold repository

Fidget 0.5.0 提供 WASM 可用的 VM、point/interval/bulk-gradient evaluator、区域 tape simplification 与 Manifold Dual Contouring;但上游明确把项目描述为 personal-scale experimental infrastructure,mesher 文档也 承认可能自交并漏掉采样分辨率以下的薄特征。它适合作为 F3 的隔离 evaluator/mesher 候选,不应未经 Gate 直接成为权威后端。Primary: Fidget README、 Primary: fidget 0.5.0 docs

PicoGK/LEAP 71 提供真实工程中的 voxel、beam lattice 与 implicit 工作流,并明确要求用 bounding object 限制周期晶格;它是有价值的产品/性能对照。但其核心是固定 voxel-size 的 OpenVDB/C# native 路线,不提供 Aira 所需的类型化符号 IR、浏览器 authoritative contract 或 Lane R 证明链。 Primary: LEAP71 Lattice Library

5.6 3MF 的事实基线已变化,RFC-0005 需要先纠正

Section titled “5.6 3MF 的事实基线已变化,RFC-0005 需要先纠正”

3MF Consortium 当前规范索引列出:Core ISO 版本 1.3.0、最新修订 1.4.0、Beam Lattice 1.2.0,且 Volumetric/Implicit 1.0.0 已于 2025-11-13 发布。仓库 RFC-0005 所述“索引 1.0、landing page 仍 0.8”已 不再成立。Primary: 3MF specification suite、 Primary: Volumetric/Implicit 1.0

但“已发布”不等于“所有 consumer 都支持完整 implicit graph”:规范只要求 consumer 能解析新元素、必须支持 level-set shape;implicitfunction 对 Volumetric consumer 仍是 optional。官方 lib3mf_wasm 当前 README 标记打包 core 为 2.6.0 prerelease、npm 为 2.6.0-alpha.2。所以 F5 应把 Volumetric/Implicit 从 “版本冲突 experimental”改为“标准已发布、互操作和 browser runtime 仍需 Gate”。 Primary: Volumetric/Implicit specification、 Primary: lib3mf_wasm

Beam Lattice 仍只适合显式 node/beam/diameter graph,且当前版本要求 circular cross-section;它不能表达 gyroid sheet,也不能作为任意 Field graph 的无损容器。 Primary: Beam Lattice 1.2

方案 说明 优点 主要风险 结论
A. Aira typed IR + 现有 TS evaluator + backend spikes 保持 Field IR 为权威;F2 加具名节点;Manifold/Fidget 只作 adapter 最符合现有身份、Patch、ArtifactGraph、Certificate;最小迁移 初期性能一般;需自建 interval/gradient propagation 推荐主路线
B. Fidget 直接成为 Field runtime/IR 把 Aira graph lower 到 Fidget tape,甚至直接存 tape interval、gradient、WASM VM、mesher 和 simplification 较完整 上游明确实验性;MPL 边界;其 graph 无 Aira kind/unit/bounds/identity;可能需 fork 仅作 F3 spike,先不采纳为权威
C. PicoGK/OpenVDB voxel-first Field/lattice 先体素化,再 boolean/offset/mesh 工业案例强,复杂 lattice/大对象经验多 native/C#、固定 voxel error、浏览器差、symbolic edit/provenance 弱 server/native 对照或未来 worker,不作 F1/F2 核心
D. 3MF Volumetric graph 直接作 authoring IR AMIR 内部直接采用 3MF implicit node graph 与制造交换格式接近,标准已发布 consumer 支持可选;类型、单位、hash、Patch、SemanticRef、证书语义不足;交换格式会反向定义模型真相 不采纳;只作 F5 投影
E. 只用 Manifold LevelSet 放开 GeneralImplicit 删除 kind gate,所有 implicit 都交给当前 callback 改动最小 把 SDF API 当通用 root finder;thin feature、tolerance、误差与 seam 语义无证据 不采纳;必须先做对照 spike

方案 A 不排斥后续使用 B/C:Aira IR 可以 lower 到 Fidget VM 或 native voxel worker;关键是 backend 不反向定义 Revision identity 和 claim vocabulary。

7. F1 Field capability RFC 的建议最小决策集

Section titled “7. F1 Field capability RFC 的建议最小决策集”

F1 应只定义跨包协议,不实现生产 mesher。建议 RFC 至少冻结以下内容:

  • 为 AMIR schema 和 operation catalog 建立新版本;不得在 amir.ops/0.1.0 下静默加入 Field;
  • 将 Port 类型从单一 MeshSolid 升级为显式表示 union,至少含 MeshSolid | ExactSolid | Field3D;
  • Field port 必须绑定 fieldKind,或通过可验证 artifact contract 解析 kind;不能靠自由字符串;
  • 冻结旧 Mesh-only document 的 migration fixture 和 model-hash 规则;历史 evidence identity 不批量改写。

建议 F1 只定义 4 类 capability,不一次暴露完整数学语言:

  1. 创建 TPMS/gyroid Field;
  2. 创建显式 beam-graph lattice Field;
  3. 组合/平滑连接 Field;
  4. 以具名 profile 把 Field 转为 MeshSolid。

具体 operationRef 由 RFC 命名;每个 descriptor 必须包含 typed arguments、outputs、applicability、cost、 execution location、fidelity/claim boundary 与 alternative。九元 Meta-operation 保持不变:这些 domain operation 仍由 model.proposePatch -> preview -> validate -> commit 承载,而不是新增 field.execute 逃逸口。

  • Runtime Snapshot 必须逐项发布支持的 Field operationRef、evaluator/mesher build、最大 node/depth/cell budget;
  • Session Grant 沿用 authoring/validate/commit class,但可进一步约束 representation、backend 与成本;
  • capability 可被 catalog 搜到但 runtime 不支持时必须返回 typed unavailable,不得进入 kernel 后才失败;
  • preview 与 authoritative execution 的 location/profile 分开;GPU preview 不铸造 validation token。
  • committed Field node 输出一个 representation-local Field3D artifact;fieldId、contract hash、Revision、 Evaluation、ExecutionManifest 与 ArtifactGraph 全绑定;
  • Region 仍是 continuous zero-set semantic region,不变成 sampled cell 或 mesh Face;
  • Field→Mesh 产生新的 target artifact 和 translation evidence,不覆盖源 Field identity;
  • Certificate precondition graph 至少包含 schema/contract、finite domain、kind/gradient eligibility、resource budget、 mesher result、mesh topology 和所有 unknown;
  • capability/operation binding 使用现有 assurance stable refs,不把 descriptor 文本当 evidence。

F1 关闭前应有:

  • schema + generated types + migration fixtures;
  • catalog search/describe、Snapshot supported/unsupported、Grant allow/deny 的共享 corpus;
  • 一个 Field node 经 typed Patch 完成 propose/preview/validate/commit 的 headless contract test;
  • Field ArtifactGraph/Certificate binding mutation tests;
  • 现有 Mesh-only corpus 和 9 个 Meta-operation 零回归;
  • 明确写出 F2/F3 尚未实现,不能因 F1 通过而启用 production Field。

首版建议:

  • gyroid/TPMS:各向同性 period、origin、dimensionless level/band、finite domain/closure policy;
  • beamGraph lattice:canonical node/edge graph、端点半径/圆截面、bounded repeat;保留直接映射 3MF Beam 的 provenance;
  • compact smooth union:公式和 blend parameter 版本化;输出固定降级 GeneralImplicit;
  • bounded repeat:只允许有限整数 repeat count 或显式 cell index range;不接受无界运行时 modulo graph;
  • 必要的 uniform transform;非均匀 scale/warp 留待后续,避免同时破坏 distance 和 bounds。
  • 区分 mathematical field、evaluation domain、material closure domain;
  • 对周期节点记录 period、phase/origin、cell index range 和 boundary/closure policy;
  • 对 dimensionless analytic function 记录 Length normalization 和 Lipschitz 推导版本;
  • minimumFeatureSize 必须区分 requested hint、measured estimate 与 proven lower bound;
  • smooth blend 的 surface bounds 不能只从 child bounds + Lipschitz upper bound 猜出。若无法建立空间 lower envelope,必须拒绝 proven bounds、收窄输入 kind,或要求独立 interval proof;
  • material/feature provenance 要从 Field node 进入 ArtifactGraph;不得在网格化后为 triangle 编造 source face。

F3 建议先做一个完全隔离、同输入双后端 spike;不修改 production catalog。输入是 F2 的 canonical gyroid 和 beam fixtures,输出统一 translation/certificate envelope。

  • solid gyroid 与 sheet gyroid;至少 3 个 period、3 个 level/band;
  • uniform 与单轴 graded level;
  • period-aligned box、smooth envelope、hard host clip 三种 closure;
  • thin-feature 临界 sweep、domain 边界接触、critical/near-critical regularity、cell budget exhaustion;
  • deterministic repeat、hash tamper、NaN/Infinity、过深图、非法单位和 unbounded repeat;
  • beam graph 可直接 3MF Beam 映射的正例,以及非圆截面/曲线 beam 的明确 unsupported 例。
  1. Manifold adapter spike:验证 GeneralImplicit/normalized gyroid 是否满足 LevelSet 的实际数值前提;不得复用 rootTolerance 的距离解释。记录 kernel status、thin-feature capture、mesh topology、buffer determinism、 residual、时间和内存。
  2. Fidget VM/MDC spike:Aira graph lower 到 Fidget VM,只把 interval/gradient/tape/mesh 当 execution artifact;测 WASM 包体、compile/eval 分离、区域 simplification、thin feature、self-intersection 和确定性。
  • 独立 triangle self-intersection checker,不从 manifold combinatorics 推断几何嵌入;
  • surface sampling/residual 只记 measuredEstimate;
  • requested voxel/edge/root tolerance 只记 requestedOnly;
  • domain/cell/time/memory budget 可证明时单独记 resourceBounded,不要简称为 boundedError;
  • globalHausdorff、actualIsotopy、featurePreservation 在相应证据关闭前保持 unknown;
  • cancellation 在 chunk/task 边界产生零 cache publish、零 target artifact;
  • 若两后端都不能满足产品预算/质量,F3 应停在 typed unavailable,而不是降级声明。

在固定设备/profile 上比较:

  • 首次 compile、重复 evaluate、mesh wall time、峰值 WASM/native 内存、包体;
  • 1/8/64/512 cells 的规模曲线和节点数/采样数;
  • manifold/watertight、self-intersection、薄特征召回、体积/相对密度误差;
  • 同平台和跨平台 hash/metric 差异;
  • 与 source Field、ArtifactGraph、Certificate 的 binding 完整性。

只有通过者才能进入 production adapter registry;失败候选保留 spike receipt,不进入产品依赖。

首个产品切片建议是:

在浏览器中通过 UI 和 AI 两条入口创建一个有界 gyroid sheet 零件,提交同一种 typed Patch;修改 period 与 level band 后产生新 Revision;恢复旧 Revision;查看 Field 与 mesh translation 的 Loss/Certificate;导出 暂不在 F4 内完成。

验收对齐 M5,但增加 Field 特有断言:

  • catalog search/describe 返回同一 capability contract;
  • UI 与 AI 生成语义等价 Patch,kernel 不接收自由脚本;
  • preview 可降级,但 commit 只接受 authoritative CPU/WASM profile;
  • IndexedDB 保存 AMIR/Field identity 与 artifacts,不保存 Three.js scene 作为真相;
  • period/level 编辑只失效依赖 artifact,旧 Revision 可重放;
  • Field Region selector 不静默变成 mesh face selector;
  • 失败、取消、超预算和 unavailable 不推进 branch head;
  • Chrome 产品流 + 自动 Gate + console 0 errors;固定视图截图只作 UI evidence,不作几何证明。

F5 不应只有一个“导出 3MF”按钮,而应有三个 profile:

Profile 合法源 保留内容 关键限制
3MF Core mesh 通过选定 profile 的 MeshSolid 制造 mesh、单位、build/material 等已检查字段 Field function、参数、误差和 SemanticRef 默认 omitted/approximated
3MF Beam Lattice canonical circular beam graph node/beam/radius graph 可直接映射 不适合 gyroid/TPMS sheet;不能把 triangle lattice 反称 beam graph
3MF Volumetric/Implicit 1.0 可投影到标准 node/levelset 子集的 Field 有机会保留 analytic/voxel level set consumer 的完整 implicit support 可选;必须 profile negotiation + fallback

每个 profile 都产生 RFC-0005 定义的 Export Artifact、Manifest、Loss Report 与 Export Certificate。建议 Volumetric/Implicit profile 在 Gate 中要求:

  1. 固定 Core/Volumetric/Implicit/Lib3MF 版本和 namespace;
  2. 官方 schema/conformance tests;
  3. Lib3MF native 与 WASM wrapper 分开测,不从 native stable 推断 npm alpha stable;
  4. 至少两个独立 consumer 的 import/evaluation;一个可选官方候选是 3MF Consortium Gladius;
  5. 不支持 implicit graph 的 consumer 能通过 manifest 发现 Core mesh fallback,而不是静默忽略 required extension;
  6. Aira Field graph 与 3MF graph 双向 mutation/round-trip,逐节点记录 preserved/approximated/unsupported;
  7. zip bomb、资源数量、image stack、function graph depth/cycle、undefined/fallback value 安全 corpus;
  8. export.prepare/export.publish effect、批准、失败与 cancellation 的零外部写入 Gate。

Lane F 向 Lane R 提供:

  • canonical fieldId、Field contract hash、analytic/interval evaluator identity;
  • finite extraction domain、boundary margin、iso value、budget;
  • value/gradient outward intervals、regularity prerequisite 与 rejected/unresolved cells;
  • F3 mesher configuration、sealed buffers 与 translation binding。

Lane R 向 Lane F 返回:

  • prerequisite eligibility certificate;
  • extraction topology/local-patch/proof-obligation evidence;
  • 对 actualIsotopy、selfIntersection、globalHausdorff 等逐 claim 的 pass/fail/unknown;
  • 可被 Certificate Assurance DAG 消费的 checker/version/evidence hash。

接口是证据输入/输出,不是让 Lane R 定义 capability、UI、Patch 或 exporter。

  • F1/F2:不依赖 Lane R;
  • F3:基础产品 meshing 可在诚实 unknown 边界下独立推进;“certified regular-isotopy” profile 才依赖 Lane R;
  • F4:可使用基础 meshing,不得在 UI 显示未关闭的 certified badge;
  • F5:Core/Beam/Volumetric 格式 conformance 不依赖 Lane R;若出口 claim 包含 certified geometry,则只消费 Lane R 已通过的具体 claim。
  1. Lane R 当前 theorem domain 是 smooth regular zero set;hard host clip、box edge、hard min/max seam 不适用。
  2. TPMS 在某些 level/critical points 可能不满足 regular-value 前提;必须逐 fixture interval 证明,不能按名字放行。
  3. Lane R 当前仍有 PV3D-13/14/15/16 等 blocked 义务,actualIsotopy/selfIntersection 仍 unknown。
  4. Lane R 明确不提供 Hausdorff 上界;F3/F5 仍需独立几何误差方案。
  5. 3MF Beam/Volumetric 的格式有效性与隐式曲面的数学正确性是两类证书,不能互相替代。

因此建议 F3 暴露两个清楚的 profile 名称:field.mesh.standard 与未来的 field.mesh.certified-isotopy;在 Lane R 未关闭义务前,后者必须 unavailable,而不是回退为 standard 后仍保留 certified 名称。

风险 后果 早期信号 止损/缓解
F1 版本变化污染当前根任务版本治理 namespace/identity 冲突 同一常量被两轨同时修改 Lane F 独立提交;先 RFC;显式 rebase/registry review
smooth/TPMS 被误标 TrueSDF sphere trace、offset、tolerance 错义 kind 为迎合 adapter 被升级 默认 GeneralImplicit;kind mutation Gate
有界 field 产生开口或 hard seam 非制造 solid、证明不适用 只设置 meshingBounds 就宣称闭合 closurePolicy 必填;boundary corpus
Manifold/Fidget 漏薄特征或自交 打印失败、性能/质量不可控 manifold pass 但独立 checker 失败 独立 self-intersection/thin-feature Gate;unknown 传播
“bounded meshing”被读成误差界 出口 Certificate 误导 edge length 被写成 Hausdorff 改称 resource/domain bounded;error claim 分层
3MF Volumetric 支持被高估 下游拒绝或忽略 Field 单一官方库 round-trip 就标 production capability negotiation、两 consumer、Core fallback
Beam 与 gyroid 混为同一 lattice 无法无损出口/编辑 triangle mesh 被重建成 beam graph 两种 authoring primitive 和 profile 分开
Fidget/PicoGK 反向定义 AMIR backend lock-in、身份漂移 tape/voxel hash 成为 Revision hash 只允许 deterministic lowering artifact
Lane R claim 被提前消费 虚假 certified 出口 combinatorial manifold 显示 isotopy pass Assurance DAG 逐 claim;blocked/unknown mutation test
过早引入 GPU 跨设备数值/证据漂移 GPU result 参与 commit token GPU 保持 preview,直到独立确定性 Gate

按依赖顺序执行:

  1. 文档修复(独立小提交):更新 RFC-0005 的 3MF Volumetric 事实基线,记录 1.0.0 已发布、 implicit consumer support optional、WASM wrapper prerelease;不因此启用 exporter。
  2. F1 RFC:按 §7 冻结 representation type、catalog/Snapshot/Grant、ArtifactGraph/Certificate binding、 version/migration 和 acceptance corpus。
  3. F1 contract spike:只做 headless typed Patch + Field port 的跨包 contract,不引入 gyroid evaluator。
  4. F2 gyroid contract spike:实现 §5.3 的 normalized GeneralImplicit、period/level/band/closure schema、 interval/gradient/bounds corpus;同时做 beam graph fixture,但不急于加入完整 lattice library。
  5. F3 双后端 spike:同一 canonical fixtures 比较 Manifold 与 Fidget;决定 production evaluator/mesher; 失败即保持 unavailable。
  6. F4 浏览器纵向切片:通过自动 Gate 后再做一次真实 Chrome 产品流。
  7. F5 三 profile 出口 spike:Core mesh 先行;Beam 和 Volumetric/Implicit 分别 Gate。
  8. Lane R 并行但独立:继续 PV3D-13,只通过 Certificate 接口影响 F3/F5 certified profile。

15. 尚未解决、必须由后续 RFC/Gate 裁决的问题

Section titled “15. 尚未解决、必须由后续 RFC/Gate 裁决的问题”
  1. AMIR Field port 是 Field3D + artifact-resolved kind,还是 wire-level Field3D<kind>?
  2. F2 首个制造闭合策略选择 host clip、smooth envelope、period-aligned cell 还是 skin+infill?
  3. gyroid UI 是否暴露 level-band,还是提供带 requestedOnly 标签的目标厚度转换?
  4. functional grading 首版只支持轴向线性 profile,还是允许另一个 typed scalar field 驱动?
  5. Manifold 对 normalized GeneralImplicit 的实际数值前提能否通过 fixture,还是必须换 Fidget/自研 extractor?
  6. Fidget MPL 依赖是动态链接/未修改使用、fork 还是只借鉴算法?需要 SBOM 与法律复核。
  7. independent self-intersection checker 选何实现,如何在 WASM 下获得可重复/精确谓词?
  8. 对 Lane F,第一项真正需要 proven 的几何误差是 surface residual、局部 feature size、体积分数,还是 Hausdorff?它决定 F3 的 checker 投资。
  9. 3MF Volumetric/Implicit 的第二个独立 consumer 与 conformance corpus 能否覆盖 Aira 使用的 node 子集?
  10. Beam graph 与 Field graph 是否需要同一高层 LatticeDesign provenance,还是保持完全不同的 authoring type?