Skip to main content

Crate smix_recorder

Crate smix_recorder 

Source
Expand description

smix-recorder — host-side recorder for smix test sessions.

Ported from now-retired TS sources (was legacy/src/recorder/{session,generator-*,cleanup}.ts, retired in v3.22). Cement crate, smix-specific (depends on smix-sdk’s App).

§Architecture (v2.0 c3 lock-in)

The user runs a test session against smix via smix_sdk::App, but routes the calls through RecordingApp (a wrapper that delegates every side-effecting method to the underlying App AND pushes a matching IRAction into a RecordSession buffer). At the end of the session, a generator emits an equivalent test file:

cleanup::cleanup optionally pipes either output through the claude CLI for a constrained AI cleanup pass (naming, wait_for injection between phases). Cleanup is a sweetener; callers should fall back to the raw output on cleanup failure.

Re-exports§

pub use cleanup::CleanupConfig;
pub use cleanup::CleanupError;
pub use cleanup::cleanup;
pub use generator_maestro_yaml::generate_maestro_yaml;
pub use generator_rust::generate_rust;
pub use session::RecordSession;
pub use session::RecordingApp;

Modules§

cleanup
Claude CLI cleanup pass — sweetener for generated test source.
generator_maestro_yaml
IRAction[] → maestro yaml flow.
generator_rust
IRAction[] → Rust test-source string.
session
RecordSession + RecordingApp — host-side capture wrappers.

Structs§

RecorderError
Recorder-side failure, distinct from SDK-side ExpectationFailure. CLI / SDK consumers may surface this directly or wrap with context.

Enums§

IRAction
One user-visible side-effecting step in a recorded session.
RecorderErrorReason
Reasons a recorder session might fail. v2.0 c4 extended with three cleanup-* variants to surface claude-CLI AI-cleanup failures distinctly from the recording itself.