Skip to main content

Crate face_cli

Crate face_cli 

Source
Expand description

End-to-end pipeline for the face binary.

run is the library entry point: it accepts a parsed cli::Cli and an Io with explicit stdin/stdout/stderr handles, runs the §3 pipeline (sniff → parse → detect → strategy → cluster → render), and emits output. Stream injection via Io lets tests drive the pipeline against in-memory buffers without touching the real OS handles.

§Pipeline shape (§4–§8 of docs/design.md)

  1. Validate flag combinations (§11.3).
  2. Sniff the input format (§4.1) — or honor --format-in.
  3. Parse stdin into a ParsedInput (§4.2).
  4. --schema short-circuits and prints the input shape.
  5. Detect score field (§4.3) and preset (§4.4) when not pinned.
  6. Plan axes / strategies via face_core::auto_strategy (§4.5).
  7. --explain short-circuits and prints the full reasoning.
  8. Build the cluster tree via face_core::build_tree (§5.5).
  9. Drill into a cluster if --cluster was supplied (§6).
  10. Compose the [Envelope] and render via the chosen format (§7, §8).
  11. With --verbose, write provenance and per-record skip lines to stderr (§11.1).

Modules§

cli
Current clap surface for the face binary.

Structs§

Io
Explicit I/O handles for run.

Functions§

run
Library entry point with explicit I/O.