Skip to main content

Crate actl_core

Crate actl_core 

Source
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)。
ErrorBody
ErrorEnvelope
失败 envelope(docs/06 §4):错误码 + 消息 + 恢复建议 + evidence 引用。

Enums§

ErrorCode
机器可读错误码(docs/06 §4 错误码表,全集变更属 spec 提交)。

Constants§

ENVELOPE_VERSION
envelope 协议版本,与 CLI semver 解耦(ADR-006)。