CodeSampleX

Exemple

tracing-core 0.1.36: tracing_core

Échantillon vérifié pour cargo tracing-core 0.1.36: tracing_core. Le contrat s'est exécuté sur rust 1 · linux alpine/x64 · docker et a réussi.

sha256:66d13c247d3554295d7acdd627f630eab507e7ba1608299fb27ba5ba26da98b6

Ce réseau offre une seule chose : un échantillon qui compile. Il l'a exécuté dans un bac à sable et conservé le reçu signé. Il ne note rien et ne garantit rien : si le même code compile chez vous, il ne l'a pas mesuré. Combien de clés de signature distinctes ont déposé un reçu de contrat réussi. Une seule, c'est l'auteur ; plus d'une signifie que quelqu'un d'autre l'a compilé aussi. Une clé est auto-générée sans identité enregistrée derrière, donc on compte des clés, pas des personnes. MIT-0

Preuves d'exécution

L'environnement déclaré et les exécutions signées sont séparés, pour que vous voyiez exactement ce que cet échantillon a exécuté et où.

Base de preuve
Contrat signé réussi
Reçus de vérification
1
Clés de signature qui l’ont compilé
1
Environnement déclaré linux · alpine · musl x64 cargo

Environnements des exécutions de vérification

Environnement Contrat Étapes Exécution
rust 1 · linux alpine/x64 · docker ed25519:c1973797be207ac4 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · cargo@1rust:1-alpine@sha256:a10e64dd139b…
2026-09-16

Cas

HOW
Objectif
verify pkg:cargo/tracing-core@0.1.36
Paquets
Symboles
  • tracing_core
Créé
2026-09-16T21:35:35Z

Contrat

  1. assert Level ordering increases with verbosity from ERROR up to TRACE
  2. assert Level as_str returns canonical uppercase name for each level
  3. assert LevelFilter supports from_level conversion and orders below ERROR with OFF
  4. assert span::Id wraps a non-zero u64 identifier and extracts with into_u64
  5. assert Interest reports truth for is_never, is_sometimes, and is_always predicates
  6. assert Metadata provides span inspection for name, target, level, kind, and field lookups

Fichiers

  • Cargo.lock
  • Cargo.toml
  • PROMPT.md
  • csx.json
  • spec.json
  • src/lib.rs
  • test/contract.rs

Télécharger l’artefact source (tar.gz)

Code source

Cargo.lock
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 4

[[package]]
name = "once_cell"
version = "1.21.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"

[[package]]
name = "sample-tracing-core"
version = "1.0.0"
dependencies = [
 "tracing-core",
]

[[package]]
name = "tracing-core"
version = "0.1.36"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a"
dependencies = [
 "once_cell",
 "valuable",
]

[[package]]
name = "valuable"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65"
Cargo.toml
[package]
name = "sample-tracing-core"
version = "1.0.0"
edition = "2021"
publish = false

[dependencies]
tracing-core = "=0.1.36"

[[bin]]
name = "contract"
path = "test/contract.rs"
PROMPT.md
Clean-room public code sample — generation instructions

Write a brand-new, minimal, self-contained code sample in this clean-room directory.
Do not copy, paraphrase, or reference any existing project source. Work only from this spec.

A csx.json manifest scaffold already exists. Do not recreate it from memory. Preserve its case.goal, packages and symbols; fill its empty case.contract with exact assertions and correct its environment, commands and verifierAdapter for the files you generate.

Goal: verify pkg:cargo/tracing-core@0.1.36
Kind: HOW

Use EXACTLY these public packages and versions:
  - pkg:cargo/tracing-core@0.1.36

Rules:
  - One focused purpose; the smallest project that proves the goal.
  - Include a contract test (test/contract.*) that runs OFFLINE and exits 0 exactly when the goal behavior works.
  - Pin every dependency with a lockfile so resolution is reproducible.
  - No secrets, credentials, or tokens. No real URLs (only example.com or localhost). No absolute paths.
  - No personal names, emails, company names, or project identifiers of any kind.
  - No binaries and no generated output (node_modules, dist, target, venv, .git, .env).
  - Keep it under 200 files and 256KB packed.
csx.json
{"case":{"caseId":"case:sha256:e8b28ea4e850c2a21400ddc5bdadf52e1a3a457b672e0455867b62404480a851","contract":["assert Level ordering increases with verbosity from ERROR up to TRACE","assert Level as_str returns canonical uppercase name for each level","assert LevelFilter supports from_level conversion and orders below ERROR with OFF","assert span::Id wraps a non-zero u64 identifier and extracts with into_u64","assert Interest reports truth for is_never, is_sometimes, and is_always predicates","assert Metadata provides span inspection for name, target, level, kind, and field lookups"],"goal":"verify pkg:cargo/tracing-core@0.1.36","kind":"HOW","packages":["pkg:cargo/tracing-core@0.1.36"],"schemaVersion":1,"symbols":["tracing_core"]},"contractCommand":["cargo","run","--offline"],"environment":{"arch":"x64","distro":"alpine","ecosystem":"cargo","libc":"musl","os":"linux","packageManager":"cargo","schemaVersion":1},"license":"MIT-0","packages":["pkg:cargo/tracing-core@0.1.36"],"schemaVersion":1,"subject":"pkg:cargo/tracing-core@0.1.36","symbols":["tracing_core"],"verifierAdapter":"cargo@1"}
spec.json
{
  "schemaVersion": 1,
  "goal": "verify pkg:cargo/tracing-core@0.1.36",
  "kind": "HOW",
  "packages": [
    "pkg:cargo/tracing-core@0.1.36"
  ]
}
src/lib.rs
//! Clean-room verification sample for tracing-core.

pub use tracing_core::*;
test/contract.rs
use tracing_core::{
    field::{Field, FieldSet},
    identify_callsite,
    metadata::Kind,
    span::Id,
    Interest, Level, LevelFilter, Metadata,
};

// Callsite and Metadata definition for span inspection contract
static CS: tracing_core::callsite::DefaultCallsite =
    tracing_core::callsite::DefaultCallsite::new(&META);
static FIELDS: [&str; 2] = ["request_id", "status"];
static META: Metadata<'static> = Metadata::new(
    "test_span",
    "sample::target",
    Level::INFO,
    Some("test/contract.rs"),
    Some(12),
    Some("sample_module"),
    FieldSet::new(&FIELDS, identify_callsite!(&CS)),
    Kind::SPAN,
);

fn main() {
    // 1. Level ordering increases with verbosity from ERROR up to TRACE
    assert!(Level::ERROR < Level::WARN);
    assert!(Level::WARN < Level::INFO);
    assert!(Level::INFO < Level::DEBUG);
    assert!(Level::DEBUG < Level::TRACE);

    // 2. Level as_str returns canonical uppercase name for each level
    assert_eq!(Level::ERROR.as_str(), "ERROR");
    assert_eq!(Level::WARN.as_str(), "WARN");
    assert_eq!(Level::INFO.as_str(), "INFO");
    assert_eq!(Level::DEBUG.as_str(), "DEBUG");
    assert_eq!(Level::TRACE.as_str(), "TRACE");

    // 3. LevelFilter supports from_level conversion and orders below ERROR with OFF
    assert_eq!(LevelFilter::from_level(Level::INFO), LevelFilter::INFO);
    assert_eq!(LevelFilter::from_level(Level::ERROR), LevelFilter::ERROR);
    assert!(LevelFilter::OFF < LevelFilter::ERROR);
    assert!(LevelFilter::ERROR < LevelFilter::WARN);
    assert!(LevelFilter::WARN < LevelFilter::INFO);
    assert!(LevelFilter::INFO < LevelFilter::DEBUG);
    assert!(LevelFilter::DEBUG < LevelFilter::TRACE);

    // 4. span::Id wraps a non-zero u64 identifier and extracts with into_u64
    let id1 = Id::from_u64(42);
    assert_eq!(id1.into_u64(), 42);

    let id2 = Id::from_u64(100);
    assert_ne!(id1, id2);

    // 5. Interest reports truth for is_never, is_sometimes, and is_always predicates
    let never = Interest::never();
    assert!(never.is_never());
    assert!(!never.is_sometimes());
    assert!(!never.is_always());

    let sometimes = Interest::sometimes();
    assert!(!sometimes.is_never());
    assert!(sometimes.is_sometimes());
    assert!(!sometimes.is_always());

    let always = Interest::always();
    assert!(!always.is_never());
    assert!(!always.is_sometimes());
    assert!(always.is_always());

    // 6. Metadata provides span inspection for name, target, level, kind, and field lookups
    assert_eq!(META.name(), "test_span");
    assert_eq!(META.target(), "sample::target");
    assert_eq!(*META.level(), Level::INFO);
    assert!(META.is_span());
    assert!(!META.is_event());
    assert_eq!(META.file(), Some("test/contract.rs"));
    assert_eq!(META.line(), Some(12));
    assert_eq!(META.module_path(), Some("sample_module"));

    let fields = META.fields();
    assert_eq!(fields.len(), 2);
    assert!(!fields.is_empty());

    let req_field: Option<Field> = fields.field("request_id");
    assert!(req_field.is_some());
    assert_eq!(req_field.unwrap().name(), "request_id");

    let status_field: Option<Field> = fields.field("status");
    assert!(status_field.is_some());
    assert_eq!(status_field.unwrap().name(), "status");

    let missing_field: Option<Field> = fields.field("nonexistent");
    assert!(missing_field.is_none());

    println!("All tracing-core contract assertions passed successfully.");
}

Seeder d'origine

anonyme