rfe-types 0.1.0

Shared types for the Rust Fintech Ecosystem (RFE): newtype IDs, hashing, Decimal utilities
Documentation
# rfe-types

Core domain types and deterministic audit primitives for the Rust Fintech Ecosystem (RFE).

## Key Capabilities

- `Sensitive<T>` redacts PII in `Debug` output.
- Typed IDs: `Inn`, `Ogrn`, `RequestId`, `LoanId`, `ClientId`.
- Deterministic Blake3 helpers: `blake3_hash`, `blake3_chain`.
- Canonical audit structures: `AuditEntry`, `SealInput`.
- `rust_decimal` re-export for exact financial arithmetic.

## Freeze Notice (v0.1.x)

`SealInput` is frozen starting from `v0.1.0` for TrustBox compatibility.

Field-level breaking changes require semver-major bump.

## SealInput and AuditEntry

`SealInput` fields:

- `nonce`
- `request_hash`
- `result_hash`
- `chain_head_pre`

`AuditEntry` includes:

- `seal`
- `processing_time_micros`
- `operator_binding_hash`
- `session_nonce`

## Minimal Example

```rust
use rfe_types::{blake3_hash, AuditEntry, SealInput};

let payload = b"tx:123";
let request_hash = blake3_hash(payload);
let result_hash = blake3_hash(b"allow");
let parent = [0u8; 32];
let nonce = [7u8; 32];

let seal = SealInput::new_v1(nonce, request_hash, result_hash, parent).compute_seal();
assert_ne!(seal, [0u8; 32]);

let root = AuditEntry::genesis(1_700_000_000_000_000, payload, Some(&nonce));
let next = root.next(1_700_000_000_001_000, b"tx:124", Some(&nonce));
assert!(next.verify_chain(&root));
```