Skip to content

Render evidence trust class in the recipe-health Evidence column #2877

Description

@mchmarny

Summary

Render the evidence trust class (first-party / community / partner) in the Evidence
column of docs/user/recipe-health.md, so a reader can tell the two apart without opening
recipes/evidence/allowlist.yaml.

Why it is not visible today

The Evidence cell is generated by tools/health from pkg/testgrid/presence.yaml, which
carries only coordinate paths — no signer identity and no class. The class lives in a different
file, recipes/evidence/allowlist.yaml, keyed by the source slug that also names each pointer
directory (recipes/evidence/<recipe>/<slug>/). Nothing joins them, so the cell renders a
deep-link or pending and says nothing about who signed.

The join itself is cheap: the slug is the directory name, and pkg/evidence/allowlist
already exposes Classify(issuer, identity) with slug support.

Current state, for the record

Every committed pointer under recipes/evidence/ is community class:

Signer Attestations
yuanchen8911/aicr fork workflow (slug 5bf9e82f…) 23
yuanchen97@gmail.com 3
ramessesii2 1
atif1996 1

None is first-party, although allowlist.yaml declares four first-party NVIDIA/aicr UAT
workflows. That includes both v1 Supported GB300 coordinates.

This is the designed model, not a defect — contributors publish from a fork per
evidence-publishing.md,
and maintainer review of the allowlist PR is the trust gate.

Why this is post-v1

Deliberately deferred rather than rushed before the v1 tag, for two reasons:

  1. It lands in a slot that is already deferred by design. recipe-health.md records that
    ADR-009's in-cell freshness state (unattested vs aged) is deferred and that "an optional
    freshness token can later annotate the same cell without replacing the link". A class token
    is the same cell. Designing two annotations for it independently, weeks apart, is how the
    cell ends up with two competing conventions.
  2. The honest version is already shipped. recipe-health.md now states the concrete
    posture — all committed evidence is community class, none is first-party — and ROADMAP §2
    records that trust class is not part of the v1 Supported definition. That closes the
    information gap without committing to a rendering.

Scope

  • Teach tools/health to resolve a coordinate's pointer directory to its allowlist class
  • Render the class in the Evidence cell alongside the deep-link, coordinated with ADR-009's
    deferred freshness token rather than independently of it
  • Regenerate docs/user/recipe-health.md and update the golden expectations in
    tools/health/main_test.go
  • Replace the interim prose note with the rendered signal

Separate question this does not decide

Whether Supported should require first-party attestation. ROADMAP §2 now says it does not
for v1 and calls tightening it a post-v1 question. That is a policy decision about the bar;
this issue is only about making the current bar legible.

References

  • recipes/evidence/allowlist.yaml, pkg/evidence/allowlist
  • tools/health/main.go (evidenceCell), pkg/testgrid/presence.yaml
  • ADR-009

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/docstheme/validationConstraint evaluation, health checks, and conformance evidence

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions