Behind jackin❯ — crates

jackin-diagnostics

Composition root for jackin❯ observability and in-memory invocation progress. Terminal-ownership and title policy for rich surfaces live in this crate's terminal module (product-owned process globals; TermRock owns neutral session mechanics).

What this crate owns

  • Direct OTLP/gRPC providers, stable process resources, current observations, retry, flush, and shutdown.
  • Bounded current-invocation progress and timing for operator surfaces, never telemetry history.
  • Operator output, secret scrubbing, and explicit workflow build-log capture.

The closed schema and governed emission APIs live in jackin-telemetry; do not bypass them.

Architecture tier and allowed dependencies

L2 infrastructure. Architecture gates enforce dependencies. Product crates consume composition and operator-output services without OpenTelemetry SDK details.

Structure

ModuleOwnsTests
lib.rscrate root and re-exportstests.rs
observability.rs · observability/OTLP configuration, providers, resources, health, retry, flush, shutdownmodule tests and tests/wire_*
run.rsbounded in-memory invocation progress and timingsrun/tests.rs
logging.rs · operator_notice.rsoperator-output routingmodule tests
secret_scrub.rs · redact.rsdefense-in-depth scrubbingmodule tests
build_log.rsexplicit workflow-owned build-log capturebuild_log/tests.rs

Public API

Consumers initialize telemetry, inspect typed provider health, request marker/flush checks with per-signal exporter-success proof, manage invocation progress, and route operator notices. Instrumentation uses jackin-telemetry.

How to verify

cargo nextest run -p jackin-diagnostics --all-features --locked
cargo clippy -p jackin-diagnostics --all-targets --all-features --locked -- -D warnings

On this page