Expand description
§txgate-policy
Policy engine for transaction approval rules in the TxGate signing service.
§Internal Crate Warning
This crate is an internal implementation detail of txgate.
It is published to crates.io only because Cargo requires all dependencies to be published. The API is unstable and may change without notice between any versions, including patch releases.
Do not depend on this crate directly. Instead:
- For the signing server binary:
cargo install txgate - For programmatic access: Open an issue at https://github.com/txgate-project/txgate to discuss a stable public API.
This crate provides the policy evaluation and rule management system:
§Modules
config- Policy configuration types
§Modules (planned)
engine- Policy evaluation enginerules- Rule definitions and parsingconditions- Condition types (amount limits, address allowlists, etc.)actions- Policy actions (approve, deny,require_approval)
§Policy Features (planned)
- Transaction amount limits (per-tx)
- Address allowlists and blocklists
- Contract function restrictions
- Time-based rules (business hours, rate limiting)
- Multi-signature approval workflows
- Chain-specific policies
§Policy Format
Policies are defined in YAML/JSON format and can be:
- Loaded from files
- Fetched from remote configuration servers
- Defined programmatically
§Example Policy (conceptual)
policies:
- name: "high_value_transfer"
conditions:
- type: "amount_greater_than"
value: "10 ETH"
action: "require_approval"
approvers: ["admin@company.com"]Re-exports§
pub use engine::DefaultPolicyEngine;pub use engine::PolicyCheckResult;pub use engine::PolicyEngine;
Modules§
- config
- Policy configuration types for the
TxGatesigning service. - engine
- Policy engine for transaction rule enforcement.
Structs§
- Policy
Config - Policy configuration for transaction approval rules.