Skip to content

I2715 — New public Rust code meets rust-quality before the structure job does

Put the rust-quality verdict (examples, behavioural tests and prose for every exported item) where an author meets it while writing — the fast local checks and the change's own proofs — instead of first in the 15-30 minute structure job.

DONE wave 0 · p1 · implementation profile · parallel safe

Part of development-runtime — The runtime has a development surface.

Objective

Put the rust-quality verdict (examples, behavioural tests and prose for every exported item) where an author meets it while writing — the fast local checks and the change's own proofs — instead of first in the 15-30 minute structure job.

Why

2026-10-14: two implementations (I1501, I1995) passed their own crate tests, clippy, rustdoc and cases, and then failed the structure job's rust-quality gate: seven and thirteen exported items with no executable example, no behavioural test or two-word docs. Each cost a further 20-40 minute round (fix, derive, structure job again). The gate's command was known; nothing asked for it before the structure job.

Current state

rust-quality runs only as a structure gate (`cargo run -- quality report --summary`). scripts/rust-check, the pre-commit hook and the documented proof list for a Rust change do not include it.

Desired state

scripts/rust-check runs the quality report over the changed crate by default (or a documented `--quality` that the documented proof list and the agent brief name), it finishes in under a minute on a warm build, and a change that adds an exported item without an example is refused there with the same finding the structure job would give.

Scope

  • scripts/rust-check
  • docs/RUST.md
  • docs/INTEGRATION.md
  • .ai/repo/workflows
  • test/cases

Dependencies

None. This issue is a root of the graph.

Acceptance criteria

  • A new exported item without an example is refused by the local rust check with the structure job's finding
  • The documented proof list for a Rust change names it

Validation

  • bin/majordomus plan validate

Evidence required

  • local_rust_check_runs_quality_case

Evidence

coverstypecommandresultat commit
local_rust_check_runs_quality_casetestbash test/run.sh 3032_the_quality_verdict_comes_first 3033_a_release_record_case_is_listed_by_a_structure_gatetests: 2 passed, 0 failed, 0 skipped; case 3032: scripts/rust-check runs the gate's own quality report FIRST in its default mode and in --quality, stops on a red verdict, and a new pub fn without an example fails it with RUST_PUBLIC_MISSING_EXAMPLE before fmt/clippy/test; the rust-quality gate no longer hides findings behind --summary; CONTRIBUTING.md item 4 names it (run 2026-10-15 on 97c4521f91a8e096d84eb9e552c9590b512309a5 plus this change)97c4521

Timeline

started
2026-10-14T22:49:53Z
verified
—
completed
2026-10-14T22:50:02Z

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

Canonical record: .ai/repo/project/issues/I2715.yaml. Read it back with majordomus plan show I2715.

Searches the titles and descriptions of every page this site publishes.