Expand description
actl-core —— 协议层:JSON envelope、错误码、错误映射。
本 crate 是纯逻辑层,禁止依赖任何 Windows 相关 crate(AGENTS.md §5.5)。
契约的权威定义见 docs/06-design-blueprint.md §4/§5;变更必须走 spec 提交。
Re-exports§
pub use keys::Key;pub use keys::KeySpec;pub use keys::parse_key_expr;pub use snapshot::ElementOut;pub use snapshot::INTERACTIVE_ROLES;pub use snapshot::SnapshotBuilder;pub use snapshot::SnapshotOutput;pub use snapshot::UiNode;pub use snapshot::is_interactive_role;pub use snapshot::new_snapshot_id;pub use target::Target;pub use target::parse_target;
Modules§
- keys
- 按键序列解析:actl 人文语法
ctrl+s→ 结构化 KeySpec。 - snapshot
- 快照语义:UiNode、ref 编号引擎、skeleton 投影、snapshot_id 生成。
- state
- 显示信号协议(docs/11 §10 / docs/13 §4.1):actl 侧状态源。
- target
- 命令目标(@eN ref / 语义选择器)的解析,纯逻辑。
Structs§
- CtlError
- 统一错误类型(ADR-004):单一枚举,
code()映射与恢复建议的唯一处。 变体随命令实现扩充;运行路径禁止裸 unwrap/expect。 - Envelope
- 统一成功 envelope。stdout 只允许出现本结构(或其错误变体)的序列化结果(ADR-002;
唯一例外
--help/--version走人类文本,docs/06 §3.5)。 - Error
Body - Error
Envelope - 失败 envelope(docs/06 §4):错误码 + 消息 + 恢复建议 + evidence 引用。
Enums§
- Error
Code - 机器可读错误码(docs/06 §4 错误码表,全集变更属
spec提交)。
Constants§
- ENVELOPE_
VERSION - envelope 协议版本,与 CLI semver 解耦(ADR-006)。