ADR-099: Re-attribute Agent-Owned Pipeline Solver to the Pipeline Owner

Field Value
Decision ID ADR-099
Initiative corpus & attribution integrity
Proposed By Chris Barlow (maintainer)
Date 2026-06-26
Status Accepted

Context

ADR-079/ADR-088 corrected the provider/model and difficulty of ohdearquant’s mac-158f deterministic Python/sympy template pipeline, but deliberately left solver≜ untouched (“ranking by credit is unaffected; only difficulty-weighted points move”).

Auditing the contributor model breakdown surfaced a solver≜ defect that assumption masks. Of the 2,033 agent≜mac-158f index records, 1,896 credit solver≜ohdearquant (the pipeline’s owner) but 72 credit cgbarlow and 65 credit perttu — and another 117 across proof-runs/254 records total. These are not independent work: they are the same pipeline’s output (identical gpow/gbinom template families, all difficulty 1), landed via dispatched PRs opened by those contributors (the merge commits read “…by mac-158f”). The proof-submission path stamped solver≜ with the lander’s handle instead of the pipeline owner’s, handing the lander full proof + difficulty credit for work they only dispatched.

The maintainer (cgbarlow) confirmed mac-158f is ohdearquant’s machine and asked to re-attribute all such records — including the maintainer’s own 72, which this removes from their solver credit.

agent≜ is the ground truth for who proved a goal (the machine/pipeline); solver≜ should equal the agent’s owner. Dispatch credit for the lander is a separate term the leaderboard already computes from PR authorship, so the lander keeps the (smaller, correct) dispatch credit and loses only the mis-assigned proof credit.

WH(Y) Decision Statement

In the context of ADR-079/088 correcting mac-158f’s provenance and difficulty while leaving solver≜ alone, and 254 mac-158f records crediting two landers (cgbarlow 134, perttu 120) rather than the pipeline’s owner ohdearquant — proof credit assigned to whoever opened the dispatched PR, not whoever’s pipeline proved the goal,

facing the principle that solver≜ (proof credit) must reflect who proved the goal — the agent≜-identified pipeline — not who landed the PR (already captured by the leaderboard’s separate dispatch term); the maintainer’s confirmation that mac-158f is ohdearquant’s pipeline; and the maintainer’s decision to re-attribute all of it, including their own 72 records, accepting the change to three contributors’ standings,

we decided for adding a third correction pass to the existing idempotent relabel sweep — an _AGENT_OWNER = {"mac-158f": "ohdearquant"} table and a pure correct_solver(text) that rewrites solver≜ to the declared owner for any record whose agent≜ is owned, composing with the ADR-079 provider/model relabel so a record is fixed in every dimension in one pass — reusing ADR-079/087/088’s exact delivery: provenance-driven, idempotent, self-healing on the hourly + push-triggered attribution-relabel workflow, no one-shot corpus rewrite in this PR,

and neglected leaving the mis-attribution (rejected — it overstates the landers’ proof+difficulty credit and understates ohdearquant’s, the inverse of the integrity ADR-079/088 pursued); a one-shot migration PR (rejected — same live-corpus reasoning as ADR-079/087/088: only an idempotent sweep survives a churning corpus); scoping the rewrite to template records only (rejected — ownership is by pipeline/machine, so the lone genuine claude/sonnet mac-158f proof is ohdearquant’s too, and it already credits ohdearquant, so the agent-level rule no-ops on it); and a general “dispatch ⇒ re-attribute” rule (rejected — too broad; this corrects exactly one declared agent-owned pipeline, every other agent’s solver stays untouched).

Decision

Consequences