Skip to main content

Module error

Module error 

Source
Expand description

core 错误类型:FFI 边界的结构化错误(评测报告 rust m-3;框架缺陷修复 R3)。

core 内部约定错误为 String(各层 ? 直通,消息即契约——绑定层错误文案 与 JS 参考实现逐字对齐)。本模块把「哨兵识别」从 Host 侧收口到 core:

  • core 内唯一的哨兵前缀匹配点是 CoreError::classify:内层 String 错误在 FFI 边界经 From<String> 归类为 CoreError,绑定层按 CoreError::code 透出稳定 machine code 并 match 枚举构造原生异常(Node Error / Python RuntimeError), 不再各自做字符串匹配(对比 nodejs-store m-1 / py-store crud/exec.py 的历史方案)。
  • machine code 稳定且可穷举(CoreError::code):permission_denied / no_context / profile_blocked / other——四端(宿主 + 四皮)据此映射对外语义, 与字符串前缀解耦。Parse / NotFound / Validation 三档按 R3 分步计划后续细化 (本步先落上列四档,见 doc/execution/2026/10/...-02-... §4.3)。
  • [Display] 输出保留完整原始文案(含哨兵前缀):既有的「按前缀识别」 Host 逻辑(含 ERR_PERMISSION: 剥离)不受影响,宿主可渐进迁移。

分类依据只引用 crate::command 的哨兵常量本体,靠 [tests] 模块锁定 「常量前缀 ↔ 变体 ↔ machine code」关系,文案可自由调整而不破坏分类。

Enums§

CoreError
core 错误(FFI 边界可程序化穷举)。

Constants§

ERR_POLICY_VIEW_READONLY
策略视图只读守卫的稳定错误前缀:非 base 视图禁止注册 / 清空 schema(目录唯一真源在 base)。 归入 CoreError::Other(非权限族),Host 按前缀识别即可(对齐 no-error-masking)。

Type Aliases§

CoreResult
core 公开入口统一错误别名