…matches
A time odds match plays the same build on both sides with one given more
of the clock, so it prices the time rather than a change. The elo per
doubling that every speed price leans on was read that way at v0.4.3,
with a per side clock that never reached master. The Strength workflow
has one time_control, which reaches both engines.
candidate_time_control gives the candidate its own clock and leaves the
baseline on time_control. Empty, the match is the symmetric one it was.
The manifest records both clocks and the summary line names both, so a
time odds run cannot be read as an ordinary one.
play-shard is pinned to the mache commit that takes the new input. It
moves to that change's release before this merges.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013vnTSb5N6JEKfqkQHAgevq
Adds
candidate_time_controlto the Strength workflow. When it is set, the candidate plays that clock and the baseline playstime_control. When it is empty, the match is the symmetric one it was before.This is for time odds matches, where the same build plays itself with one side given more time. The elo per doubling figure was last read that way at v0.4.3, using a per-side clock that never reached master.
The manifest records both clocks, and the summary line reads "X against Y", so a time odds run is not mistaken for an ordinary one.
This is a draft because play-shard is pinned to an unreleased mache commit (aywrite/mache#35). Once that change is released, the pin moves to the release and this can merge.
Checks: actionlint and pre-commit are clean on both workflow files.
🤖 Generated with Claude Code
https://claude.ai/code/session_013vnTSb5N6JEKfqkQHAgevq
Generated by Claude Code