# Qualified outcomes vs attention.
#
# Attention is a diagnostic. It tells you whether anyone saw the thing. It does
# not tell you whether the thing was any good, and optimising for it is how a
# research programme quietly becomes a content programme.
#
# A QUALIFIED outcome requires someone who is not the author to do work.
# Nothing else counts. Zero is the honest starting value and is recorded as zero.

qualified:
  # someone reran the reproduction from source and reported a result
  independent_reproductions: []
  # a benchmark author confirmed or corrected one of our classifications
  source_corrections: []
  # a benchmark began publishing paired outcomes or per-conditioning FPR
  paired_outcome_releases: []
  # a change we proposed landed in someone else's repository
  upstream_prs: []
  # a human applied the protocol cold, without asking us what we meant
  human_cold_runs: []

# Entry shape for any qualified bucket (validated by scripts/outcomes.py):
#   - date: "YYYY-MM-DD"          when the external work was verified, not seen
#     kind: <bucket-specific>      e.g. match | mismatch | row-correction | release | merged-pr | cold-run
#     actor: "<public name>" | anonymous
#     artifact: "https://…"        the issue, PR, release, or log a reader can open
#     agreed: true | false         did the external result agree with the record?
#     consequence: "<what changed: a claim, a count, a page — or 'none, recorded'>"
#     claim: "<claim or row id>"
# A disagreement is recorded with at least the prominence of the claim it
# disagrees with, and the claim's correction history links back here.

diagnostics:
  # Recorded because they are cheap, not because they are evidence.
  # X exposes these in its own activity dashboard.
  impressions: null
  clicks: null
  # Blinded comprehension trials on the films (P14). Each trial is a
  # diagnostic about whether a film teaches its operation; it is NEVER a
  # qualified outcome and never a cold run. Question and scoring rule are
  # fixed in distribution/launch-units.yaml before any viewer answers.
  # {date, film, viewer: anonymous|name, answers: {question_id: verbatim}, scores: {question_id: pass|fail}, source}
  # question ids and scoring rules are frozen in distribution/launch-units.yaml → cold_test_gate.
  # WORLDSPACE trials (film: worldspace) follow worldspace/manifest.yaml → cold_test and may add
  # the verbatim, never-scored answers `prediction` and `agency`.
  cold_comprehension_trials: []
  # An invitation or open issue is diagnostic only; it is never credited as
  # an external reproduction, correction, release, PR, or cold run.
  technical_interactions: 4     # replies that carried a number, source, or correction
  technical_interaction_log:
    - date: "2026-09-16"
      kind: upstream_issue
      url: https://github.com/CentreSecuriteIA/bells_leaderboard/issues/1
      summary: >
        Owner asked how the 170 released BELLS rows were selected, acknowledging
        the published representative-examples description. Posted September 16
        in America/New_York (September 17 UTC). Open with no comments when verified;
        diagnostic only, not an independent reproduction or source correction.
    - date: "2026-09-02"
      kind: upstream_issue
      url: https://github.com/IBM/Adversarial-Prompt-Evaluation/issues/7
      summary: >
        Owner posted the joint-reporting request with main_joint_report.py attached.
        Verified on 2026-09-05: open, zero comments. Recorded retrospectively as
        one diagnostic interaction, not a maintainer response or qualified outcome.
    - date: "2026-08-31"
      kind: upstream_issue
      url: https://github.com/PatrickKollman/Multimodal-Safeguard-Bench/issues/1
      summary: >
        Requested a declared, item-level receipt for the reported LG4→text /
        LG4∨ShieldGemma 2→image evaluation route, explicitly distinguishing a
        direct route trace from a post-hoc reconstruction. Open; no outcome yet.
    - date: "2026-08-31"
      kind: compatibility_issue
      url: https://github.com/open-eval/OpenEval/issues/2
      summary: >
        Asked whether a redacted, item-level guard-route receipt can accompany
        a future independently executed OpenEval contribution. Open; no
        submission, acceptance, or reproduction yet.

stop_rule:
  threshold_interactions: 12
  condition: >
    If technical_interactions reaches 12 with qualified totalling 0, stop
    replying. Move the effort to upstream contributions and direct author
    outreach. The absence of qualified outcomes after real technical
    engagement is itself a result about the audience, and is reported as one.

kill_rule:
  condition: >
    If a widened v1 pilot shows paired/overlap reporting is already common,
    decision conclusions are usually identified from marginals anyway, and
    qualified outcomes remain zero, downgrade the census from an active
    research programme to a finished portfolio artifact and say so publicly
    with the same prominence as the original claim.
