Skip to content

public-stats: measured per-rule precision endpoint (aggregates only, sanitizer-invariant) #8230

Description

@JSONbored

Problem

Epic #8211 track G. The strongest public trust claim this product can make is measured: 'over the trailing 90 days, N decided close-class decisions, X% human-validated, reversals counted against ourselves.' The internal trend has these numbers; no public surface does.

Requirements

⚠️ Required pattern. Extends src/review/public-stats.ts under its existing public/private boundary discipline: aggregates + rule ids only, sample-floor nulls so sparse rules cannot be misread, the sanitizer-invariant test table extended to assert no forbidden term or corpus fragment can appear, and cached like sibling public stats.

  • Public endpoint (+ openapi regen) exposing per-rule {decided, precision|null, window}, overall reversal counts (all three reversal event types), and the corpus-manifest checksum + freeze point of the latest published corpus snapshot for the reproducibility story.
  • Explicit exclusions documented in-code: no per-repo splits publicly (repo identity is a customer signal), no confidence distributions.

Deliverables

  • Endpoint + cache + openapi with 100% branch coverage and the boundary-invariant suite extended

Links & Resources

#8211 (epic), src/review/public-stats.ts, src/services/rule-calibration-trend.ts, #8136 (the reproducibility conclusion this operationalizes)

Boundaries

Aggregates only, forever. Anything customer-identifying stays internal.

maintainer-only — public/private boundary surface.

Metadata

Metadata

Assignees

Labels

maintainer-onlyOwner-only work — yields no Gittensor points.roadmapOn the Wave-2 agent-layer roadmap board (project 9)

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions