Skip to content

docs(submitqueue): add outcome predictor RFC - #682

Open
behinddwalls wants to merge 4 commits into
mainfrom
preetam/outcome-predictor-rfc
Open

docs(submitqueue): add outcome predictor RFC#682
behinddwalls wants to merge 4 commits into
mainfrom
preetam/outcome-predictor-rfc

Conversation

@behinddwalls

@behinddwalls behinddwalls commented Sep 7, 2026

Copy link
Copy Markdown
Collaborator

Summary

Why?

Speculation ranks paths on the scorer's price, which only reflects the change and ignores what the run has since observed — a passed build, a failed build, or batch state. The predictor design needs a written contract before the implementation lands.

What?

Add the outcome-predictor RFC covering scorer versus predictor, finite YAML factors and inheritance, which path results count as evidence, and rejected alternatives. Update the speculation and best-first RFCs so the shared batch/path-set snapshot and predictor-backed ranking are described consistently.

Test Plan

Docs-only change.

Issues

Stack

## Summary

### Why?

Speculation ranks paths on the scorer's price, which only reflects the change (lines, files) and ignores what the run has since observed — a passed build, a failed build, batch state. The predictor design needs a written contract before the implementation lands.

### What?

Adds doc/rfc/submitqueue/outcome-predictor.md: scorer vs predictor, the four YAML factors and what their values mean, which path results count as evidence, and rejected alternatives. Links it from doc/rfc/index.md.

## Test Plan

Docs-only change.
## Summary

### Why?

The RFC's rejected-options list used implementation shorthand and included alternatives already explained elsewhere, making the design tradeoffs difficult to evaluate without branch context.

### What?

Keep the four alternatives reviewers are likely to raise and state each rejected option, why it fails, and the selected design. Remove redundant and scorer-specific entries.
@behinddwalls
behinddwalls force-pushed the preetam/outcome-predictor-rfc branch from 451805e to 3227132 Compare September 7, 2026 23:54
@behinddwalls
behinddwalls marked this pull request as ready for review September 8, 2026 00:08
@behinddwalls
behinddwalls requested review from a team and sbalabanov as code owners September 8, 2026 00:08
## Summary

### Why?

The outcome predictor RFC described failed-path evidence and ranking differently from the path-set identity and best-first behavior, while older speculation RFCs still assigned dynamic pricing to the scorer.

### What?

Document that prediction applies to unresolved dependencies, failed all-succeeds evidence applies once, neutral factors preserve exact scorer prices, and factors must be finite. Update the existing speculation RFCs to consistently describe predictor-based ranking and state-aware pricing.
Document per-queue factor inheritance and the shared batch/path-set snapshot consumed by best-first ranking.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant